我正在为应用程序使用superagent ajax库,我正在尝试为它编写一些单元测试.我有一个看起来像这样的课:
someClass = {
getData: function(){
_this = this;
superagent.get('/some_url').end(function(res){
if(res.body){
_this.data = res.body
}
});
});
}
如何编写Jasmine测试来监视_this.data = res.body调用?在getData上使用and.callThrough()设置间谍是行不通的.我不想实际调用有问题的URL;我只是想测试一下,如果它获取数据,它会对它做些什么.
谢谢
spyOn(superagent,'get').and.callFake(function(url) {
return {
end: function(cb) {
//null for no error,and object to mirror how a response would look.
cb(null,{body: data});
}
}
});