def test_propogate_message(self): """Test the Hub test_propogate_message and its rejection of ceartain type of messages. """ # Messages that will be sent to all endpoints i.e dispatch messages and repies: result = hub.MessagingHub.propogate_message( frames.dispatch_message('endpoint_uid', 'sig', {})) self.assertEquals(result, True) result = hub.MessagingHub.propogate_message( frames.dispatch_reply_message('reply_to_uid', {})) self.assertEquals(result, True) # Messages that won't be propagated: result = hub.MessagingHub.propogate_message( frames.sync_message('hub-123')) self.assertEquals(result, False) result = hub.MessagingHub.propogate_message( frames.hub_present_message()) self.assertEquals(result, False) # Bad mesasge data received: result = hub.MessagingHub.propogate_message("") self.assertEquals(result, False) result = hub.MessagingHub.propogate_message([]) self.assertEquals(result, False)
def test_string_message_generation(self): """Test the messages generated by convertions provides by frames.py """ # Hub present, hub heart beat message: correct = ("HUB_PRESENT", json.dumps(dict(version=frames.PKG.version))) rc = frames.hub_present_message() self.assertEquals(rc, correct) # SYNC message: correct = ("SYNC", json.dumps({"from": "endpoint-12"})) rc = frames.sync_message("endpoint-12") self.assertEquals(rc, correct) correct = ("SYNC", json.dumps({"from": "hub-1"})) rc = frames.sync_message("hub-1") self.assertEquals(rc, correct) # Dispatch with/without reply uuid: sig = 'tea_time' endpoint_uid = '0987' reply_to_uid = '12345' data = dict(a=1) rc = frames.dispatch_message(endpoint_uid, sig, data, reply_to_uid) correct = ("DISPATCH", endpoint_uid, sig, json.dumps(dict(a=1)), reply_to_uid) self.assertEquals(rc, correct) rc = frames.dispatch_message(endpoint_uid, sig, data) correct = ("DISPATCH", endpoint_uid, sig, json.dumps(dict(a=1)), '0') self.assertEquals(rc, correct) # Dispatch reply: data = dict(answer=10) rc = frames.dispatch_reply_message(reply_to_uid, data) correct = ("DISPATCH_REPLY", reply_to_uid, json.dumps(dict(answer=10))) self.assertEquals(rc, correct)