Skip to content

Commit 6313fcd

Browse files
committed
fix: cbug
1 parent 373722f commit 6313fcd

4 files changed

Lines changed: 33 additions & 10 deletions

File tree

backend/tests/integration/routes/auth.routes.test.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@ const mockAuthService = vi.hoisted(() => ({
99
}));
1010

1111
vi.mock("../../../src/modules/auth/auth.service", () => ({
12-
AuthService: vi.fn(() => mockAuthService),
12+
AuthService: class {
13+
constructor() {
14+
return mockAuthService;
15+
}
16+
},
1317
}));
1418

1519
// ── CredentialsService mock ───────────────────────────────────────────────────
@@ -20,7 +24,11 @@ const mockCredentialsService = vi.hoisted(() => ({
2024
}));
2125

2226
vi.mock("../../../src/modules/auth/credentials.service", () => ({
23-
CredentialsService: vi.fn(() => mockCredentialsService),
27+
CredentialsService: class {
28+
constructor() {
29+
return mockCredentialsService;
30+
}
31+
},
2432
}));
2533

2634
// ── iron-session ──────────────────────────────────────────────────────────────

backend/tests/integration/routes/savedJobs.routes.test.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@ const mockSavedJobsService = vi.hoisted(() => ({
1212
}));
1313

1414
vi.mock("../../../src/modules/savedJobs/savedJobs.service", () => ({
15-
SavedJobsService: vi.fn(() => mockSavedJobsService),
15+
SavedJobsService: class {
16+
constructor() {
17+
return mockSavedJobsService;
18+
}
19+
},
1620
}));
1721

1822
// ── iron-session ──────────────────────────────────────────────────────────────

backend/tests/integration/routes/user.routes.test.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@ const mockUsersService = vi.hoisted(() => ({
1212
}));
1313

1414
vi.mock("../../../src/modules/users/users.service", () => ({
15-
UsersService: vi.fn(() => mockUsersService),
15+
UsersService: class {
16+
constructor() {
17+
return mockUsersService;
18+
}
19+
},
1620
}));
1721

1822
// ── iron-session ──────────────────────────────────────────────────────────────

frontend/src/hooks/useJobsData.ts

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,10 @@ export function useJobsData() {
3131
modifiedAt: data.modifiedAt,
3232
total: data.total,
3333
});
34-
setSelectedFile(data.file || fileName || "");
34+
35+
if (data.file && data.file !== fileName) {
36+
setSelectedFile(data.file);
37+
}
3538
} catch (err: unknown) {
3639
setJobs([]);
3740
setMeta(EMPTY_META);
@@ -55,13 +58,17 @@ export function useJobsData() {
5558
}, [loadFiles]);
5659

5760
useEffect(() => {
58-
if (selectedFile) {
61+
const syncState = setTimeout(() => {
62+
if (!selectedFile) {
63+
setJobs([]);
64+
setMeta(EMPTY_META);
65+
return;
66+
}
67+
5968
loadJobs(selectedFile);
60-
return;
61-
}
69+
}, 0);
6270

63-
setJobs([]);
64-
setMeta(EMPTY_META);
71+
return () => clearTimeout(syncState);
6572
}, [selectedFile, loadJobs]);
6673

6774
const triggerScraper = useCallback(async () => {

0 commit comments

Comments
 (0)