@@ -3395,6 +3395,31 @@ class Sillier(IntEnum):
33953395 triple = 3
33963396 value = 4
33973397
3398+ class TestHelpers (unittest .TestCase ):
3399+
3400+ sunder_names = '_bad_' , '_good_' , '_what_ho_'
3401+ dunder_names = '__mal__' , '__bien__' , '__que_que__'
3402+ private_names = '_MyEnum__private' , '_MyEnum__still_private'
3403+ private_and_sunder_names = '_MyEnum__private_' , '_MyEnum__also_private_'
3404+ random_names = 'okay' , '_semi_private' , '_weird__' , '_MyEnum__'
3405+
3406+ def test_sunder (self ):
3407+ for name in self .sunder_names + self .private_and_sunder_names :
3408+ self .assertTrue (enum ._is_sunder (name ), '%r is a not sunder name?' % name )
3409+ for name in self .dunder_names + self .private_names + self .random_names :
3410+ self .assertFalse (enum ._is_sunder (name ), '%r is a sunder name?' % name )
3411+
3412+ def test_dunder (self ):
3413+ for name in self .dunder_names :
3414+ self .assertTrue (enum ._is_dunder (name ), '%r is a not dunder name?' % name )
3415+ for name in self .sunder_names + self .private_names + self .private_and_sunder_names + self .random_names :
3416+ self .assertFalse (enum ._is_dunder (name ), '%r is a dunder name?' % name )
3417+
3418+ def test_is_private (self ):
3419+ for name in self .private_names + self .private_and_sunder_names :
3420+ self .assertTrue (enum ._is_private ('MyEnum' , name ), '%r is a not private name?' )
3421+ for name in self .sunder_names + self .dunder_names + self .random_names :
3422+ self .assertFalse (enum ._is_private ('MyEnum' , name ), '%r is a private name?' )
33983423
33993424class TestEnumTypeSubclassing (unittest .TestCase ):
34003425 pass
0 commit comments