【发布时间】:2021-08-28 19:34:27
【问题描述】:
我正在使用 Typescript 和 Jest。在 Jest 中,如果我想检查我的函数是否被调用,我可以运行
expect(myMockFn).toHaveBeenCalledWith(arrayArgument);
我想检查我的函数是否使用包含具有某些值的对象的数组参数调用。例如,
expect(myMockFn).toHaveBeenCalledWith( [{x: 2, y: 3}] );
实际调用是使用看起来像这样的参数进行的
[{x: 2, y: 3, id: 'some-guid'}]
所以我的期望失败了,因为我在数组的第一个对象中没有 id 属性,但我想匹配并忽略 ID,因为它每次都会不同,即使其他参数是相同。如何使用 Jest 构建这样的期望调用?
【问题讨论】:
-
能否提供完整的测试用例?
-
你事先知道数组的元素个数吗?你还知道每个对象的属性吗?