我正在使用Chai。效果很好。但是,当我尝试使用具有名为should
的属性的对象时,我遇到了麻烦:
// object under test
function run() {
var x = {};
console.log('typeof should:', typeof(x.should)); // 'object'
if (x.should == null) {
console.log('initializing x.should');
x.should = [];
}
// TypeError: Object #<Assertion> has no method 'push';
x.should.push('foobar')
}
// test code
var chai = require('chai');
chai.should();
run();
当我使用Mocha运行此代码时,条件永远不会为真,因此属性should
永远不会被初始化。
由于问题出现在包含的库中(准确地说是elastic.js),修改被测对象不是一种选择。
我还有什么方法可以使用Chai的吗?