def check_enum_mappings_value_change(self, style, mode): class IntEnumModel(HasTraits): value = Int() enum_editor_factory = EnumEditor( values=[0, 1], format_func=lambda v: str(bool(v)).upper(), mode=mode, ) formatted_view = View( UItem( "value", editor=enum_editor_factory, style=style, ) ) with reraise_exceptions(), self.setup_ui( IntEnumModel(), formatted_view ) as editor: self.assertEqual(editor.names, ["FALSE", "TRUE"]) self.assertEqual(editor.mapping, {"FALSE": 0, "TRUE": 1}) self.assertEqual(editor.inverse_mapping, {0: "FALSE", 1: "TRUE"}) enum_editor_factory.values = [1, 0] self.assertEqual(editor.names, ["TRUE", "FALSE"]) self.assertEqual(editor.mapping, {"TRUE": 1, "FALSE": 0}) self.assertEqual(editor.inverse_mapping, {1: "TRUE", 0: "FALSE"})
def test_simple_editor_rebuild_editor_evaluate(self): # Smoke test for `wx.enum_editor.SimpleEditor.rebuild_editor` enum_editor_factory = EnumEditor( evaluate=True, values=["one", "two", "three", "four"], ) view = View(UItem("value", editor=enum_editor_factory, style="simple")) tester = UITester() with tester.create_ui(EnumModel(), dict(view=view)): enum_editor_factory.values = ["one", "two", "three"]
def test_simple_editor_rebuild_editor_evaluate(self): # Smoke test for `wx.enum_editor.SimpleEditor.rebuild_editor` enum_editor_factory = EnumEditor( evaluate=True, values=["one", "two", "three", "four"], ) view = View(UItem("value", editor=enum_editor_factory, style="simple")) with store_exceptions_on_all_threads(): gui, combobox = self.setup_gui(EnumModel(), view) enum_editor_factory.values = ["one", "two", "three"]