Я пытаюсь сделать простой тестовый снимок Jest для формы, но при запуске теста я получаю сообщение об ошибке:
Uncaught [TypeError: getFieldDecorator(...) is not a function]
Я подумал, что могу просто создать заглушку для getFieldDecorator
и пройтиэто в подпорках, но это не работает.
Это тест:
it('renders correctly initially', () => {
const testForm = {
getFieldDecorator: jest.fn()
};
const wrapper = mount(
<Router>
<LoginForm form={testForm} />
</Router>
);
expect(wrapper).toMatchSnapshot();
});
Это метод render () в моем компоненте:
render() {
const { form } = this.props;
const { getFieldDecorator } = form;
return (
<Form onSubmit={this.handleSubmit} className="login-form">
<FormItem>
{getFieldDecorator('username', {
rules: [{ required: true, message: 'Please enter your username!' }]
})(
<Input
prefix={<Icon type="user" style={{ color: 'rgba(0,0,0,.25)' }} />}
placeholder="Username"
/>
)}
</FormItem>
Я экспортирую свой компонент как:
export default withRouter(Form.create()(LoginForm));