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