Chai具有include
方法。我想测试看看一个对象是否包含另一个对象。例如:
var origin = {
name: "John",
otherObj: {
title: "Example"
}
}
我想使用Chai来测试此对象是否包含以下内容(确实如此)
var match = {
otherObj: {
title: "Example"
}
}
这样做似乎无效:
origin.should.include(match)
最佳答案
因此,如果您要在对象(而不是数组或字符串)上调用包含,则它仅用于切换键声明的包含标志。从您的示例的外观来看,测试深度相等将更有意义,可能首先检查 key 。
origins.should.include.keys("otherObj");
origins.otherObj.should.deep.equal(match.otherObj);
实际上,现在我浏览其他示例,您可能对此最高兴:
origins.should.have.deep.property("otherObj", match.otherObj)
关于javascript - Chai.js : Object contains/includes,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15144952/