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