我在我的应用程序中使用 node、mocha 和 chai。我想测试我返回的结果数据属性是否与我的模型对象之一相同的“对象类型”(非常类似于 chai 的实例)。我只是想确认这两个对象具有相同的属性名称集。我对属性的实际值特别不感兴趣。
假设我有下面的模型 Person 。我想检查我的 results.data 是否具有与预期模型相同的所有属性。所以在这种情况下,Person 有一个名字和姓氏。
因此,如果results.data.lastName
两者results.data.firstName
都存在,那么它应该返回 true。如果其中任何一个都不存在,它应该返回 false。如果 results.data 有任何额外的属性,比如 results.data.surname,那么它会返回 false,因为 Person 中不存在 surname。
该型号
function Person(data) {
var self = this;
self.firstName = "unknown";
self.lastName = "unknown";
if (typeof data != "undefined") {
self.firstName = data.firstName;
self.lastName = data.lastName;
}
}