Chai with should:如何不破坏使用名为&#34的属性的代码;应该"?

时间:2014-07-29 17:44:23

标签: javascript chai

我正在使用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的吗?

0 个答案:

没有答案