Enum: make `Flag` and `IntFlag` members iterable (GH-22221)
diff --git a/Lib/test/test_enum.py b/Lib/test/test_enum.py
index ebf7604..59789fb 100644
--- a/Lib/test/test_enum.py
+++ b/Lib/test/test_enum.py
@@ -2350,6 +2350,12 @@
self.assertFalse(W in RX)
self.assertFalse(X in RW)
+ def test_member_iter(self):
+ Color = self.Color
+ self.assertEqual(list(Color.PURPLE), [Color.BLUE, Color.RED])
+ self.assertEqual(list(Color.BLUE), [Color.BLUE])
+ self.assertEqual(list(Color.GREEN), [Color.GREEN])
+
def test_auto_number(self):
class Color(Flag):
red = auto()
@@ -2805,6 +2811,12 @@
with self.assertRaises(TypeError):
self.assertFalse('test' in RW)
+ def test_member_iter(self):
+ Color = self.Color
+ self.assertEqual(list(Color.PURPLE), [Color.BLUE, Color.RED])
+ self.assertEqual(list(Color.BLUE), [Color.BLUE])
+ self.assertEqual(list(Color.GREEN), [Color.GREEN])
+
def test_bool(self):
Perm = self.Perm
for f in Perm: