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)
Example #3
0
 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)