@@ -346,10 +346,7 @@ def test_changing_member_fails(self):
346
346
def test_contains_tf (self ):
347
347
MainEnum = self .MainEnum
348
348
self .assertIn (MainEnum .first , MainEnum )
349
- if type (self ) is TestMinimalDate or type (self ) is TestMixedDate :
350
- self .assertTrue (date (* self .source_values [0 ]) in MainEnum )
351
- else :
352
- self .assertTrue (self .source_values [0 ] in MainEnum )
349
+ self .assertTrue (self .values [0 ] in MainEnum )
353
350
if type (self ) is not TestStrEnum :
354
351
self .assertFalse ('first' in MainEnum )
355
352
val = MainEnum .dupe
@@ -359,21 +356,37 @@ class OtherEnum(Enum):
359
356
one = auto ()
360
357
two = auto ()
361
358
self .assertNotIn (OtherEnum .two , MainEnum )
359
+ #
360
+ if MainEnum ._member_type_ is object :
361
+ # enums without mixed data types will always be False
362
+ class NotEqualEnum (self .enum_type ):
363
+ this = self .source_values [0 ]
364
+ that = self .source_values [1 ]
365
+ self .assertNotIn (NotEqualEnum .this , MainEnum )
366
+ self .assertNotIn (NotEqualEnum .that , MainEnum )
367
+ else :
368
+ # enums with mixed data types may be True
369
+ class EqualEnum (self .enum_type ):
370
+ this = self .source_values [0 ]
371
+ that = self .source_values [1 ]
372
+ self .assertIn (EqualEnum .this , MainEnum )
373
+ self .assertIn (EqualEnum .that , MainEnum )
362
374
363
375
def test_contains_same_name_diff_enum_diff_values (self ):
364
376
MainEnum = self .MainEnum
377
+ #
365
378
class OtherEnum (Enum ):
366
379
first = "brand"
367
380
second = "new"
368
381
third = "values"
369
-
382
+ #
370
383
self .assertIn (MainEnum .first , MainEnum )
371
384
self .assertIn (MainEnum .second , MainEnum )
372
385
self .assertIn (MainEnum .third , MainEnum )
373
386
self .assertNotIn (MainEnum .first , OtherEnum )
374
387
self .assertNotIn (MainEnum .second , OtherEnum )
375
388
self .assertNotIn (MainEnum .third , OtherEnum )
376
-
389
+ #
377
390
self .assertIn (OtherEnum .first , OtherEnum )
378
391
self .assertIn (OtherEnum .second , OtherEnum )
379
392
self .assertIn (OtherEnum .third , OtherEnum )
@@ -4049,15 +4062,12 @@ class Color(enum.Enum)
4049
4062
| ----------------------------------------------------------------------
4050
4063
| Methods inherited from enum.EnumType:
4051
4064
|\x20 \x20
4052
- | __contains__(member) from enum.EnumType
4053
- | Return True if `member` is in `cls`.
4054
- |
4055
- | `member` is in `cls` iff:
4056
- | 1) `member` is a proper member of the `cls` enum, or
4057
- | 2) `member` is the value of a member of the `cls` enum.
4065
+ | __contains__(value) from enum.EnumType
4066
+ | Return True if `value` is in `cls`.
4058
4067
|
4059
- | Beware that 2) can lead to some confusion if members of different
4060
- | enums have the same value.
4068
+ | `value` is in `cls` if:
4069
+ | 1) `value` is a member of `cls`, or
4070
+ | 2) `value` is the value of one of the `cls`'s members.
4061
4071
|\x20 \x20
4062
4072
| __getitem__(name) from enum.EnumType
4063
4073
| Return the member matching `name`.
0 commit comments