2024-02-07 10:58:29 +01:00
|
|
|
import { setupServer, SetupServer } from 'msw/node';
|
2024-02-07 11:33:55 +01:00
|
|
|
import { http, HttpResponse } from 'msw';
|
2022-04-08 13:13:45 +02:00
|
|
|
|
2024-02-07 10:58:29 +01:00
|
|
|
export const testServerSetup = (): SetupServer => {
|
2022-04-08 13:13:45 +02:00
|
|
|
const server = setupServer();
|
|
|
|
|
|
|
|
beforeAll(() => server.listen());
|
|
|
|
afterAll(() => server.close());
|
|
|
|
afterEach(() => server.resetHandlers());
|
|
|
|
|
|
|
|
return server;
|
|
|
|
};
|
|
|
|
|
|
|
|
export const testServerRoute = (
|
2024-02-07 10:58:29 +01:00
|
|
|
server: SetupServer,
|
2022-04-08 13:13:45 +02:00
|
|
|
path: string,
|
2023-10-16 20:56:06 +02:00
|
|
|
json: object | boolean | string | number,
|
2023-06-05 11:58:25 +02:00
|
|
|
method: 'get' | 'post' | 'put' | 'delete' = 'get',
|
2023-10-02 14:25:46 +02:00
|
|
|
status: number = 200,
|
2022-04-08 13:13:45 +02:00
|
|
|
) => {
|
2024-02-07 11:33:55 +01:00
|
|
|
server.use(http[method](path, () => HttpResponse.json(json, { status })));
|
2022-04-08 13:13:45 +02:00
|
|
|
};
|