javascript - 期望深度属性具有多个值中的任何一个

标签 javascript testing chai assertions

Chai assertion library ,我们可以断言一个深层属性存在并具有一个值:

expect(obj).to.have.deep.property("field1.field2", 1);

但是,如果我们需要断言此属性具有多个值之一怎么办?在这种情况下,如果 obj 具有具有 0 或 1 或 2 值的 field1.field2 属性,则测试应该通过。


仅供引用,我需要这个来检查 ESLint 插件是否带有推荐的规则配置,该配置为每个规则配置了“警告级别”。 Warning level可以是 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)

关于javascript - 期望深度属性具有多个值中的任何一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38106796/

相关文章:

需要 Java JUnit 测试指南

JavaScript,随机数的 Mocha 测试

将毫秒添加到时钟时的 JavaScript 错误消息

javascript - 右键单击并拖动更改 div 大小

javascript - 如何使复选框选中 onclick 从下拉列表中选择一个选项 : JS

ruby-on-rails - 工厂女工与制造的比较

javascript - 每页上的序列号相同

javascript - Jest - 如何使用模拟类实例

node.js - 如何对连接到 mongo 的方法进行单元测试,而不实际连接到 mongo?

jquery - cy.get 返回无效的 jquery 元素