1 | import fm, { enableFetchMocks, disableFetchMocks, MockResponseInit } from 'jest-fetch-mock';
|
2 |
|
3 | fetchMock.mockResponse(JSON.stringify({foo: "bar"}));
|
4 | fetchMock.mockResponse(JSON.stringify({foo: "bar"}), {
|
5 | status: 200,
|
6 | headers: [
|
7 | ["Content-Type", "application/json"]
|
8 | ]
|
9 | });
|
10 | fetchMock.mockResponse(JSON.stringify({foo: "bar"}), {});
|
11 | fetchMock.mockResponse(someAsyncHandler);
|
12 | fetchMock.mockResponse(someAsyncStringHandler);
|
13 |
|
14 | fetchMock.mockResponseOnce(JSON.stringify({foo: "bar"}));
|
15 | fetchMock.mockResponseOnce(JSON.stringify({foo: "bar"}), {
|
16 | status: 200,
|
17 | headers: [
|
18 | ["Content-Type", "application/json"]
|
19 | ]
|
20 | });
|
21 | fetchMock.mockResponseOnce(JSON.stringify({foo: "bar"}), {});
|
22 | fetchMock.mockResponseOnce(someAsyncHandler);
|
23 | fetchMock.mockResponseOnce(someAsyncStringHandler);
|
24 |
|
25 | fetchMock.once(JSON.stringify({foo: "bar"}));
|
26 | fetchMock.once(JSON.stringify({foo: "bar"}), {
|
27 | status: 200,
|
28 | headers: [
|
29 | ["Content-Type", "application/json"]
|
30 | ]
|
31 | });
|
32 | fetchMock.once(JSON.stringify({foo: "bar"}), {});
|
33 | fetchMock.once(someAsyncHandler);
|
34 |
|
35 | fetchMock.mockResponses(JSON.stringify({}), JSON.stringify({foo: "bar"}));
|
36 | fetchMock.mockResponses(someAsyncHandler, someAsyncHandler);
|
37 | fetchMock.mockResponses(JSON.stringify({}), someAsyncHandler);
|
38 | fetchMock.mockResponses(someAsyncHandler, JSON.stringify({}));
|
39 | fetchMock.mockResponses(someAsyncHandler);
|
40 | fetchMock.mockResponses([JSON.stringify({foo: "bar"}), {status: 200}]);
|
41 | fetchMock.mockResponses(
|
42 | someAsyncHandler,
|
43 | someAsyncStringHandler,
|
44 | [JSON.stringify({foo: "bar"}), {status: 200}]
|
45 | );
|
46 |
|
47 | fetchMock.mockReject(new Error("oops"));
|
48 | fetchMock.mockReject(someAsyncHandler);
|
49 |
|
50 | fetchMock.mockRejectOnce(new Error("oops"));
|
51 | fetchMock.mockRejectOnce(someAsyncHandler);
|
52 | fetchMock.resetMocks();
|
53 | fetchMock.enableMocks();
|
54 | fetchMock.disableMocks();
|
55 |
|
56 | fetchMock.isMocking("http://bar");
|
57 | fetchMock.isMocking(new Request("http://bang"));
|
58 |
|
59 | fetchMock.doMockIf('http://foo');
|
60 | fetchMock.doMockIf(/bar/);
|
61 | fetchMock.doMockIf((input: Request|string) => true);
|
62 | fetchMock.mockIf('http://foo');
|
63 | fetchMock.mockIf(/bar/);
|
64 | fetchMock.mockIf((input: Request|string) => true);
|
65 | fetchMock.dontMockIf('http://foo');
|
66 | fetchMock.dontMockIf(/bar/);
|
67 | fetchMock.dontMockIf((input: Request|string) => true);
|
68 | fetchMock.doMockOnceIf('http://foo');
|
69 | fetchMock.doMockOnceIf(/bar/);
|
70 | fetchMock.doMockOnceIf((input: Request|string) => true);
|
71 | fetchMock.mockOnceIf('http://foo');
|
72 | fetchMock.mockOnceIf(/bar/);
|
73 | fetchMock.mockOnceIf((input: Request|string) => true);
|
74 | fetchMock.dontMockOnceIf('http://foo');
|
75 | fetchMock.dontMockOnceIf(/bar/);
|
76 | fetchMock.dontMockOnceIf((input: Request|string) => true);
|
77 |
|
78 | fetchMock.doMock();
|
79 | fetchMock.dontMock();
|
80 | fetchMock.doMockOnce();
|
81 | fetchMock.dontMockOnce();
|
82 | fetchMock.mockOnce();
|
83 |
|
84 | async function someAsyncHandler(): Promise<MockResponseInit> {
|
85 | return {
|
86 | status: 200,
|
87 | body: await someAsyncStringHandler()
|
88 | };
|
89 | }
|
90 |
|
91 | async function someAsyncStringHandler(): Promise<string> {
|
92 | return JSON.stringify({foo: "bar"});
|
93 | }
|
94 |
|
95 | enableFetchMocks();
|
96 | disableFetchMocks();
|
97 | fm.enableMocks();
|
98 | fm.disableMocks();
|
99 | fm.doMock();
|
100 | fm.dontMock();
|
101 | fm.doMockOnce();
|
102 | fm.dontMockOnce();
|
103 | fm.mockOnce();
|