Skip to content
This repository has been archived by the owner on Jun 12, 2018. It is now read-only.

Commit

Permalink
Tests for unroutable event routing metadata helpers.
Browse files Browse the repository at this point in the history
  • Loading branch information
hodgestar committed Jul 10, 2014
1 parent 5ad67a8 commit b6df425
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions go/vumitools/tests/test_routing.py
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,48 @@ def test_get_unroutable_reply(self):
rmeta.set_unroutable_reply()
self.assertEqual(rmeta.get_unroutable_reply(), True)

def test_unroutable_event_done_not_unroutable(self):
msg, rmeta = self.mk_msg_rmeta()
self.assertEqual(rmeta.unroutable_event_done(), False)

def test_unroutable_event_done_no_hops_at_all(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.assertEqual(rmeta.unroutable_event_done(), True)

def test_unroutable_event_done_no_hops(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.set_outbound_hops(msg, [["sc1", "se1"], ["dc1", "de1"]])
self.assertEqual(rmeta.unroutable_event_done(), False)

def test_unroutable_event_done_no_outbound_hops(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.set_hops(msg, [["sc1", "se1"], ["dc1", "de1"]])
self.assertEqual(rmeta.unroutable_event_done(), False)

def test_unroutable_event_done_hops_mismatched_src(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.set_hops(msg, [["sc1", "dc1"], ["sc2", "dc2"]])
self.set_outbound_hops(msg, [["dc2", "other"], ["dc1", "sc1"]])
self.assertEqual(rmeta.unroutable_event_done(), False)

def test_unroutable_event_done_hops_mismatched_dst(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.set_hops(msg, [["sc1", "dc1"], ["sc2", "dc2"]])
self.set_outbound_hops(msg, [["other", "sc2"], ["dc1", "sc1"]])
self.assertEqual(rmeta.unroutable_event_done(), False)

def test_unroutable_event_done_hops_match(self):
msg, rmeta = self.mk_msg_rmeta()
rmeta.set_unroutable_reply()
self.set_hops(msg, [["sc1", "dc1"], ["sc2", "dc2"]])
self.set_outbound_hops(msg, [["dc2", "sc2"], ["dc1", "sc1"]])
self.assertEqual(rmeta.unroutable_event_done(), True)


class RoutingTableDispatcherTestCase(VumiTestCase):
"""Base class for ``AccountRoutingTableDispatcher`` test cases"""
Expand Down

0 comments on commit b6df425

Please sign in to comment.