我正在为应用程序使用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}); } } });