def test_init(self): root = Controller.RootController('root') value_interface = TestValueInterface() Controller.BoolController('test', root, value_interface, None, True) self.assertTrue(value_interface.val) Controller.BoolController('test', root, value_interface, None, False) self.assertFalse(value_interface.val)
def test_add_controller(self): with self.assertRaises(Exception): root = Controller.RootController('root') controller = Controller.BoolController('test', root, TestValueInterface(), None, True) controller.add_controller('test', controller)
def create_bool_controller( self, type_: oer.Type, value_interface: ValueInterface, optional_interface: Optional[OptionalInterface]): if isinstance(type_, oer.Boolean): controller = Controller.BoolController(type_.name, self._parent, value_interface, optional_interface, type_.default) self.__register_events(controller, value_interface, optional_interface) else: raise Exception(f"Unknown type for ControllerFactory: {type_}")
def test_view_to_model(self): root = Controller.RootController('root') value_interface = TestValueInterface() optional_interface = TestOptionalInterface() controller = Controller.BoolController('test', root, value_interface, optional_interface, False) value_interface.val = 'True' optional_interface.val = True self.assertTrue(controller.view_to_model()) optional_interface.val = False self.assertIsNone(controller.view_to_model())
def test_model_to_view(self): root = Controller.RootController('root') value_interface = TestValueInterface() optional_interface = TestOptionalInterface() controller = Controller.BoolController('test', root, value_interface, None, True) controller.model_to_view({'test': 'false'}) self.assertEqual(value_interface.val, 'false') controller.model_to_view('True') self.assertEqual(value_interface.val, 'True') with self.assertRaises(AssertionError): controller.model_to_view({}) controller = Controller.BoolController('test', root, value_interface, optional_interface, True) controller.model_to_view({'test': 'false'}) self.assertEqual(value_interface.val, 'false') self.assertTrue(optional_interface.val) controller.model_to_view({}) self.assertFalse(optional_interface.val)