Mocha.js 使用SinonJS对同一个函数进行存根和监视?
在下面的示例中,我希望使用Mocha.js 使用SinonJS对同一个函数进行存根和监视?,mocha.js,sinon,Mocha.js,Sinon,在下面的示例中,我希望使用get函数来防止实际的HTTP请求发生。我想使用get方法检查调用它的参数 var request = require('request'), sinon = require('sinon'); describe('my-lib', function() { sinon.stub(request, 'get').yield(null, null, "{}"); var spy = sinon.spy(request, 'get'); it('should G
get
函数来防止实际的HTTP请求发生。我想使用get
方法检查调用它的参数
var request = require('request'), sinon = require('sinon');
describe('my-lib', function() {
sinon.stub(request, 'get').yield(null, null, "{}");
var spy = sinon.spy(request, 'get');
it('should GET some data', function(done) {
function_under_test(function(err, response) {
if(error) return done(error);
assert(request.get.called);
assert(request.get.calledWith('some', 'expected', 'args'));
});
});
});
不过,西农似乎不允许用同样的方法进行间谍活动和存根。上述示例给出了以下错误:
TypeError: Attempted to wrap get which is already wrapped
如何在防止默认行为的同时监视方法?存根支持监视的所有方法。不要制造间谍。好极了,谢谢你。从文档中:
除了可以用来改变存根行为的方法之外,它们还支持完整的测试间谍API。
感谢匿名投票!