spec/kamerling/net_dispatcher_spec.rb in kamerling-0.0.2 vs spec/kamerling/net_dispatcher_spec.rb in kamerling-0.0.3
- old
+ new
@@ -1,21 +1,27 @@
+require 'socket'
require_relative '../spec_helper'
+require_relative '../../lib/kamerling/addr'
+require_relative '../../lib/kamerling/message'
+require_relative '../../lib/kamerling/net_dispatcher'
-module Kamerling describe NetDispatcher do
- describe '#dispatch' do
- it 'dispatches messages to TCP clients' do
- server = TCPServer.open 0
- thread = Thread.new { server.accept.read }
- addr = Addr[server.addr[3], server.addr[1], :TCP]
- NetDispatcher.dispatch addr, 'foo'
- thread.value.must_equal 'foo'
- end
+module Kamerling
+ describe NetDispatcher do
+ describe '#dispatch' do
+ it 'dispatches messages to TCP clients' do
+ server = TCPServer.open(0)
+ thread = Thread.new { server.accept.read }
+ addr = Addr[server.addr[3], server.addr[1], :TCP]
+ NetDispatcher.dispatch addr, Message.parse('PING')
+ thread.value.must_equal 'PING'
+ end
- it 'dispatches messages to UDP clients' do
- server = UDPSocket.new.tap { |s| s.bind '127.0.0.1', 0 }
- thread = Thread.new { server.recvfrom(2**16).first }
- addr = Addr[server.addr[3], server.addr[1], :UDP]
- NetDispatcher.dispatch addr, 'foo'
- thread.value.must_equal 'foo'
+ it 'dispatches messages to UDP clients' do
+ server = UDPSocket.new.tap { |s| s.bind '127.0.0.1', 0 }
+ thread = Thread.new { server.recvfrom(2**16).first }
+ addr = Addr[server.addr[3], server.addr[1], :UDP]
+ NetDispatcher.dispatch addr, Message.parse('PING')
+ thread.value.must_equal 'PING'
+ end
end
end
-end end
+end