@@ -66,10 +66,27 @@ class FloatStooges(float, Enum):
6666 class FlagStooges (Flag ):
6767 LARRY = 1
6868 CURLY = 2
69- MOE = 3
69+ MOE = 4
7070except Exception as exc :
7171 FlagStooges = exc
7272
73+ class FlagStoogesWithZero (Flag ):
74+ NOFLAG = 0
75+ LARRY = 1
76+ CURLY = 2
77+ MOE = 4
78+
79+ class IntFlagStooges (IntFlag ):
80+ LARRY = 1
81+ CURLY = 2
82+ MOE = 4
83+
84+ class IntFlagStoogesWithZero (IntFlag ):
85+ NOFLAG = 0
86+ LARRY = 1
87+ CURLY = 2
88+ MOE = 4
89+
7390# for pickle test and subclass tests
7491class Name (StrEnum ):
7592 BDFL = 'Guido van Rossum'
@@ -2999,9 +3016,32 @@ def test_programatic_function_from_dict(self):
29993016 def test_pickle (self ):
30003017 if isinstance (FlagStooges , Exception ):
30013018 raise FlagStooges
3002- test_pickle_dump_load (self .assertIs , FlagStooges .CURLY | FlagStooges .MOE )
3019+ test_pickle_dump_load (self .assertIs , FlagStooges .CURLY )
3020+ test_pickle_dump_load (self .assertEqual ,
3021+ FlagStooges .CURLY | FlagStooges .MOE )
3022+ test_pickle_dump_load (self .assertEqual ,
3023+ FlagStooges .CURLY & ~ FlagStooges .CURLY )
30033024 test_pickle_dump_load (self .assertIs , FlagStooges )
30043025
3026+ test_pickle_dump_load (self .assertIs , FlagStoogesWithZero .CURLY )
3027+ test_pickle_dump_load (self .assertEqual ,
3028+ FlagStoogesWithZero .CURLY | FlagStoogesWithZero .MOE )
3029+ test_pickle_dump_load (self .assertIs , FlagStoogesWithZero .NOFLAG )
3030+
3031+ test_pickle_dump_load (self .assertIs , IntFlagStooges .CURLY )
3032+ test_pickle_dump_load (self .assertEqual ,
3033+ IntFlagStooges .CURLY | IntFlagStooges .MOE )
3034+ test_pickle_dump_load (self .assertEqual ,
3035+ IntFlagStooges .CURLY | IntFlagStooges .MOE | 0x30 )
3036+ test_pickle_dump_load (self .assertEqual , IntFlagStooges (0 ))
3037+ test_pickle_dump_load (self .assertEqual , IntFlagStooges (0x30 ))
3038+ test_pickle_dump_load (self .assertIs , IntFlagStooges )
3039+
3040+ test_pickle_dump_load (self .assertIs , IntFlagStoogesWithZero .CURLY )
3041+ test_pickle_dump_load (self .assertEqual ,
3042+ IntFlagStoogesWithZero .CURLY | IntFlagStoogesWithZero .MOE )
3043+ test_pickle_dump_load (self .assertIs , IntFlagStoogesWithZero .NOFLAG )
3044+
30053045 def test_contains_tf (self ):
30063046 Open = self .Open
30073047 Color = self .Color
0 commit comments