tests/ticket.test.ts
此代码来自构建时的仓库快照。修改源码后重新构建即可更新。
import { describe, expect, it } from 'vitest';
import { createTicketSchema, listTicketsSchema } from '@/shared/ticket';
describe('输入边界', () => {
it('拒绝空白标题、空描述和非法优先级', () => {
for (const input of [
{ title: ' ', description: '问题', priority: 'NORMAL' },
{ title: '标题', description: '', priority: 'NORMAL' },
{ title: '标题', description: '问题', priority: 'INVALID' },
])
expect(createTicketSchema.safeParse(input).success).toBe(false);
});
it('限制分页大小,防止一次读取过量数据', () => {
expect(listTicketsSchema.safeParse({ page: 0 }).success).toBe(false);
expect(listTicketsSchema.safeParse({ pageSize: 1000 }).success).toBe(false);
});
});