def setup(self): """ For this case, wait until our servers are all connected before continuing with the test. """ # at this point the servers should be waiting # so startup the clients self.wait_for_client_connections(10) self.wait_for_server_connections(10) self.client = self._clients['client-9940']['node'] self.client.protocol.heartbeat = 5 # We only have a single server connection self.server = self._servers['server-9940']['factory'].servers[0] self.server.protocol.heartbeat = 5 # client -> server self.client.send_message(logon_message(self.client)) # server <- client message = self.server.wait_for_message(title='waiting for logon') assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGON)]) # server -> client self.server.send_message(logon_message(self.server)) self.server.start_heartbeat(True) # client <- server message = self.client.wait_for_message(title='waiting for logon ack') self.client.start_heartbeat(True) assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGON)])
def run(self): """ This test is a demonstration of logon and heartbeat/TestRequest processing. Usually the logon process should be done from setup(). """ client = self._clients['client-9940']['node'] client.protocol.heartbeat = 5 # We only have a single server connection server = self._servers['server-9940']['factory'].servers[0] server.protocol.heartbeat = 5 # client -> server client.send_message(logon_message(client)) # server <- client message = server.wait_for_message(title='waiting for logon') assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGON)]) # server -> client server.send_message(logon_message(server)) server.start_heartbeat(True) # client <- server message = client.wait_for_message(title='waiting for logon ack') client.start_heartbeat(True) assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGON)]) # Logout client.send_message(logout_message(client)) message = server.wait_for_message(title='waiting for logout') assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGOUT)]) server.send_message(logout_message(server)) server.start_heartbeat(False) message = client.wait_for_message('waiting for logout ack') client.start_heartbeat(False) assert_is_not_none(message) assert_tag(message, [(35, FIX.LOGOUT)])