summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZackery Spytz <zspytz@gmail.com>2020-02-05 23:52:46 -0700
committerEthan Furman <ethan@stoneleaf.us>2020-09-13 11:36:26 -0700
commit2d8de3175e730d761700b4042cf24f1232e8b841 (patch)
tree80330b2c06b33ea9bd6a070a49053dee09a2ef51
parentb48389d95093c3f912549add8da339edc164bf0d (diff)
downloadcpython-git-pr_18370.tar.gz
bpo-38967: Improve the error msg for reserved _sunder_ names in enumpr_18370
-rw-r--r--Lib/enum.py3
-rw-r--r--Lib/test/test_enum.py5
2 files changed, 7 insertions, 1 deletions
diff --git a/Lib/enum.py b/Lib/enum.py
index 49b552ba0e..bc24f2ae2d 100644
--- a/Lib/enum.py
+++ b/Lib/enum.py
@@ -76,7 +76,8 @@ class _EnumDict(dict):
'_order_', '_create_pseudo_member_',
'_generate_next_value_', '_missing_', '_ignore_',
):
- raise ValueError('_names_ are reserved for future Enum use')
+ raise ValueError(f'_sunder_ names, such as "{key}", are '
+ 'reserved for future Enum use')
if key == '_generate_next_value_':
# check if members already defined as auto()
if self._auto_called:
diff --git a/Lib/test/test_enum.py b/Lib/test/test_enum.py
index e7bad62406..b18f3b38a6 100644
--- a/Lib/test/test_enum.py
+++ b/Lib/test/test_enum.py
@@ -419,6 +419,11 @@ class TestEnum(unittest.TestCase):
green = 2
blue = 3
+ def test_reserved__sunder_(self):
+ with self.assertRaisesRegex(ValueError, '_sunder_ names, such as '
+ '"_bad_", are reserved'):
+ class Bad(Enum):
+ _bad_ = 1
def test_enum_with_value_name(self):
class Huh(Enum):