javascript - Chai .js : Object contains/includes

标签 javascript arrays object tdd chai

Chai有一个 include 方法。我想测试一个对象是否包含另一个对象。例如:

var origin = {
  name: "John",
  otherObj: {
    title: "Example"
  }
}

我想使用 Chai 来测试这个对象是否包含以下内容(它确实包含)

var match = {
  otherObj: {
    title: "Example"
  }
}

这样做似乎不起作用:

origin.should.include(match)

最佳答案

嘿,刚刚发布了 chai-subset。检查一下:https://www.npmjs.org/package/chai-subset 这应该适合你)

 var chai = require('chai');
 var chaiSubset = require('chai-subset');
 chai.use(chaiSubset);

 var obj = {
     a: 'b',
     c: 'd',
     e: {
         foo: 'bar',
         baz: {
             qux: 'quux'
         }
     }
 };

 expect(obj).to.containSubset({
     e: {
         foo: 'bar',
         baz: {
             qux: 'quux'
         }
     }
 });

关于javascript - Chai .js : Object contains/includes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15144952/

相关文章:

javascript - ReactJS this.state 为 null

javascript - charCodeAt() - 无法读取未定义的属性 'length'

javascript - 运算符 ">"无法正常工作

c - 使用 malloc 时指向空指针?

c - 想要加入数组,但他们不这样做

C++ 类输出

Javascript 仅适用于 UL 中的某些 LI

ruby - 通过 ruby​​ 中的键和值数组进行简单哈希合并(以 perl 为例)

javascript - 将javascript对象转换为css样式时出现问题

PHP深度克隆对象