Сбросить один модуль с помощью Jest
jest.resetModules()
очищает jest.resetModules()
кеш для всех модулей, но есть ли способ очистить его только для одного модуля? Невозможно использовать require.cache
поскольку Jest, похоже, обходит его.
Я тестирую модуль узла, который является работоспособным (т.е. Он полагается на то, что несколько вызовов require
возврата одного и того же экземпляра). Для моего теста мне нужно сбросить состояние модуля для тестирования различных сценариев. jest.resetModules()
работает, но тогда мне нужно, чтобы re- require
некоторые другие издевавшиеся модули, которые не нужно было перезагружать.
Ответы
Ответ 1
Следуя этой теме, https://github.com/facebook/jest/issues/6174 кажется, что она по-прежнему остается открытой проблемой/улучшением.
Также есть открытый PR для инициализации модуля с областью. Отметьте здесь: https://github.com/facebook/jest/pull/6701
Однако все, что достаточно зрело и готово к использованию на данный момент...