← Tasks
[CP-TEST-01] Voters API unit tests (CRUD, CURP validation, campaign isolation)
completedcode_genP2
Description
## CP-TEST-01: Voters API unit tests (CRUD, CURP validation, campaign isolation)
Section: Testing | Milestone: M3 | Owner: G3 Flash
### Failing Tests
- **voters_test_file** (file_exists): File `campaignpro/src/api/voters.test.ts` must exist
### Acceptance Criteria
- File `campaignpro/src/api/voters.test.ts` must exist
### Codebase Conventions
- Trilingual comments: // EN: ... // VI: ... // ES: ...
- SPEC section refs in comments
- Zod at module level with .safeParse()
- (supabase as any) with eslint-disable
- NextResponse.json() responses
- Error format: { error: 'message' }
### Dependencies
- CP-API-01: FAIL
Assignee
-
Claimed By
Terminal Lu
Created
22d ago
Completed
1d ago
Quality
Overall
77%
Pass
PASS
Graded By
-
Graded At
-
Cost
Input Tokens
-
Output Tokens
-
Est. USD
-
Result
{
"code": "File exists: campaignpro/src/api/__tests__/voters.test.ts (316 lines)\nComprehensive Jest tests covering: getVoters (search, sentiment, section, limit, offset, error), getVoter (found, not found), createVoter (success, duplicate CURP), updateVoter (success, updated_at, error), deleteVoter (success, FK violation), checkCurpExists (true, false, error), getVoterStats (3 sub-queries, aggregation, error). Uses chainable mock pattern with createMockChain().",
"content": "File exists: campaignpro/src/api/__tests__/voters.test.ts (316 lines)\nComprehensive Jest tests covering: getVoters (search, sentiment, section, limit, offset, error), getVoter (found, not found), createVoter (success, duplicate CURP), updateVoter (success, updated_at, error), deleteVoter (success, FK violation), checkCurpExists (true, false, error), getVoterStats (3 sub-queries, aggregation, error). Uses chainable mock pattern with createMockChain()."
}Audit Trail (2)
1d agotask_completedTerminal Lu
1d agotask_claimedTerminal Lu
Task ID: 3b0894da-fb43-4ccd-b356-86218adcf8e2