Ответ 1
В шутку вы можете просто перезаписать их с помощью global
.
global.confirm = () => true
Как и в шутке, каждый тестовый файл запускается в своем собственном процессе, вам не нужно устанавливать reset.
В моем коде я вызываю обратный вызов при нажатии "ОК" приглашения window.confirm
, и я хочу проверить, вызван ли обратный вызов.
В sinon
я могу заглушить функцию window.confirm
с помощью:
const confirmStub = sinon.stub(window, 'confirm');
confirmStub.returns(true);
Есть ли способ, которым я могу достичь этой ступени в Jest?
В шутку вы можете просто перезаписать их с помощью global
.
global.confirm = () => true
Как и в шутке, каждый тестовый файл запускается в своем собственном процессе, вам не нужно устанавливать reset.
Я просто использовал Jest mock, и он работает для меня:
it("should call my function", () => {
// use mockImplementation if you want to return a value
window.confirm = jest.fn().mockImplementation(() => true)
fireEvent.click(getByText("Supprimer"))
expect(window.confirm).toHaveBeenCalled()
}