期望deep属性具有多个值中的任何一个

Expect deep property to have any of multiple values

本文关键字:任何一 deep 属性 期望      更新时间:2023-09-26

在Chai断言库中,我们可以断言一个深度属性存在并且有一个值:

expect(obj).to.have.deep.property("field1.field2", 1);
但是,如果需要断言该属性具有多个值中的一个,该怎么办?在这种情况下,如果objfield1.field2属性值为0或1或2,则测试应该通过。

供参考,我需要这个来检查ESLint插件是否带有推荐的规则配置,该配置为每个规则配置了"警告级别"。警告级别可以为0、1或2个值。

您可以使用.oneOf():

expect(obj).to.have.deep.property('field1.field2').that.is.oneOf([ 0, 1, 2 ])

.within():

expect(obj).to.have.deep.property('field1.field2').that.is.within(0, 2)
相关文章: