如何模拟const
来源:
child = require('child_process').fork('/worker'); // using jasmine
有一些用于模拟生成任务的软件包
您可以使用mock-require
模拟任何模块,包括child_process
。请参阅:
- https://www.npmjs.com/package/mock-require
您需要为对象提供所需的属性。您没有指定所需的内容,因此很难更具体,但是例如,您可能需要提供模拟的Stdout流或类似的内容,并且可以在测试中准备。
我的
很好的答案var events = require('events');
var eventEmitter = new events.EventEmitter();
var messagehandle = function (message, callback) {
if (message.action == 'init')
callback('init complete');
}
eventEmitter.addListener('message', messagehandle);
eventEmitter.send = function (message) {
eventEmitter.emit('message', message, message.cb);
}
var mockprocess = {
fork: function (path) {
return eventEmitter;
}
};
mock('child_process', mockprocess);