Вы должны протестировать Network error
и получить ответ со статусом, отличным от 204
. Кроме того, если вы действительно хотите протестировать alert
, вам придется шпионить за ним.
Я лично использую axios-mock-adapter
для тестирования моих вызовов API, и с его использованием ваши оставшиеся тесты будут выглядят так:
import MockAdapter from 'axios-mock-adapter';
const mock = new MockAdapter(axios);
mock.onPost(url).networkError();
const alert = jest.spyOn(window, 'alert');
//mount your component and simulate your function
expect(alert).toHaveBeenCalledWith('Failed to connect to server: Network Error');
mock.restore();
alert.mockClear();
и
import MockAdapter from 'axios-mock-adapter';
mock.onPost(url).reply(200, 'status code other than 204');
const alert = jest.spyOn(window, 'alert');
//mount your component and simulate your function
expect(alert).toHaveBeenCalledWith('Error when connecting to server: status code 200');