我在寫一個使用串口通信的節點模塊。 使用write()調用所有傳出消息,併爲所有傳入消息引發事件。如何測試Jasmine node.js中的事件?
我希望能夠測試傳入的消息。當調用寫入時,傳入的消息需要很短的時間(在良好條件下少於1/10秒)。
段:
it("can receive", function() {
btReader.on('dataReceived', function(data){
console.log(data);
expect(data).toBeDefined();
});
});
這樣只會使事件處理程序,但提出的任何事件之前完整的測試將完成。然後,當引發事件時,代碼將執行,但不會真正測試。
我必須使用waitsFor方法,然後在事件處理程序中將bool設置爲true嗎?
你看過茉莉花節點嗎?它有很好的異步支持:https://github.com/mhevery/jasmine-node – 2013-08-04 23:39:05