Я использую метод, добавленный в контекст, который запускается в методе жизненного цикла componentDidMount()
.
Я должен иметь возможность заглушить контекст, предоставив опцию для метода Enzyme shallow()
, но это не передается моему компоненту.Например:
Мой тест:
it('renders without crashing', () => {
const context = { dispatch: jest.fn() };
shallow(<MyComponent />, { context });
});
и мой компонент:
import React, { Component } from 'react';
import { Consumer, Context } from '../../context';
class MyComponent extends Component {
static contextType = Context;
componentDidMount() {
const { dispatch } = this.context; // dispatch is `undefined`
dispatch({ type: 'BLAH', payload: 'blah' });
}
etc...
}
this.context
- это объект, но он не имеет свойств - dispatch
всегда неопределен.