import { countUnifiedFileStatuses, resolveUnifiedFileStatus, } from "./unified-file-status"; import { CaseStatus } from "src/Types&Enums/blame-request-management/caseStatus.enum"; import { ClaimCaseStatus } from "src/Types&Enums/claim-request-management/claim-case-status.enum"; describe("resolveUnifiedFileStatus", () => { it("prefers claim completed over blame in progress", () => { expect( resolveUnifiedFileStatus({ blameStatus: CaseStatus.WAITING_FOR_EXPERT, claimStatus: ClaimCaseStatus.COMPLETED, }), ).toBe("COMPLETED"); }); it("maps blame expert queue", () => { expect( resolveUnifiedFileStatus({ blameStatus: CaseStatus.WAITING_FOR_EXPERT, }), ).toBe("WAITING_FOR_BLAME_EXPERT"); }); it("maps claim damage expert queue", () => { expect( resolveUnifiedFileStatus({ blameStatus: CaseStatus.COMPLETED, claimStatus: ClaimCaseStatus.WAITING_FOR_DAMAGE_EXPERT, }), ).toBe("WAITING_FOR_DAMAGE_EXPERT"); }); it("counts merged entries", () => { const counts = countUnifiedFileStatuses([ { blameStatus: CaseStatus.OPEN }, { blameStatus: CaseStatus.COMPLETED, claimStatus: ClaimCaseStatus.CAPTURING_PART_DAMAGES, }, ]); expect(counts.all).toBe(2); expect(counts.IN_PROGRESS).toBe(2); }); });