This commit is contained in:
CJ Gasper 2024-11-22 04:57:44 +00:00 committed by GitHub
commit 8d6672a457
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 23 additions and 1 deletions

View File

@ -9,7 +9,10 @@ from .unmountedtype import UnmountedType
def eq_enum(self, other):
if isinstance(other, self.__class__):
return self is other
return self.value is other
if isinstance(other, PyEnum):
# Identical values from different Enum classes are not equal.
return False
return self.value == other
def hash_enum(self):

View File

@ -230,6 +230,25 @@ def test_enum_to_enum_comparison_should_differ():
assert RGB1.BLUE != RGB2.BLUE
def test_enum_to_value_comparison():
class RGB(Enum):
RED = "red"
GREEN = "green"
BLUE = "blue"
assert "red" == RGB.RED
assert "red" != RGB.GREEN
assert "red" != RGB.BLUE
assert "green" != RGB.RED
assert "green" == RGB.GREEN
assert "green" != RGB.BLUE
assert "blue" != RGB.RED
assert "blue" != RGB.GREEN
assert "blue" == RGB.BLUE
def test_enum_skip_meta_from_members():
class RGB1(Enum):
class Meta: