【发布时间】:2017-10-22 16:58:34
【问题描述】:
我正在尝试模拟 require('falcor'); 返回的构造函数我有两条路线,一条使用 var dataModel = new falcor({source: this}); 调用另一条路线
代码是这样的
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*/);替换它吗? - 有没有更好的方法让测试更容易从另一个路由内部调用一个路由?
感谢您的帮助。
【问题讨论】:
标签: falcor