def tearDown(self): Router.clear_routes() Router.clear_states() for key in Router.HANDLERS.keys(): del sys.modules[key] Router.HANDLERS.clear() utils.settings = None
def test_Router_undeliverable_queue(): Router.clear_routes() Router.clear_states() Router.UNDELIVERABLE_QUEUE = Mock() msg = MailRequest('fakepeer', 'from@localhost', 'to@localhost', "Nothing") Router.deliver(msg) assert Router.UNDELIVERABLE_QUEUE.push.called
def test_Router_undeliverable_queue(self): Router.clear_routes() Router.clear_states() Router.UNDELIVERABLE_QUEUE = Mock() msg = MailRequest('fakepeer', 'from@localhost', 'to@localhost', "Nothing") Router.deliver(msg) self.assertEqual(Router.UNDELIVERABLE_QUEUE.push.call_count, 1)
def test_RoutingBase(): # check that Router is in a pristine state assert_equal(len(Router.ORDER), 0) assert_equal(len(Router.REGISTERED), 0) setup_router(['salmon_tests.handlers.simple_fsm_mod']) from .handlers import simple_fsm_mod assert_equal(len(Router.ORDER), 5) assert_equal(len(Router.REGISTERED), 5) message = MailRequest('fakepeer', 'zedshaw@localhost', 'users-subscribe@localhost', "") Router.deliver(message) assert Router.in_state(simple_fsm_mod.CONFIRM, message) confirm = MailRequest('fakepeer', '"Zed Shaw" <zedshaw@localhost>', 'users-confirm-1@localhost', "") Router.deliver(confirm) assert Router.in_state(simple_fsm_mod.POSTING, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.NEXT, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.END, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.START, message) Router.clear_states() Router.LOG_EXCEPTIONS = True explosion = MailRequest('fakepeer', '<hacker@localhost>', 'start-explode@localhost', "") Router.deliver(explosion) assert Router.in_error(simple_fsm_mod.END, explosion) Router.clear_states() Router.LOG_EXCEPTIONS = False explosion = MailRequest('fakepeer', 'hacker@localhost', 'start-explode@localhost', "") assert_raises(RuntimeError, Router.deliver, explosion) Router.reload() assert 'salmon_tests.handlers.simple_fsm_mod' in Router.HANDLERS assert_equal(len(Router.ORDER), 5) assert_equal(len(Router.REGISTERED), 5)
def test_bounce_to_decorator(): msg = mail.MailRequest(None, Data=open("tests/bounce.msg").read()) Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.START, msg) assert bounce_filtered_mod.HARD_RAN, "Hard bounce state didn't actually run: %r" % msg.route_to msg.bounce.primary_status = (4, u'Persistent Transient Failure') Router.clear_states() Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.START, msg) assert bounce_filtered_mod.SOFT_RAN, "Soft bounce didn't actually run." msg = mail.MailRequest(None, Data=open("tests/signed.msg").read()) Router.clear_states() Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.END, msg), "Regular messages aren't delivering."
def test_bounce_to_decorator(): msg = mail.MailRequest(None, None, None, open("tests/bounce.msg").read()) Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.START, msg) assert bounce_filtered_mod.HARD_RAN, "Hard bounce state didn't actually run: %r" % msg.route_to msg.bounce.primary_status = (4, u'Persistent Transient Failure') Router.clear_states() Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.START, msg) assert bounce_filtered_mod.SOFT_RAN, "Soft bounce didn't actually run." msg = mail.MailRequest(None, None, None, open("tests/signed.msg").read()) Router.clear_states() Router.deliver(msg) assert Router.in_state(bounce_filtered_mod.END, msg), "Regular messages aren't delivering."
def test_RoutingBase(): # check that Router is in a pristine state assert len(Router.ORDER) == 0 assert len(Router.REGISTERED) == 0 setup_router(['salmon_tests.handlers.simple_fsm_mod']) from handlers import simple_fsm_mod assert len(Router.ORDER) > 0 assert len(Router.REGISTERED) > 0 message = MailRequest('fakepeer', 'zedshaw@localhost', 'users-subscribe@localhost', "") Router.deliver(message) assert Router.in_state(simple_fsm_mod.CONFIRM, message) confirm = MailRequest('fakepeer', '"Zed Shaw" <zedshaw@localhost>', 'users-confirm-1@localhost', "") Router.deliver(confirm) assert Router.in_state(simple_fsm_mod.POSTING, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.NEXT, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.END, message) Router.deliver(message) assert Router.in_state(simple_fsm_mod.START, message) Router.clear_states() Router.LOG_EXCEPTIONS = True explosion = MailRequest('fakepeer', '<hacker@localhost>', 'start-explode@localhost', "") Router.deliver(explosion) assert Router.in_error(simple_fsm_mod.END, explosion) Router.clear_states() Router.LOG_EXCEPTIONS = False explosion = MailRequest('fakepeer', 'hacker@localhost', 'start-explode@localhost', "") assert_raises(RuntimeError, Router.deliver, explosion) Router.reload() assert 'salmon_tests.handlers.simple_fsm_mod' in Router.HANDLERS assert len(Router.ORDER) assert len(Router.REGISTERED)
def setup(): Router.clear_routes() Router.clear_states() Router.load(['salmon_tests.simple_fsm_mod'])
def setup_router(handlers): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear() Router.load(handlers) Router.reload()
def cleanup_router(): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear() utils.settings = None
def cleanup_router(): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear() utils.settings = None
def cleanup_router(): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear()
def setup_router(handlers): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear() Router.load(handlers)
def cleanup_router(): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear()
def tearDown(self): Router.clear_routes() Router.clear_states() Router.HANDLERS.clear() utils.settings = None
def setup(): Router.clear_routes() Router.clear_states() Router.load(['salmon_tests.simple_fsm_mod'])