Здесь вам нужно протестировать поведение вашего компонента, когда API по какой-то причине отклоняет запрос.
Предположим, что такой сценарий:
Допустим, причина отклонения заключается в том, что «Введен неверный пароль» .Затем вам нужно убедиться, что компонент Login
покажет сообщение об ошибке в DOM, где пользователь сможет увидеть его, и повторно введет свой пароль
. Чтобы проверить это, необходимо выполнить проверку внутри проверенногоAPI, что-то вроде:
jsonRequest: jest.fn((formDataSubmittedFromComponent) => new Promise((resolve, reject) => {
// Notice that the mocked function will recieve the same arguments that the real function recieves from the Login component
// so you can check on these arguments here
if (formDataSubmittedFromComponent.password !== mockData.password) {
reject('Entered password is not correct') // << this is an error that your component will get and should handle it
}
resolve();
})),
После этого вы должны проверить, как ваш компонент обрабатывал отклонение
Например, вы можете проверить, отображал ли он сообщение об ошибке в DOM:
const errorMessageNode = getByTestId('error-message');
expect(errorMessageNode).toBeTruthy()
Редактировать: перед тем, как запустить событие входа в систему, вы должны убедиться, что форма заполнена проверенными данными