diff --git a/traits/tests/test_enum.py b/traits/tests/test_enum.py index 36047f330..ea6a69d49 100644 --- a/traits/tests/test_enum.py +++ b/traits/tests/test_enum.py @@ -14,6 +14,7 @@ from traits.api import ( Any, BaseEnum, Enum, HasTraits, Int, List, Property, Set, TraitError, Tuple) +from traits.testing.optional_dependencies import requires_traitsui class FooEnum(enum.Enum): @@ -111,13 +112,6 @@ class EnumCollectionExample(HasTraits): slow_enum = BaseEnum("yes", "no", "maybe") -class EnumCollectionGUIExample(EnumCollectionExample): - # Override attributes that may fail GUI test - # until traitsui #781 is fixed. - int_set_enum = Enum("int", "set") - correct_int_set_enum = Enum("int", "set") - - class EnumTestCase(unittest.TestCase): def test_valid_enum(self): example_model = ExampleModel(root="model1") @@ -336,3 +330,17 @@ class HasEnumInList(HasTraits): model.digit_sequence = [-1, 0, 1, 1] with self.assertRaises(TraitError): model.digit_sequence = [-1, 0, 2, 1] + + +@requires_traitsui +class TestEnumCreateEditor(unittest.TestCase): + def test_create_editor(self): + import traitsui.editor_factory + + obj = EnumListExample() + trait = obj.trait("value") + editor_factory = trait.trait_type.create_editor() + self.assertIsInstance( + editor_factory, + traitsui.editor_factory.EditorFactory + )