4 class TestEnum(unittest.TestCase):
6 Verifies the repl() and str() behaviour of an example Enum
7 Enums represent configuration values such as digitalio.Direction, digitalio.Pull etc.
11 """Create an example Enum, mocking __module__ and __qualname__"""
12 import adafruit_blinka
13 class Cls(adafruit_blinka.Enum):
17 # class refs would be implicitly populated correctly in a real module
18 Cls.__module__ = "ho.hum"
19 Cls.__qualname__ = "Example"
23 def test_iteritems(self):
24 """A subtype of Enum can list all attributes of its own type"""
25 items = list(self.Cls.iteritems())
26 self.assertEqual( items, [("one",self.Cls.one),("two",self.Cls.two),])
30 """A repr() call on an Enum gives its fully-qualified name"""
32 actual = repr(getattr(self.Cls, name))
33 expected = "{}.{}.{}".format(self.Cls.__module__, self.Cls.__qualname__, name)
34 self.assertEqual( actual, expected)
38 """A str() call on an Enum performs the same as repr()"""
39 self.assertEqual(str(self.Cls.one), repr(self.Cls.one))