gh-125259: Fix error notes removal in enum initialization (GH-125647)

This commit is contained in:
Mario Šaško 2024-10-22 22:42:22 +02:00 committed by GitHub
parent aaed91cabc
commit 34653bba64
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 25 additions and 11 deletions

View file

@ -1888,6 +1888,25 @@ class TestSpecial(unittest.TestCase):
class Wrong(Enum, str):
NotHere = 'error before this point'
def test_raise_custom_error_on_creation(self):
class InvalidRgbColorError(ValueError):
def __init__(self, r, g, b):
self.r = r
self.g = g
self.b = b
super().__init__(f'({r}, {g}, {b}) is not a valid RGB color')
with self.assertRaises(InvalidRgbColorError):
class RgbColor(Enum):
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
INVALID = (256, 0, 0)
def __init__(self, r, g, b):
if not all(0 <= val <= 255 for val in (r, g, b)):
raise InvalidRgbColorError(r, g, b)
def test_intenum_transitivity(self):
class number(IntEnum):
one = 1