Spaces:
Sleeping
Sleeping
| import { | |
| assignmentCreateRequestSchema, | |
| assignmentMoveRequestSchema, | |
| assignmentParticipantsRequestSchema, | |
| } from './assignment.schema'; | |
| import { describe, it, expect } from 'vitest'; | |
| describe('assignmentCreateRequestSchema', () => { | |
| it('requires a place_id; notes optional/nullable', () => { | |
| expect( | |
| assignmentCreateRequestSchema.safeParse({ place_id: 2 }).success, | |
| ).toBe(true); | |
| expect( | |
| assignmentCreateRequestSchema.safeParse({ place_id: '2', notes: null }) | |
| .success, | |
| ).toBe(true); | |
| expect(assignmentCreateRequestSchema.safeParse({}).success).toBe(false); | |
| }); | |
| }); | |
| describe('assignmentMoveRequestSchema', () => { | |
| it('requires new_day_id; order_index optional', () => { | |
| expect( | |
| assignmentMoveRequestSchema.safeParse({ new_day_id: 4 }).success, | |
| ).toBe(true); | |
| expect( | |
| assignmentMoveRequestSchema.safeParse({ new_day_id: 4, order_index: 0 }) | |
| .success, | |
| ).toBe(true); | |
| expect(assignmentMoveRequestSchema.safeParse({}).success).toBe(false); | |
| }); | |
| }); | |
| describe('assignmentParticipantsRequestSchema', () => { | |
| it('requires a numeric user_ids array', () => { | |
| expect( | |
| assignmentParticipantsRequestSchema.safeParse({ user_ids: [1, 2] }) | |
| .success, | |
| ).toBe(true); | |
| expect( | |
| assignmentParticipantsRequestSchema.safeParse({ user_ids: 'no' }).success, | |
| ).toBe(false); | |
| }); | |
| }); | |