我正在使用Mocha,Chai和Sinon测试一些Node方法。测试总是通过Sinon和Chai
此测试通过,当我将'calledOnce'更改为'calledTwice'时,它按预期失败。
it('should call checkIfRoomExists once', function (done) {
var check = sandbox.spy(RoomInfoModel, 'checkIfRoomExists');
ViewBusiness.getViewToRender("thisisanoneknownroom", function (viewName) {
expect(check.calledOnce).to.equal(true);
done();
})
});
然而,当我尝试,并按照教程“期望”设置这样的:
it('should call checkIfRoomExists once', function (done) {
var check = sandbox.spy(RoomInfoModel, 'checkIfRoomExists');
ViewBusiness.getViewToRender("thisisanoneknownroom", function (viewName) {
expect(check).to.have.been.calledTwice;
done();
})
});
请注意,我为“calledTwice”在第二次试验测试。它仍然通过。如果我将它更改为'notCalled',它仍然会通过。基本上它总是通过。
我错过了什么?
我应该补充说,这与测试更改状态无关。我一直在替换另一个并撕下沙箱。 –