我正在编写一个使用串行端口通信的节点模块。使用 write() 调用所有传出消息,并且所有传入消息都会引发事件。
我希望能够测试传入的消息。当调用 write 时,传入消息需要很短的时间(在良好条件下不到 1/10 秒)。
片段:
it("can receive", function() {
btReader.on('dataReceived', function(data){
console.log(data);
expect(data).toBeDefined();
});
});
这样它只会制作事件处理程序,但会在引发任何事件之前完成完整的测试。然后,当引发事件时,代码将执行,但不会真正进行测试。
我是否必须使用 waitsFor 方法,然后在事件处理程序中将 bool 设置为 true?