Просто переместите макетную строку после ввода.
import App from './app';
jest.mock(./config, () => {
return {
//mocked config
}
})
it('should do something', () => {
})
Проблема в том, что сначала вы импортируете App
, а затем макет config
, но как в модели Jest работает насмешка, она заменяетсмоделированный модуль с вашим макетом, так что если вы импортируете что-то перед тем, как имитировать, его зависимости закончатся импортом оригинальной версии, а не макета.
Вы можете спросить, почему это работает в моем примере, даже если макет не был объявлен перед импортом.По этой причине Jest во время компиляции поднимает все вызовы mock
поверх своего блока контекста.