1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
require 'ReflectorServer'
require 'runit/testcase'
require "thread"
class ReflectorServerTestCase < RUNIT::TestCase
def test_reflectMessages
messages = "E8=FIX.4.2\0019=12\00135=A\001108=30\00110=31\001\n"
messages += "R8=FIX.4.2\0019=12\00135=A\001108=10\00110=31\001\n"
messages += "E8=FIX.4.2\0019=12\00135=A\001108=25\00110=31\001\n"
messages += "R8=FIX.4.2\0019=12\00135=A\001108=15\00110=31\001\n"
server = ReflectorServer.new(messages)
Thread.start do
server.listen(RUNIT::TestCase.port)
end
server.wait
s = TCPSocket.open("localhost", RUNIT::TestCase.port)
parser = FixParser.new(s)
begin
s.write("8=FIX.4.2\0019=12\00135=A\001108=30\00110=31\001")
assert_equals("8=FIX.4.2\0019=12\00135=A\001108=10\00110=31\001", parser.readFixMessage)
s.write("8=FIX.4.2\0019=12\00135=A\001108=30\00125=31\001")
assert_equals("8=FIX.4.2\0019=12\00135=A\001108=15\00110=31\001", parser.readFixMessage)
rescue IOError
end
s.close
server.stop
end
end
|