Javascript 如何使用Sinon.js存根事件发射器
我正在尝试删除以下内容:Javascript 如何使用Sinon.js存根事件发射器,javascript,mocking,stub,sinon,Javascript,Mocking,Stub,Sinon,我正在尝试删除以下内容: on('complete', function(data){ }); 我只想在第一个参数为“complete”时调用回调 我正在测试的功能还包括: on('error', function(data){ }); 所以我不能只做让步,因为这将触发完整回调和错误回调 如果我不使用sinon,我会通过写以下内容来伪装它 var on = function(event, callback){ if (event === 'complete'){ callback
on('complete', function(data){ });
我只想在第一个参数为“complete”时调用回调
我正在测试的功能还包括:
on('error', function(data){ });
所以我不能只做让步,因为这将触发完整回调和错误回调
如果我不使用sinon,我会通过写以下内容来伪装它
var on = function(event, callback){
if (event === 'complete'){
callback('foobar');
};
};
也许你可以使用:
var spy=sinon.spy(窗口“打开”);
on('error',函数(数据){});
on('complete',函数(数据){});
对于(var i=0;i
您可以通过将收益率与和args结合使用来缩小出现收益率的情况,例如
on.withArgs('complete').yields(valueToPassToCompleteCallback);
on.withArgs('error').yields(valueToPassToErrorCallback);
你能给出一个更完整的函数例子吗?
on.withArgs('complete').yields(valueToPassToCompleteCallback);
on.withArgs('error').yields(valueToPassToErrorCallback);