File tree Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change
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
+ } ) ;
You can’t perform that action at this time.
0 commit comments