Jest снимок является нулевым после того, как реагировать экземпляр обновлен
Я хотел бы зарегистрировать снимок компонента после запуска функции onPress кнопки.
Это мой тестовый набор:
describe('Login component', () => {
// This runs fine. Snapshot OK
it('Renders correctly', () => {
const tree = renderer.create(<Login />).toJSON()
expect(tree).toMatchSnapshot()
})
// This does not run fine. Snapshot is 'null'
it('Contains error message when submit with empty fields', () => {
const login = renderer.create(<Login />)
const instance = login.getInstance()
// Submit the form (default values = empty)
instance.submit()
// Force update (rerender) the component
login.update()
expect(login.toJSON()).toMatchSnapshot()
})
})
Тестовый набор выше создает два снимка. Первый тест снимает структуру компонента в условиях по умолчанию и, кажется, регистрируется правильно.
Второй тест должен записывать структуру компонента после выполнения отправки, показывая сообщения об ошибках, предупреждающие пользователя о том, что форму нельзя отправить с пустыми полями.
К сожалению, это не работает, как ожидалось, как после login.update()
это бег, login.toJSON()
возвращается null
,
Я явно что-то делаю не так, но что? Документы, кажется, указывают на то, что update
делает то, что я думаю, что делает.