#reactjs #enzyme
#reactjs #фермент
Вопрос:
У меня есть react
компонент, который переходит на разные страницы в зависимости от значения somecondition . Например:
if (somecondition) {
window.location.assign('some link')}
}
Как бы мне протестировать это somecondition с помощью enzyme
wrapper?
Комментарии:
1. Просто смоделируйте функцию assign и проверьте вызов макетной функции
Ответ №1:
Используя enzyme и jest, ваш тест может выглядеть следующим образом:
test('should redirect', () => {
// SETUP
window.location.assign = jest.fn()
// EXECUTE
const wrapper = shallow(<Component {...props} />)
wrapper.instance().callYourFunction()
// VERIFY
expect(window.location.assign).toHaveBeenCalled()
window.location.assign.mockClear()
})