【问题标题】:Expect deep property to have any of multiple values期望深层属性具有多个值中的任何一个
【发布时间】:2016-06-29 17:50:45
【问题描述】:

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

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

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


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

【问题讨论】:

    标签: javascript testing chai assertions


    【解决方案1】:

    你可以使用.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)
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    • 1970-01-01
    相关资源
    最近更新 更多