Я пытаюсь смоделировать компонент в моих шутливых тестах.
Я создал простой макет файла:
/app/javascript/src/svgImportMock.js
var React = require('react')
module.exports = function(){
console.log('I\'m being called');
return <div />;
}
В моем файле конфигурации Jest у меня есть:
{
...
"moduleNameMapper": {
"(InputWithLabel)$": "<rootDir>/app/javascript/src/svgImportMock.js",
"^react-native$": "react-native-web"
},
...
}
И, наконец, мой шутливый тест использует InputWithLabel:
приложение / JavaScript / SRC / компоненты / вход / InputWithLabel / index.test.js
import React from 'react'
import { shallow } from 'enzyme'
import InputWithLabel from './index'
describe('<InputWithLabel />', () => {
it('renders given the required props', () => {
const component = shallow(<InputWithLabel {...requiredProps} />)
expect(component).toMatchSnapshot()
})
})
К сожалению, он загружает реальный компонент InputWithLabel вместо фиктивного. Console.log не отображается.
Правильно ли настраивается moduleNameMapper?