我正在为通过串口连接的第三方设备开发Web界面。下面的示例代码......
var serialport = require("serialport");
var SerialPort = serialport.SerialPort;
var sp = new SerialPort("/dev/ttyACM0", {
parser: serialport.parsers.readline("\n")
});
sp.on("data", function (rawData) {
...
我的问题是如何模拟/单元测试sp“数据”事件......
答案 0 :(得分:2)
您可以发出'数据'事件随意,因为.emit()
实现了the EventEmitter
interface。只需使用.emit()
即可。
此代码将记录" woot"即使串行接口实际上没有接收到任何数据,也要进入控制台。它使用var serialport = require("serialport");
var SerialPort = serialport.SerialPort;
var sp = new SerialPort("/dev/ttys000", {
parser: serialport.parsers.readline("\n")
});
sp.on("data", function (rawData) {
console.log('woot');
});
sp.emit('data');
伪造它。
Users = [[user1,user2,user3],[user4,user5,user6],...