Skip to content

Commit 2ec6752

Browse files
authored
bpo-38967: Improve the error msg for reserved _sunder_ names in enum (GH-18370)
1 parent b48389d commit 2ec6752

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

Lib/enum.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,8 @@ def __setitem__(self, key, value):
7676
'_order_', '_create_pseudo_member_',
7777
'_generate_next_value_', '_missing_', '_ignore_',
7878
):
79-
raise ValueError('_names_ are reserved for future Enum use')
79+
raise ValueError(f'_sunder_ names, such as "{key}", are '
80+
'reserved for future Enum use')
8081
if key == '_generate_next_value_':
8182
# check if members already defined as auto()
8283
if self._auto_called:

Lib/test/test_enum.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -419,6 +419,11 @@ def red(self):
419419
green = 2
420420
blue = 3
421421

422+
def test_reserved__sunder_(self):
423+
with self.assertRaisesRegex(ValueError, '_sunder_ names, such as '
424+
'"_bad_", are reserved'):
425+
class Bad(Enum):
426+
_bad_ = 1
422427

423428
def test_enum_with_value_name(self):
424429
class Huh(Enum):

0 commit comments

Comments
 (0)