Add utility function for enum member values + test

This commit is contained in:
John Davis
2023-04-13 18:53:44 -04:00
parent e336043002
commit dacc38698b
2 changed files with 18 additions and 0 deletions
+8
View File
@@ -1905,3 +1905,11 @@ class StructuredExecutionTimer:
@property
def elapsed(self):
return time.time() - self.begin
def enum_values(enum_class):
"""
Return a list of member values of enumeration enum_class.
Values are in member definition order.
"""
return [item.value for key, item in enum_class.__members__.items()]
+10
View File
@@ -1,6 +1,7 @@
import errno
import os
import tempfile
from enum import Enum
from io import StringIO
from typing import Dict
@@ -139,3 +140,12 @@ def test_listify() -> None:
assert util.listify(d) == [d]
o = object()
assert util.listify(o) == [o]
def test_enum_values():
class Stuff(str, Enum):
A = "a"
C = "c"
B = "b"
assert util.enum_values(Stuff) == ["a", "c", "b"]