我正在尝试测试我编写的一些代码,以响应可以通过EventMachine::WebSocket
注册的onopen
、onmessage
和onclose
事件,我很想知道是否有任何实用程序可以帮助模拟单元测试的一些 EventMachine 功能。链接到示例 em-websocket 测试将不胜感激;我已经四处寻找示例测试,但无济于事。
您是否尝试过自己模拟Websocket::Connection
实例?我会从使用 send
方法设置一个对象开始吗?
例如:
class ConnectionMock
def send(msg)
end
end
然后创建一个实例来表示 em-websocket 文档中使用的典型ws
实例。onmessage
是唯一传递参数的事件,参数是一个字符串,因此没有必要为这些事件模拟太多其他内容。我会从这个基本对象开始,并根据需要模拟更多方法。
这是Socky的EM-Websocket模拟示例。