У меня есть объект, который я хотел бы тщательно сравнить с другим объектом в chaijs. Проблема в том, что один объект имеет большое количество перечислимых свойств, а другой объект является простым, понятным объектом ({}
).
Например, у меня есть expect(obj1).to.eql(obj2);
, где obj1
— это объект со многими дополнительными перечисляемыми свойствами, добавленными библиотекой, а obj2
просто создан через var obj2 = { someValue: true }
.
Эту проблему можно решить, злоупотребляя JSON.stringify
и JSON.parse
вот так
expect(JSON.parse(JSON.stringify(obj1))).to.eql(obj2);
но это довольно хромой хак. Я не могу себе представить, что я первый, кто столкнулся с этим затруднительным положением, но мои поиски оказались тщетными. Какой рекомендуемый подход здесь?