import { ClaimRequiredDocumentType } from "src/Types&Enums/claim-request-management/required-document-type.enum"; import { ClaimRequestManagementService } from "./claim-request-management.service"; describe("optional accident sketch", () => { const service = Object.create( ClaimRequestManagementService.prototype, ) as ClaimRequestManagementService; it("is excluded from legacy required-document completion", () => { const requiredTypes = (service as any).getRequiredDocumentTypes({ blameFile: { type: "THIRD_PARTY" }, }); expect(requiredTypes).not.toContain( ClaimRequiredDocumentType.ACCIDENT_SKETCH, ); }); it("does not gate V2 owner-document completion", () => { const mandatoryKeys = (service as any).requiredDocumentKeysV2(false); const requiredDocuments = Object.fromEntries( [...mandatoryKeys, ClaimRequiredDocumentType.CAR_GREEN_CARD].map( (key) => [key, { uploaded: true }], ), ); expect( (service as any).allV2OwnerDocumentsComplete( { requiredDocuments }, false, ), ).toBe(true); requiredDocuments[ClaimRequiredDocumentType.ACCIDENT_SKETCH] = { uploaded: false, }; expect( (service as any).allV2OwnerDocumentsComplete( { requiredDocuments }, false, ), ).toBe(true); }); });