繁体   English   中英

测试chai-as-promise和mocha中嵌套属性的值

[英]Testing value of nested property in chai-as-promised and mocha

我正在尝试使用chai-as- promise库来测试一个返回promise的函数。 我的承诺中的结果是具有嵌套属性的对象。 是否可以测试深层嵌套属性的值。

例如

function myFunc() {
  return new Promise((resolve, reject) => {
    const data = {
      thing: {
        foo: 'bar',
        baz: 'lah'
      }
    }
    resolve(data)
  })
}

如何在不检查整个对象的情况下测试foo属性是否等于“bar”? 我尝试过这样的事情:

expect(myFunc()).to.eventually.have.property('thing.foo', 'bar')

但没有运气!

使用深度属性查找应该可行。 只需在property前添加deep关键字即可。

expect(myFunc()).to.eventually.have.deep.property('thing.foo', 'bar')

如果你喜欢冗长的方式,你也应该能够做到这样的事情:

expect(myFunc())
   .to.eventually.have.property('thing')
   .that.has.property('foo')
   .that.is.equal.to('bar');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM