Я хотел бы зарегистрировать снимок компонента после запуска функции 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
делает то, что я думаю, делает.