Skip to content

Commit ba95512

Browse files
committed
fix(api): update RateLimiter mock for checkWithResult in mock test
1 parent 7dbf31e commit ba95512

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

app/api/student/resume/upload/route.mock-integrations.test.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,11 @@ vi.mock('@/utils/getClientIp', () => ({
1111
vi.mock('@/lib/rate-limit', () => {
1212
const RateLimiterMock = vi.fn();
1313
RateLimiterMock.prototype.check = vi.fn().mockResolvedValue(true);
14-
return { RateLimiter: RateLimiterMock };
14+
RateLimiterMock.prototype.checkWithResult = vi.fn().mockResolvedValue({ success: true, limit: 10, remaining: 9, reset: 0 });
15+
return {
16+
RateLimiter: RateLimiterMock,
17+
getRateLimitHeaders: vi.fn().mockReturnValue(new Headers())
18+
};
1519
});
1620

1721
vi.mock('@/lib/resume-parser', () => ({
@@ -77,7 +81,7 @@ describe('API Route: Student Resume Upload (Mock Integrations)', () => {
7781

7882
it('2. should assert local cache layers (RateLimiter) block requests before triggering async services', async () => {
7983
// Arrange: Mock the RateLimiter cache to block the user
80-
vi.mocked(RateLimiter.prototype.check).mockResolvedValueOnce(false);
84+
vi.mocked(RateLimiter.prototype.checkWithResult).mockResolvedValueOnce({ success: false, limit: 10, remaining: 0, reset: 0 });
8185

8286
const req = createMockRequest();
8387

@@ -134,7 +138,7 @@ describe('API Route: Student Resume Upload (Mock Integrations)', () => {
134138
// Assert: Immediately fails validation (400)
135139
expect(res.status).toBe(400);
136140
expect(json.error).toMatch(/No resume file provided/i);
137-
expect(RateLimiter.prototype.check).toHaveBeenCalled();
141+
expect(RateLimiter.prototype.checkWithResult).toHaveBeenCalled();
138142
expect(parseResume).not.toHaveBeenCalled();
139143
});
140144
});

0 commit comments

Comments
 (0)