在React组件中开玩笑的模拟异步调用

在React组件中开玩笑的模拟异步调用,第1张

在React组件中开玩笑的模拟异步调用

您的测试有两个问题。首先,你不能这样嘲笑

AdminApiClient
jest.mock
将用just替换模块
undefined
,因此
getItems.mockImplementation
将无效或抛出错误。同样也不需要使用原始的。通过道具将其作为参数传递时,您可以在测试中直接创建on模拟。其次,如果您使用诺言,则必须从测试中返回诺言或使用
async/await
(docs):

it('', async() = > {  const expectedItems = [{ id: 1 }, { id: 2 }];  const p = Promise.resolve(expectedItems)  AdminApiClient = {    getItems: () = > p  }  const wrapper = mount(    <Create adminApi={AdminApiClient} />  );  await p  expect(wrapper.state().items).toBe(expectedItems);})


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4983689.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存