如何窥探函数并在Jasmine中返回一个值

时间:2017-05-26 14:42:49

标签: javascript jasmine jasmine2.0

如何监视MyFunction并在Jasmine 2.0中返回2

我在shouldPass内的第一行有以下代码:

  

Error: function MyFunction(){ return 1; }() method does not exist

它似乎使用整个函数作为函数名称

MyFile.js:

MyFunctionToTest = function(){
    return MyFunction() + 1;
}

function MyFunction(){ return 1; }

MyFileSpec.js:

describe("myTest", function(){
    it("shouldPass", function(){
        spyOn("MyFile", MyFunction).and.returnValue(2);

        expect(MyFunctionToTest()).toEqual(3)
    })
})

1 个答案:

答案 0 :(得分:1)

你正在试图监视一个匿名/全局函数。你可以用间谍重新定义它。

  if (document.readyState != "loading")
    {fn();
    ^ This one is open and not closed
}