import { describe, expect, it } from "vitest"; import { collectDoImportIssues } from "@/services/cc/do-confirm-gate"; describe("collectDoImportIssues", () => { it("blocks empty or invalid container no", () => { expect(collectDoImportIssues({ containerNo: "", filenames: ["A-DO.pdf"] }).blockers[0]).toMatch( /柜号/, ); expect( collectDoImportIssues({ containerNo: "ABCD1234567", filenames: ["A-DO.pdf"], }).errors.containerNo, ).toMatch(/ISO 6346/); }); it("blocks when no DO attachment", () => { const issues = collectDoImportIssues({ containerNo: "TRHU8524770", filenames: [], }); expect(issues.errors.filenames).toBeTruthy(); expect(issues.blockers[0]).toMatch(/DO 附件/); }); it("allows valid container + DO file", () => { const issues = collectDoImportIssues({ containerNo: "TRHU8524770", filenames: ["TRHU8524770-DO.pdf"], }); expect(issues.blockers).toEqual([]); expect(issues.errors).toEqual({}); }); });