Unit Testing Skill
Purpose
This skill provides unit testing conventions for isolated tests of pure functions, Zod validation schemas, and utility modules. Unit tests run without database or external service dependencies.
Activation
This skill activates when:
- •Creating or modifying files in
tests/unit/ - •Testing Zod validation schemas
- •Testing pure utility functions
- •Testing data transformers or formatters
File Patterns
- •
tests/unit/**/*.test.ts
Workflow
- •Detect unit test work (file path contains
tests/unit/) - •Load
references/Unit-Testing-Conventions.md - •Also load
testing-baseskill for shared conventions - •Apply unit test patterns with proper isolation
- •Validate no database or external service dependencies
Key Patterns (REQUIRED)
Test Structure
- •Use
describe/itblocks (no imports - globals enabled) - •Follow Arrange-Act-Assert pattern
- •Test pure functions in isolation
- •Mock ALL external dependencies with
vi.mock()
Validation Schema Testing
- •Test valid input scenarios
- •Test invalid input scenarios with specific error expectations
- •Test edge cases (empty strings, null, undefined, boundary values)
- •Use
safeParsefor validation testing
Isolation Requirements
- •NO database access in unit tests
- •NO MSW handlers needed (no API calls)
- •Mock external imports with
vi.mock() - •Tests should run without any external services
References
- •
references/Unit-Testing-Conventions.md- Complete unit testing conventions