def test_has_handlers(self): def handler(x): return 2 * x self.assertEqual(has_handlers('foo'), False) register_handler('foo', handler) self.assertEqual(has_handlers('foo'), True) remove_function(handler) self.assertEqual(has_handlers('foo'), False)
def test_context(self): register_handler('bar', lambda x: 'bar') cont = Context() class Bar(ActionHandler): def __init__(self): ActionHandler.__init__(self, cont) @register_method('bar') def baar(self, state): return 42 bar = Bar() self.assertEqual(cont.emmit_action('bar'), [42]) self.assertEqual(emmit_action('bar'), ['bar'])
def test_removeactions(self): class Foo(ActionHandler): def __init__(self): ActionHandler.__init__(self) self.test = "foobar" @register_method('foo') def foo(self, state): return self.test foo = Foo() register_handler('foo', lambda x: 'foo') self.assertEqual(emmit_action('foo'), ['foobar', 'foo']) foo.remove_actions() self.assertEqual(emmit_action('foo'), [])
def test_same_handler(self): def handler(x): return x register_handler('foo', handler) self.assertRaises(ValueError, register_handler, 'foo', handler)