Revert "bpo-38659: [Enum] add _simple_enum decorator (GH-25285)" (GH-… · python/cpython@503cdc7
@@ -8,7 +8,7 @@
88import threading
99from collections import OrderedDict
1010from enum import Enum, IntEnum, StrEnum, EnumType, Flag, IntFlag, unique, auto
11-from enum import STRICT, CONFORM, EJECT, KEEP, _simple_enum, _test_simple_enum
11+from enum import STRICT, CONFORM, EJECT, KEEP
1212from io import StringIO
1313from pickle import dumps, loads, PicklingError, HIGHEST_PROTOCOL
1414from test import support
@@ -2511,13 +2511,10 @@ class Bizarre(Flag, boundary=KEEP):
25112511d = 6
25122512#
25132513self.assertRaisesRegex(ValueError, 'invalid value: 7', Iron, 7)
2514-#
25152514self.assertIs(Water(7), Water.ONE|Water.TWO)
25162515self.assertIs(Water(~9), Water.TWO)
2517-#
25182516self.assertEqual(Space(7), 7)
25192517self.assertTrue(type(Space(7)) is int)
2520-#
25212518self.assertEqual(list(Bizarre), [Bizarre.c])
25222519self.assertIs(Bizarre(3), Bizarre.b)
25232520self.assertIs(Bizarre(6), Bizarre.d)
@@ -3056,20 +3053,16 @@ class Space(IntFlag, boundary=EJECT):
30563053EIGHT = 8
30573054self.assertIs(Space._boundary_, EJECT)
30583055#
3059-#
30603056class Bizarre(IntFlag, boundary=KEEP):
30613057b = 3
30623058c = 4
30633059d = 6
30643060#
30653061self.assertRaisesRegex(ValueError, 'invalid value: 5', Iron, 5)
3066-#
30673062self.assertIs(Water(7), Water.ONE|Water.TWO)
30683063self.assertIs(Water(~9), Water.TWO)
3069-#
30703064self.assertEqual(Space(7), 7)
30713065self.assertTrue(type(Space(7)) is int)
3072-#
30733066self.assertEqual(list(Bizarre), [Bizarre.c])
30743067self.assertIs(Bizarre(3), Bizarre.b)
30753068self.assertIs(Bizarre(6), Bizarre.d)
@@ -3584,41 +3577,6 @@ def test_inspect_classify_class_attrs(self):
35843577if failed:
35853578self.fail("result does not equal expected, see print above")
358635793587-def test_test_simple_enum(self):
3588-@_simple_enum(Enum)
3589-class SimpleColor:
3590-RED = 1
3591-GREEN = 2
3592-BLUE = 3
3593-class CheckedColor(Enum):
3594-RED = 1
3595-GREEN = 2
3596-BLUE = 3
3597-self.assertTrue(_test_simple_enum(CheckedColor, SimpleColor) is None)
3598-SimpleColor.GREEN._value_ = 9
3599-self.assertRaisesRegex(
3600-TypeError, "enum mismatch",
3601-_test_simple_enum, CheckedColor, SimpleColor,
3602- )
3603-class CheckedMissing(IntFlag, boundary=KEEP):
3604-SIXTY_FOUR = 64
3605-ONE_TWENTY_EIGHT = 128
3606-TWENTY_FORTY_EIGHT = 2048
3607-ALL = 2048 + 128 + 64 + 12
3608-CM = CheckedMissing
3609-self.assertEqual(list(CheckedMissing), [CM.SIXTY_FOUR, CM.ONE_TWENTY_EIGHT, CM.TWENTY_FORTY_EIGHT])
3610-#
3611-@_simple_enum(IntFlag, boundary=KEEP)
3612-class Missing:
3613-SIXTY_FOUR = 64
3614-ONE_TWENTY_EIGHT = 128
3615-TWENTY_FORTY_EIGHT = 2048
3616-ALL = 2048 + 128 + 64 + 12
3617-M = Missing
3618-self.assertEqual(list(CheckedMissing), [M.SIXTY_FOUR, M.ONE_TWENTY_EIGHT, M.TWENTY_FORTY_EIGHT])
3619-#
3620-_test_simple_enum(CheckedMissing, Missing)
3621-3622358036233581class MiscTestCase(unittest.TestCase):
36243582def test__all__(self):
@@ -3634,13 +3592,6 @@ def test__all__(self):
36343592CONVERT_TEST_NAME_E = 5
36353593CONVERT_TEST_NAME_F = 5
363635943637-CONVERT_STRING_TEST_NAME_D = 5
3638-CONVERT_STRING_TEST_NAME_C = 5
3639-CONVERT_STRING_TEST_NAME_B = 5
3640-CONVERT_STRING_TEST_NAME_A = 5 # This one should sort first.
3641-CONVERT_STRING_TEST_NAME_E = 5
3642-CONVERT_STRING_TEST_NAME_F = 5
3643-36443595class TestIntEnumConvert(unittest.TestCase):
36453596def test_convert_value_lookup_priority(self):
36463597test_type = enum.IntEnum._convert_(
@@ -3688,16 +3639,14 @@ def test_convert_raise(self):
36883639filter=lambda x: x.startswith('CONVERT_TEST_'))
3689364036903641def test_convert_repr_and_str(self):
3691-# reset global constants, as previous tests could have converted the
3692-# integer values to enums
36933642module = ('test.test_enum', '__main__')[__name__=='__main__']
36943643test_type = enum.IntEnum._convert_(
36953644'UnittestConvert',
36963645module,
3697-filter=lambda x: x.startswith('CONVERT_STRING_TEST_'))
3698-self.assertEqual(repr(test_type.CONVERT_STRING_TEST_NAME_A), '%s.CONVERT_STRING_TEST_NAME_A' % module)
3699-self.assertEqual(str(test_type.CONVERT_STRING_TEST_NAME_A), 'CONVERT_STRING_TEST_NAME_A')
3700-self.assertEqual(format(test_type.CONVERT_STRING_TEST_NAME_A), '5')
3646+filter=lambda x: x.startswith('CONVERT_TEST_'))
3647+self.assertEqual(repr(test_type.CONVERT_TEST_NAME_A), '%s.CONVERT_TEST_NAME_A' % module)
3648+self.assertEqual(str(test_type.CONVERT_TEST_NAME_A), 'CONVERT_TEST_NAME_A')
3649+self.assertEqual(format(test_type.CONVERT_TEST_NAME_A), '5')
3701365037023651# global names for StrEnum._convert_ test
37033652CONVERT_STR_TEST_2 = 'goodbye'