我正在尝试deepEqual
尝试将结果数据的确切结构与样本数据进行比较时,在测试用例中遇到问题。
以上是我用实际数据的结果创建的样本json数据。
代码:
it('comparing structures',()=>{
var result = instance.parseResponse(input,esResponse);
console.log(result);
assert.deepEqual( result, expectedJSON);
});
在控制台中,我得到了结果。
获取结果我正在创建样本数据。
代码:
var expectedJSON={
"response":{
"aggregate":{
"average":43.833333333333336,
"count":6,
"max":90,
"min":10,
"total":263
},
"endDate":"Tue Jul 05 2016 05:30:00 GMT+0530 (India Standard Time)",
"groupBy":"datetime",
"metricType":"distance_metric",
"quarters":[{
"aggregate":{
"average":0,
"count":undefined,
"max":0,
"min":0,
"total":0
},
"quarter":4,
"startDate":"Invalid Date"
}],
"startDate":"Tue Jan 12 2016 05:30:00 GMT+0530 (India Standard Time)",
"type":"person"
}
};
我这样做是因为我需要创建精确的Json结构,并且任何东西都可能是结构应该匹配的结果。
但是我得到了失败测试用例
答案 0 :(得分:0)
使用deepEqual时,它不仅会检查对象的结构,还会检查对象的类型。在这种情况下,它由__proto__
答案 1 :(得分:0)
deepEqual有很多问题,现在已经老了。许多新的ECMA功能也不受支持。我发现这个非常有趣:https://github.com/zubuzon/kewlr