【发布时间】:2019-09-03 09:18:45
【问题描述】:
我来自 AngularJS 世界,但现在使用 React 和 Jest(带有 Jest Mock)。
我想这样做....
test('should update internal tracking variable', async () => {
api.post = jest.fn().mock;
expect(obj.postCallFinished).toBe(false)
obj.begin() //this calls api.post internally with await
expect(obj.postCallFinished).toBe(false)
api.post.flush()
expect(obj.postCallFinished).toBe(true)
})
我不想在这种情况下在 obj.begin 调用中使用 await。我需要更细粒度的控制并希望检查内部跟踪变量,以便我可以慢慢地逐步完成我的应用程序的所有回调(而不破坏函数的封装)。我需要进行基于状态的测试,重要的是我可以依次缓慢地逐步完成每个阻塞调用。
请有人帮我弄清楚我如何控制承诺并缓慢地强制解决模拟问题?
【问题讨论】:
标签: javascript mocking jestjs