Как в Jest + Supertest проверить, что middleware функция ExpressJS запускается и выполняется?
Я хочу проверить, что моя middleware функция запускается и выполняется (ну или как минимум запускается). При этом, мне нужно чтобы факт проверки отразился в coverage. Но похоже, что все функции jest-объекта сделаны для mock-ов, и в итоге ничего не отображается. Даже .spyOn() нуждается в объекте, а не в функции...
Импортирую
const request = require('supertest');
const express = require('express');
const initMiddleware = require('../../../src/middleware/init.middleware');
Создаю новый сервер и подключаю middleware
const server = express();
server.use(initMiddleware);
Тестирую
describe('customName', () => {
test('customName', async () => {
await request(server).get('/').send();
expect(initMiddleware).toHaveBeenCalled();
// знаю, что эта функция для mock-ов : у меня вылетает ошибка
});
});
Буду рад любому совету!