Я пишу Jest-тест, в котором я использую Express.
Express 4 - это модуль ES5, который отличается тем, что экспортирует обе основные функции Express как module.exports = ...
, но также экспортируеттакже именованные функции (например, json
и urlencoded
).Мне нужно иметь возможность смоделировать оба из них, так как я хотел бы высмеивать функции и urlencoded
и get
/ post
/ use
на app
.
Я пишу свой тест на TypeScript, если это имеет значение.Я бы предпочел обработать эту без a __mocks__
папку и вместо этого написать макет непосредственно в тесте, так как остальная часть набора тестов написана таким образом.
По сути, что яЯ хотел бы сделать то же самое, что и здесь: Jest: Mock ES6 Модуль с экспортом по умолчанию и именем и последним примером здесь: https://remarkablemark.org/blog/2018/06/28/jest-mock-default-named-export/ - но эти примеры для ES6, и какExpress - это ES5, который не работает.