def test_handle_unexcepted_event(self): names = [] class AEvent(Event): name = Field(str, 'earo') class BEvent(Event): name = Field(str, 'bbq') def foo(context, event): names.append(event.name) handler = Handler(AEvent, foo) with self.assertRaises(TypeError): handler.handle(None, BEvent())
def test_no_emittion(self): class AEvent(Event): pass class BEvent(Event): pass def foo(context, event): return NoEmittion(BEvent, 'test reason') handler = Handler(AEvent, foo, derivative_events=[BEvent]) handler_runtime = handler.handle(None, AEvent()) self.assertEqual(handler_runtime.why_no_emittion(BEvent), 'test reason')
def test_handle_excepted_event(self): names = [] class AEvent(Event): name = Field(str, 'earo') def foo(context, event): names.append(event.name) handler = Handler(AEvent, foo) handler_runtime = handler.handle(None, AEvent()) self.assertEqual(names, ['earo']) self.assertIsNotNone(handler_runtime.begin_time) self.assertIsNotNone(handler_runtime.end_time) self.assertIsNone(handler_runtime.exception) self.assertTrue(handler_runtime.succeeded) self.assertGreaterEqual(handler_runtime.time_cost, 0)
def test_handle_unexcepted_event(self): handler = Handler(AEvent, foo) event = BEvent() handler_runtime = HandlerRuntime(handler, event) with self.assertRaises(TypeError): handler.handle(event, handler_runtime)
def test_handle_excepted_event(self): handler = Handler(AEvent, foo) event = AEvent() handler_runtime = HandlerRuntime(handler, event) handler.handle(event, handler_runtime) self.assertEqual(["earo"], names)
def test_handle_unexcepted_event(self): handler = Handler(AEvent, foo) event = BEvent() handler_runtime = HandlerRuntime(handler, event) with self.assertRaises(TypeError): handler.handle(event, handler_runtime)
def test_handle_excepted_event(self): handler = Handler(AEvent, foo) event = AEvent() handler_runtime = HandlerRuntime(handler, event) handler.handle(event, handler_runtime) self.assertEqual(['earo'], names)