bpo-41811: create SortKey members using first given value (GH-22316) (GH-22325)
(cherry picked from commit ae0d2a33ec
)
Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
This commit is contained in:
parent
9e73cac173
commit
0e4d526de4
|
@ -45,9 +45,9 @@ class SortKey(str, Enum):
|
||||||
TIME = 'time', 'tottime'
|
TIME = 'time', 'tottime'
|
||||||
|
|
||||||
def __new__(cls, *values):
|
def __new__(cls, *values):
|
||||||
obj = str.__new__(cls)
|
value = values[0]
|
||||||
|
obj = str.__new__(cls, value)
|
||||||
obj._value_ = values[0]
|
obj._value_ = value
|
||||||
for other_value in values[1:]:
|
for other_value in values[1:]:
|
||||||
cls._value2member_map_[other_value] = obj
|
cls._value2member_map_[other_value] = obj
|
||||||
obj._all_values = values
|
obj._all_values = values
|
||||||
|
|
|
@ -95,5 +95,9 @@ class StatsTestCase(unittest.TestCase):
|
||||||
self.assertIn('pass2', funcs_called)
|
self.assertIn('pass2', funcs_called)
|
||||||
self.assertIn('pass3', funcs_called)
|
self.assertIn('pass3', funcs_called)
|
||||||
|
|
||||||
|
def test_SortKey_enum(self):
|
||||||
|
self.assertEqual(SortKey.FILENAME, 'filename')
|
||||||
|
self.assertNotEqual(SortKey.FILENAME, SortKey.CALLS)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
unittest.main()
|
unittest.main()
|
||||||
|
|
Loading…
Reference in New Issue