jestjs - 在 .toMatchObject 中使用 Jest 匹配器
问题描述
这个问题是在 Jest .toMatchObject 中包含 toBeCloseTo的一般情况。
如何在匹配器中使用任何Jest 扩展匹配.toMatchObject(object)
器?
例如,测试一个对象是否有多个字段,包括一个foo
> 零的字段:
expect({ a: 'b', c: 'd', foo: 3 }).toMatchObject({
a: 'b',
c: 'd',
foo: expect.toBeGreaterThan(0), // expect.toBeGreaterThan is not a function
});
我知道我可以写expect(theObject.foo).toBeGreaterThan(0)
,但是是否可以不脱离通话中的测试.foo
逻辑.toMatchObject
?
解决方案
我知道,很晚。结合toBeOneOf
并toBePositive
为我工作:
expect({ a: 'b', c: 'd', foo: 3 }).toMatchObject({
a: 'b',
c: 'd',
foo: expect.toBeOneOf([0, expect.toBePositive()]),
});
推荐阅读
- python - CharField 类型的对象不是 JSON 可序列化的
- python - 考虑到容差范围,如何从不同的数据框行中找到相似的浮点值?
- python - 显示 Web 服务器的响应
- google-cloud-platform - 使用 googletrans 库时从 Google 翻译返回 429 错误
- javascript - 转换不适用于删除类的转换
- javascript - 如果满足要求,使用允许我在数据中加粗特定单元格的功能
- wordpress - 到 NextGen Gallery 的纯文本链接
- angular - 如何在 nativescript 中使用自定义主题?
- stanza - 如何计算 Stanza 列表中函数的 argmax?
- flutter - Flutter 复选框如何设置 OutlinedBorder