在我的代码中,我在点击 window.confirm
提示时触发了一个回调,我想测试回调是否被触发。
在 sinon
中,我可以通过以下方式存根 window.confirm
函数:
const confirmStub = sinon.stub(window, 'confirm');
confirmStub.returns(true);
有没有办法在 Jest 中实现这种存根?
原文由 Yangshun Tay 发布,翻译遵循 CC BY-SA 4.0 许可协议
在我的代码中,我在点击 window.confirm
提示时触发了一个回调,我想测试回调是否被触发。
在 sinon
中,我可以通过以下方式存根 window.confirm
函数:
const confirmStub = sinon.stub(window, 'confirm');
confirmStub.returns(true);
有没有办法在 Jest 中实现这种存根?
原文由 Yangshun Tay 发布,翻译遵循 CC BY-SA 4.0 许可协议
我刚刚使用了 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()
}
原文由 pom421 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答13k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
开个玩笑,您可以使用
global
覆盖它们。就像开玩笑一样,每个测试文件都在自己的进程中运行,您不必重置设置。