UNPKG

686 BPlain TextView Raw
1import fetchMock from 'fetch-mock';
2
3type AugmentedFetchMock = typeof fetchMock & {
4 isMocked(): boolean;
5};
6
7const mockSpies = [
8 jest.spyOn(fetchMock, 'mock'),
9 jest.spyOn(fetchMock, 'get'),
10 jest.spyOn(fetchMock, 'put'),
11 jest.spyOn(fetchMock, 'post'),
12 jest.spyOn(fetchMock, 'delete'),
13];
14
15const restoreSpy = jest.spyOn(fetchMock, 'restore') as any;
16
17function isMocked() {
18 const wasMocked = mockSpies.some(spy => spy.mock.calls.length > 0);
19
20 const wasRestored = restoreSpy.mock.calls.length > 0;
21
22 return wasMocked && !wasRestored;
23}
24
25const augmentedFetchMock = fetchMock as AugmentedFetchMock;
26augmentedFetchMock.isMocked = isMocked;
27
28export default augmentedFetchMock;