From 0d7b50d1a8b9c643b911ddc8f43b31188a57ff5e Mon Sep 17 00:00:00 2001 From: sonusharma6-dsa Date: Fri, 5 Jun 2026 00:04:59 +0530 Subject: [PATCH 1/2] test: resolve Vitest constructor TypeError in PDFParse mock --- .../module/ats/__tests__/ats.service.test.ts | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/server/src/module/ats/__tests__/ats.service.test.ts b/server/src/module/ats/__tests__/ats.service.test.ts index 5e9148ae..1dc24c96 100644 --- a/server/src/module/ats/__tests__/ats.service.test.ts +++ b/server/src/module/ats/__tests__/ats.service.test.ts @@ -106,11 +106,12 @@ function mockCacheMiss() { function mockValidPdf(text = VALID_RESUME_TEXT) { vi.mocked(PDFParse).mockImplementation( - () => - ({ + function () { + return { getText: vi.fn().mockResolvedValue({ text }), destroy: vi.fn().mockResolvedValue(undefined), - }) as any, + } as any; + } ); } @@ -183,11 +184,12 @@ describe("AtsService", () => { mockUserOwnsResume(); mockCacheMiss(); vi.mocked(PDFParse).mockImplementation( - () => - ({ + function () { + return { getText: vi.fn().mockResolvedValue({ text: "too short" }), destroy: vi.fn().mockResolvedValue(undefined), - }) as any, + } as any; + } ); await expect( @@ -466,11 +468,12 @@ describe("AtsService", () => { it("throws when PDF text extraction yields insufficient content", async () => { mockUserOwnsResume(); vi.mocked(PDFParse).mockImplementation( - () => - ({ + function () { + return { getText: vi.fn().mockResolvedValue({ text: "tiny" }), destroy: vi.fn().mockResolvedValue(undefined), - }) as any, + } as any; + } ); await expect( From 1a3effdf555e5b0f526ddd34d6845901976fedf7 Mon Sep 17 00:00:00 2001 From: sonusharma6-dsa Date: Thu, 4 Jun 2026 23:32:25 +0530 Subject: [PATCH 2/2] fix: resolve issue #1398 - Enable Checkout after Midnight for Shift Workers --- server/src/module/attendance/attendance.service.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/server/src/module/attendance/attendance.service.ts b/server/src/module/attendance/attendance.service.ts index a51c5986..513e5fe3 100644 --- a/server/src/module/attendance/attendance.service.ts +++ b/server/src/module/attendance/attendance.service.ts @@ -48,11 +48,9 @@ export class AttendanceService { } async checkOut(employeeId: number, notes?: string | undefined) { - const today = new Date(); - today.setHours(0, 0, 0, 0); - - const record = await prisma.attendanceRecord.findUnique({ - where: { employeeId_date: { employeeId, date: today } }, + const record = await prisma.attendanceRecord.findFirst({ + where: { employeeId, checkOut: null }, + orderBy: { date: "desc" }, }); if (!record) throw new Error("No check-in found for today");