笑话 - mockReturnValue : Promise<boolean>
Posted
技术标签:
【中文标题】笑话 - mockReturnValue : Promise<boolean>【英文标题】:jest - mockReturnValue : Promise<boolean> 【发布时间】:2020-04-09 18:31:19 【问题描述】:我是新手,我想模拟一个返回 Promise<boolean>.
的函数
我这样做了:
service.changeBookingAsync = jest.fn().mockReturnValue(boolean);
但我收到了这个错误:
错误 TS2693: 'boolean' 仅指一种类型,但被用作 这里的值。
【问题讨论】:
【参考方案1】:如果你想模拟一个 Promise,你必须使用这个:
jest.fn().mockImplementation(() => Promise.resolve(value));
【讨论】:
【参考方案2】:同意@Max 的回答
语法糖函数将是这样的:
jest.fn().mockResolvedValue(value);
【讨论】:
【参考方案3】:还有另一种方法可以模拟返回 Promise 的函数。
service.changeBookingAsync = jest.fn().mockReturnValue(Promise.resolve(true));
这相当于
jest.fn().mockResolvedValue(true);
而mockFn.mockResolvedValue(true)
是一个语法糖函数:
jest.fn().mockImplementation(() => Promise.resolve(true));
您可以从 Jest 的官方文档中了解更多关于 mockResolvedValue() 的信息。
【讨论】:
以上是关于笑话 - mockReturnValue : Promise<boolean>的主要内容,如果未能解决你的问题,请参考以下文章