Я в странном состоянии для файла (я использую Jest/React/Flux/Webpack) ... вот тестовый файл.Jest mocking не работает для определенного файла
jest.unmock('../dashboard');
import CommonUtils from "../utils/CommonUtils";
describe('Dashboard Page',() => {
it('creates',() => {
...
});
});
Когда я запускаю тест, выдается ошибка:
● Runtime Error
- TypeError: (0 , _shouldUpdate2.default) is not a function
...
at Object.<anonymous> (src\main\js\components\App.js:3:38)
at Object.<anonymous> (src\main\js\utils\CommonUtils.js:4:38)
at Object.<anonymous> (src\test\js\dashboard-test.js:3:46)
Здесь CommonUtils
явно не издевались. В моих других файлах автомакет работает нормально.
Если добавить в начале тестового файла:
jest.mock('../utils/CommonUtils');
же предыдущая ошибка ... Однако, если добавить это:
jest.mock('../utils/CommonUtils',() => {
return {someFunc: jest.fn()};
});
CommonUtils
теперь издевались, но я не могу сравните макет с someFunc
, так как он всегда воссоздан ... и я не могу создать переменную снаружи
var a = {someFunc: jest.fn()};
jest.mock('../utils/CommonUtils',() => {
return a;
});
Jest не позволяет!
Вы пытаетесь протестировать 'someFunc' для вызова с чем-то? вы можете показать свой код – grgmo
Наконец-то я отключил автомат, это было слишком сложно. Благодаря! –