Jest снимок является нулевым после того, как реагировать экземпляр обновлен - PullRequest
0 голосов
/ 18 мая 2018

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

...