Initial commit

This commit is contained in:
Zhongwei Li
2025-11-29 18:22:28 +08:00
commit ef94998b7e
30 changed files with 3942 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
---
name: reviewing-test-quality
description: Review React 19 test quality including coverage, patterns, and React 19 API testing. Use when reviewing tests or test coverage.
review: true
allowed-tools: Read, Grep
version: 1.0.0
---
# Review: Test Quality
For Vitest configuration validation (pool options, coverage setup, deprecated patterns), see `vitest-4/skills/reviewing-vitest-config/SKILL.md`.
## Checklist
### Test Coverage
- [ ] Components have tests for user interactions
- [ ] Forms test both success and error paths
- [ ] Server Actions tested in isolation
- [ ] Custom hooks tested with `renderHook`
- [ ] Edge cases covered (empty states, errors, loading)
### React 19 APIs
- [ ] Forms using `useActionState` have tests
- [ ] `useOptimistic` updates tested for immediate feedback
- [ ] `useFormStatus` tested within form component context
- [ ] Server Actions tested with mocked auth/database
- [ ] `use()` hook tested with Promises and Context
### Testing Patterns
- [ ] Using `@testing-library/react` and `@testing-library/user-event`
- [ ] Queries prefer accessibility (`getByRole`, `getByLabelText`)
- [ ] `waitFor` used for async assertions
- [ ] Mocking external dependencies (API, database)
- [ ] Tests are isolated and don't depend on each other
### Anti-Patterns
- [ ] ❌ Testing implementation details (internal state, methods)
- [ ] ❌ Querying by class names or data-testid when role available
- [ ] ❌ Not waiting for async updates (`waitFor`)
- [ ] ❌ Testing components without user interactions
- [ ] ❌ Missing error case tests
### Server Action Testing
- [ ] Server Actions tested as functions (not through UI)
- [ ] Input validation tested
- [ ] Authentication/authorization tested
- [ ] Database operations mocked
- [ ] Error handling tested
For typed test fixtures and mocks, use the TYPES-generics skill from the typescript plugin.
For comprehensive testing patterns, see: `research/react-19-comprehensive.md`.