【发布时间】:2015-12-29 17:53:18
【问题描述】:
sinon.spy 有 2 个参数,对象和函数名。
我有一个模块如下:
module.exports = function xyz() { }
如何为xyz 定义间谍?我没有要使用的对象名称。
想法?
【问题讨论】:
标签: javascript node.js sinon
sinon.spy 有 2 个参数,对象和函数名。
我有一个模块如下:
module.exports = function xyz() { }
如何为xyz 定义间谍?我没有要使用的对象名称。
想法?
【问题讨论】:
标签: javascript node.js sinon
如果您使用 ES6 模块导入功能,上述内容实际上不起作用,如果您是我发现您实际上可以像这样监视默认值。
// your file
export default function () {console.log('something here');}
// your test
import * as someFunction from './someFunction';
spyOn(someFunction, 'default')
如http://2ality.com/2014/09/es6-modules-final.html中所述
默认导出实际上只是一个具有特殊名称 default 的命名导出
因此 import * as someFunction 使您可以访问整个 module.exports 对象,从而使您可以监视默认值。
【讨论】: