Skip to content

Commit ae3d6e2

Browse files
committed
test: add fetch util tests
1 parent 4822611 commit ae3d6e2

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import fetchMock from 'jest-fetch-mock';
2+
import { createApiKeyMiddleware, createFetchFn } from '../src';
3+
4+
describe('fetch middleware', () => {
5+
test('createApiKeyMiddleware adds x-api-key to headers', async () => {
6+
const apiKey = 'MY_KEY';
7+
8+
const middleware = createApiKeyMiddleware({ apiKey });
9+
expect(middleware.pre).not.toBeNull();
10+
11+
const fetchFn = createFetchFn(middleware);
12+
13+
fetchMock.mockOnce('*', { status: 200 });
14+
15+
await fetchFn('https://example.com');
16+
expect(fetchMock.mock.calls[0][1]?.headers).toBe(undefined);
17+
18+
await fetchFn('https://api.stacks.co');
19+
expect(fetchMock.mock.calls[1][1]?.headers).toBeDefined();
20+
expect((fetchMock.mock.calls[1][1]?.headers as Headers)?.get('x-api-key')).toContain(apiKey);
21+
});
22+
});

0 commit comments

Comments
 (0)