鉴于我正在扩展现有模块并且它以下面显示的方式使用module.exports,我甚至可以从(mocha)测试中调用start
方法吗?
我怀疑没有合适的方法可以利用它 - 这没关系。如果可能的话,我宁愿测试这些,如果可能的话,我也很想知道怎么做。
const NodeHelper = require("node_helper");
module.exports = NodeHelper.create({
start: function() {
//do stuff
};
});
编辑:NodeHelper返回一个看似“扩展”的函数:
NodeHelper.create = function(moduleDefinition) {
return NodeHelper.extend(moduleDefinition);
};
仔细观察链接代码,它使用Resig's class.js
,因此您可能需要创建一个实例来调用原型方法,即
const YourNodeHelper = require('path/to/your/module')
const yourNodeHelper = new YourNodeHelper() // create instance here
yourNodeHelper.start()