0
我试图嘲弄由require('falcor');
回到我有两个途径,一个呼叫使用var dataModel = new falcor({source: this});
如何在Falcor数据模型构造间谍茉莉花1
代码另一条路线的构造看起来像这样
var falcor = require('falcor');
module.exports = {
route: 'items',
get: function (pathSet) {
var dataModel = new falcor({source: this});
var ids = '1';
dataModel.get('itemIds', ids).then(function (response) {
// Code I can't get to in Jasmine 1.x tests
});
}
}
我想要构造函数返回一个间谍,所以我可以调用Promise.resolve
并发回模拟数据用于测试目的。我不知道如何做到这一点,而不需要将呼叫转移到另一个模块,我可以单独模拟。我认为这里可能对我有些帮助的一些问题是:
- 我在哪里可以找到由falcor等模块定义的构造函数?我试图寻找'全球'的对象,但没有运气。如果我找到了这个构造函数,我可以用
spyOn(global, 'falcor').andReturn(/* object with a mocked get method*/);
替换它吗? - 有没有更好的方法使测试更容易从另一条路线内部调用路线?
感谢您的帮助。