adding quickfix
This commit is contained in:
46
quickfix/_test/FixParserTestCase.rb
Normal file
46
quickfix/_test/FixParserTestCase.rb
Normal file
@ -0,0 +1,46 @@
|
||||
require 'FixParser'
|
||||
require 'runit/testcase'
|
||||
require "thread"
|
||||
require 'SocketServer'
|
||||
|
||||
class FixParserTestCase < RUNIT::TestCase
|
||||
|
||||
def test_readFixMessage
|
||||
fixMsg1 = "8=FIX.4.2\0019=12\00135=A\001108=30\00110=31\001"
|
||||
fixMsg2 = "8=FIX.4.2\0019=17\00135=4\00136=88\001123=Y\00110=34\001"
|
||||
|
||||
server = SocketServer.new
|
||||
def server.message=(m)
|
||||
@message = m
|
||||
end
|
||||
|
||||
def server.connectAction(s)
|
||||
end
|
||||
|
||||
def server.receiveAction(s)
|
||||
s.write(@message)
|
||||
end
|
||||
|
||||
def server.disconnectAction(s)
|
||||
end
|
||||
|
||||
server.message = fixMsg1 + fixMsg2
|
||||
Thread.start do
|
||||
server.listen(RUNIT::TestCase.port)
|
||||
end
|
||||
server.wait
|
||||
|
||||
s = TCPSocket.open("localhost", RUNIT::TestCase.port)
|
||||
parser = FixParser.new(s)
|
||||
begin
|
||||
assert_equals(fixMsg1, parser.readFixMessage)
|
||||
assert_equals(fixMsg2, parser.readFixMessage)
|
||||
rescue IOError
|
||||
# I have no idea why this is being thrown
|
||||
end
|
||||
|
||||
s.close
|
||||
server.stop()
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user