При использовании синтаксиса импорта/экспорта ES6 кажется, что Jest автоматически имитирует компоненты, которые я импортирую по умолчанию, хотя я явно отключил насмешку для компонента.
jest.autoMockOff();
jest.dontMock("../bundles/Opportunities/MarkAsLost.jsx");
это импорт в верхней части тестового компонента:
import MarkAsLost from "../bundles/Opportunities/MarkAsLost.jsx";
это экспорт в нижней части тестируемого компонента:
export default MarkAsLost;
это результат регистрации импортированного компонента в тестовом файле:
{ [Function]
_isMockFunction: true,
_getMockImplementation: [Function],
mock: { calls: [ [Object] ], instances: [ [Object] ] },
mockClear: [Function],
mockReturnValueOnce: [Function],
mockReturnValue: [Function],
mockImpl: [Function],
mockImplementation: [Function],
mockReturnThis: [Function],
displayName: 'MarkAsLost' }
когда я использую синтаксис старого стиля, т.е.:
var MarkAsLost = require("../bundles/Opportunities/MarkAsLost.jsx");
module.exports = MarkAsLost;
это результат регистрации компонента, который теперь ведет себя так, как я хочу в тестовом файле
{ [Function] displayName: 'MarkAsLost' }
Любая помощь будет оценена