Я использую узел, мокко и чай для моего приложения. Я хочу проверить, что мое возвращенное свойство данных результатов является тем же "типом объекта", что и один из моих объектов модели (очень похоже на экземпляр chai). Я просто хочу подтвердить, что два объекта имеют одинаковые наборы имен свойств. Меня особо не интересуют фактические значения свойств.
Допустим, у меня есть модель Person, как показано ниже. Я хочу проверить, что мой файл results.data имеет те же свойства, что и ожидаемая модель. Таким образом, в этом случае, Person, который имеет firstName и lastName.
Таким образом, если results.data.lastName
и results.data.firstName
оба существуют, то он должен вернуть true. Если какой-либо из них не существует, он должен вернуть false. Бонус будет в том случае, если results.data имеет какие-либо дополнительные свойства, такие как results.data.surname, тогда он вернет false, потому что фамилия не существует в 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;
}
}