我有两个如下所示的数组:
var arrayOne = [['Hello', 0, 'How'], ['World', 1, 'Are'], ['!', 9, 'You?']];
var arrayTwo = [['Hello', 7, 'How'], ['World', 6, 'Are'], ['!', 2, 'You?']];
我在测试中使用Chai进行断言,我想使用BDD断言来比较两个数组的第一个和第三个元素。
我知道我可以手动做一些事情,比如:
var arrayOne = [['Hello', 0, 'How'], ['World', 1, 'Are'], ['!', 9, 'You?']];
var arrayTwo = [['Hello', 7, 'How'], ['World', 6, 'Are'], ['!', 2, 'You?']];
var importantBits = function(e) {
return [e[0], e[2]];
};
var condensedOne = arrayOne.map(importantBits);
var condensedTwo = arrayTwo.map(importantBits);
condensedOne.should.deep.equal(condensedTwo);
但是,如果可能的话,我宁愿使用更复杂的东西。
答案 0 :(得分:0)
我就是这样做的:
const INDEXES = [ 0, 2 ];
INDEXES.forEach(function(idx) {
condensedOne[idx].should.deep.equal(condensedTwo[idx]);
});
希望我使用should
权利,我通常使用expect
。