12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- // Mocking the global.fetch and global.Headers
- global.fetch = jest.fn();
- global.Headers = jest.fn();
- // Helper to mock a success JSON response.
- fetch.mockResponseSuccessJSON = (body) => {
- fetch.mockImplementationOnce(() =>
- Promise.resolve({
- json: () => Promise.resolve(JSON.parse(body)),
- ok: true,
- status: 200,
- statusText: 'OK',
- }),
- );
- };
- // Helper to mock a success text response.
- fetch.mockResponseSuccessText = (body) => {
- fetch.mockImplementationOnce(() =>
- Promise.resolve({
- text: () => Promise.resolve(body),
- ok: true,
- status: 200,
- statusText: 'OK',
- }),
- );
- };
- // Helper to mock a failure response.
- fetch.mockResponseFailure = () => {
- fetch.mockImplementationOnce(() =>
- Promise.resolve({
- status: 500,
- statusText: 'Internal Error',
- }),
- );
- };
- fetch.mockResponseCrash = () => {
- fetch.mockImplementationOnce(() =>
- // eslint-disable-next-line prefer-promise-reject-errors
- Promise.reject({
- status: 500,
- statusText: 'Internal Error',
- }),
- );
- };
- // Helper to mock a timeout response.
- fetch.mockResponseTimeout = () => {
- fetch.mockImplementationOnce(() => {
- const timeout = 1000;
- return new Promise((resolve) => {
- setTimeout(() => setTimeout(resolve, timeout), timeout);
- });
- });
- };
|