def test_register_callback(self): command_class = CTICommandClass(self.class_name, None, None) command = command_class.from_dict({'class': 'callback_test'}) self.assertEqual(command.callbacks_with_params(), []) function = Mock() command_class.register_callback_params(function) command = command_class.from_dict({'class': 'callback_test'}) self.assertEqual(len(command.callbacks_with_params()), 1)
def test_from_dict(self): command_class = CTICommandClass(self.class_name, None, None) command = command_class.from_dict(self.msg) self.assertEqual(command.commandid, self.commandid) self.assertEqual(command.command_class, self.class_name)
def test_deregister_callback_wrapped(self): command_class = CTICommandClass(self.class_name, None, None) command = command_class.from_dict({'class': 'callback_test'}) function_1 = lambda: None function_2 = lambda: None command_class.register_callback_params(function_1) command_class.register_callback_params(function_2) command_class.deregister_callback(command.callbacks_with_params()[0][0]) callbacks = command.callbacks_with_params() self.assertEqual(len(callbacks), 1) self.assertEqual(weak_method.WeakCallable(function_2), callbacks[0][0])
def test_callback_memory_usage(self): command_class = CTICommandClass(self.class_name, None, None) class Test(object): def __init__(self): command_class.register_callback_params(self.parse) def parse(self): pass command = command_class.from_dict({'class': 'callback_test'}) def run_test(): self.assertEqual(len(command.callbacks_with_params()), 0) test_object = Test() self.assertEqual(len(command.callbacks_with_params()), 1) test_object.parse() run_test() self.assertEqual(len(command.callbacks_with_params()), 0)