0

我有一个要测试的 JS 方法:

doMediation: function() {
    var state,
        that = this,
        mediation_rule = "asdf";

    Mediation.getRules(mediation_rule, function () {
        [blah blah]
    });

},

我的 Mediation 对象是在我的类中的此方法之上定义的。这是我的 qunit 测试:

test('doMediation: testing mediation', 1, function(){
    var proto = $.extend({}, My.prototype, {

    Mediation: {
        getRules: function(rule, cb){}
    }

    proto.doMediation();
});

问题是我收到一个错误:

Died on test #1: Cannot call method 'getRules' of undefined - {}

然而,它是在测试中定义的。谢谢。

4

1 回答 1

0

原来,以前,中介是这样定义的:var Mediation = AnotherClass.Mediation。在 qunit 测试中,我必须实际定义 AnotherClass.Mediation = {} 而不是 Mediation{}

于 2013-12-17T03:33:52.087 回答