预期的间谍但与Sinon存根有功能错误消息?

时间:2013-11-19 18:49:05

标签: debugging jasmine sinon spy stubs

我有以下测试套件:

describe('rendering Bundle View', function () {
    beforeEach(function () {
        this.view = new Backbone.View();
        this.renderStub = Sinon.stub(this.view, 'render', function () {
            this.el = document.createElement('div');
            return this;
        });
        this.view.render();
    });
    it('should have called render once', function () {
        console.info('RENDERRRR' + (typeof this.renderStub));
        expect(this.renderStub.calledOnce).toBe(true); // this passes
        expect(this.renderStub).toHaveBeenCalled(); // this fails
    });
});

为什么第一个期望语句通过但第二个失败?第二个给出错误信息:预期间谍但得到函数即使Sinon存根实现间谍API所以它应该返回一个间谍??

1 个答案:

答案 0 :(得分:0)

  

想通了。我认为这是因为我使用的是具有茉莉花功能的Sinon间谍,期望茉莉花间谍因此它不允许我使用Sinon期望陈述