如何使用sinon.stub()只执行某个调用
How to only stub on a certain call with sinon.stub()
我想存根doSomething
以回调并返回错误。但是,我只希望它在第一次响应时回调一个错误。我想在第一次调用后恢复存根
为了监听第一个呼叫,我可以这样做:
var stub = sinon.stub(someOjbect, "doSomething");
stub.onCall(0).callsArgWith(5, mockError);
如何在第一次调用后恢复存根?例如
stub.onCall(1).restore();
上面的显然不起作用,只是想举一个例子来说明我想要实现
我认为这只会截断第一个调用,但我不确定它是否适用于您的用例:
var stub = sinon.stub(someObject, 'doSomething', function(args) {
someObject.doSomething.restore();
return mockData;
});
相关文章:
- 通过ajax从客户端调用C#方法来执行C#方法
- ajax调用获胜't同步执行
- 控制台.log触发,但随后的 Jquery 调用不执行任何操作
- 我应该总是将模块调用到var中,还是在节点中立即执行
- Ajax调用完成后如何执行函数
- 如何生成一个执行AJAX调用的函数
- Javascript渲染.如何编写Javascript;t在函数调用结束之前继续执行代码
- 对php文件的Ajax调用返回该文件中的JS代码,而不是执行它
- AJAX 调用在获得响应并成功执行时会冻结浏览器一段时间
- 角度 2:使用一个 http 调用的结果来执行另一个调用
- 如何在调用去抖函数之后和执行之前取消该函数
- 在非 ajax 调用中的客户端执行 JavaScript
- ReactJS:在带有 ajax 调用的 .map() 语句完成后执行代码
- 如何在 JS 中调用 2 次或更多次时延迟函数执行
- 使用Node中的Q promise库对值数组顺序调用/执行相同的函数;并返回带有结果的新数组/集合
- Javascript Promise().然后防止在执行第一个调用之前重新调用该函数
- 在ajax.load调用后执行javascript时出现问题
- Javascript BlackJack 脚本不执行/调用 “hitMe()” 和 “stand()” 函数与 Mozi
- jquery:阻止某些子元素执行调用的事件
- Rails ajax 第一次执行调用