Я тестирование компонент, который визуализирует компонент ребенка, который имеет следующие contextTypes:Jest - тестирование компонент, который использует реакцию между маршрутизаторами
Component.contextTypes = {router: PropTypes.object.isRequired}
Я совершенно новый шутить, но исходя из мокко/фермента I Я никогда не сталкивался с этой проблемой.
Мой первый тест выглядит так, и я на самом деле просто возиться с ним, чтобы посмотреть, как это работает:
it('should exist',() => {
wrapper = renderer.create(<Companies/>);
let tree = wrapper.toJSON();
expect(tree).toMatchScreenshot();
});
Когда я запускаю тест я получаю следующее сообщение об ошибке:
Failed context type: The context `router` is marked as required in `ChildComponent`, but its value is `undefined`.
Есть ли работа для этого, или что-то в документах, которые мне не хватает? Заранее спасибо!
РЕШЕНИЕ: Для всех, кто работает в том же номере, я использовал следующие в beforeEach():
MyComponent.contextTypes = {
router: function() {
return {
transitionTo: jest.genMockFunction()
};
}
};
Какая версия реактивного маршрутизатора используется? – paqash
@paqash версия 2.4.1 – Jake