
    /hhp                       S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
rS SKJr  S SKJr  S SKJr  S SKJrJrJrJrJrJrJrJrJr  S SKJrJrJrJrJrJ r   S SKJ!r!J"r"J#r#J$r$J%r%  S SKJ&r&J'r'J(r(J)r)  S S	K*J+r+  S S
K,J-r-J.r.J/r/J0r0  S SK1J2r2  S SK3J4r4J5r5  S SK3J6r6  S SKJ7r7  \Rp                  SS r9S r:S r;\<r=\=R}                  S5      S   r?  " S S\5      r@  " S S\C\5      rD  " S S\E\5      rF  " S S\5      rG  " S S\5      rH  " S S\5      rI  " S  S!\5      rJ  " S" S#\5      rK \" S$S%\<S&9rL \" S'S(5      rM \" S)S*S+S,9rN  " S- S.\5      rOSS/ jrPS0 rQ " S1 S2\R                  5      rS " S3 S45      rT \R                   " S5 S6\\R<                  S795       rV \R                   " S8 S9\\R8                  S795       rW \R                   " S: S;\5      5       rX " S< S=5      rY " S> S?5      rZ " S@ SA5      r[ " SB SC5      r\ " SD SE5      r] " SF SG\Y\Z\R                  5      r^ " SH SI\Y\Z\R                  5      r_ " SJ SK\Y\Z\]\R                  5      r` " SL SM\Y\Z\]\R                  5      ra " SN SO\Y\\\R                  5      rb " SP SQ\Y\\\R                  5      rc " SR SS\Y\\\R                  5      rd " ST SU\Y\\\R                  5      re " SV SW\Y\\\]\R                  5      rf " SX SY\Y\\\]\R                  5      rg " SZ S[\Y\[\R                  5      rh " S\ S]\Y\[\R                  5      ri " S^ S_\Y\[\R                  5      rj " S` Sa\Y\[\R                  5      rk " Sb Sc\Y\[\]\R                  5      rl " Sd Se\Y\[\]\R                  5      rm " Sf Sg\Y\[\R                  5      rn " Sh Si\Y\[\R                  5      ro " Sj Sk\Y\\\R                  5      rp " Sl Sm\Y\\\R                  5      rq " Sn So\Y\[\R                  5      rr " Sp Sq\Y\[\R                  5      rs " Sr Ss\Y\\\R                  5      rt " St Su\Y\\\R                  5      ru " Sv Sw\R                  5      rv " Sx Sy\R                  5      rw " Sz S{\R                  5      rx " S| S}\R                  5      ry " S~ S\R                  5      rz " S S\R                  5      r{ " S S\R                  5      r| " S S\R                  5      r}Sr~Sr " S S\R                  5      r " S S\R                  5      rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr " S S\R                  5      r " S S\R                  5      rS rS r\<S:X  a  \GR4                  " 5         gg! \A a  rB\Br@ SrBCBGNSrBCBff = f! \A a  rB\BrD SrBCBGNSrBCBff = f! \A a  rB\BrF SrBCBGNSrBCBff = f! \A a  rB\BrG SrBCBGNSrBCBff = f! \A a  rB\BrH SrBCBGNSrBCBff = f! \A a  rB\BrI SrBCBGNSrBCBff = f! \A a  rB\BrJ SrBCBGNSrBCBff = f! \A a  rB\BrK SrBCBGNSrBCBff = f! \A a  rB\BrL SrBCBGNSrBCBff = f! \A a  rB\BrM SrBCBGNSrBCBff = f! \A a  rB\BrN SrBCBGN(SrBCBff = f! \A a     GN-f = f! \A a  rB\BrV SrBCBGNSrBCBff = f! \A a  rB\BrW SrBCBGNSrBCBff = f! \A a  rB\BrX SrBCBGNSrBCBff = f)    N)OrderedDictdate)partial)	EnumEnumMetaIntEnumStrEnumEnumTypeFlagIntFlaguniqueauto)STRICTCONFORMEJECTKEEP_simple_enum_test_simple_enum)verifyUNIQUE
CONTINUOUSNAMED_FLAGSReprEnum)member	nonmember_iter_bits_lsbEnumDict)StringIO)dumpsloadsPicklingErrorHIGHEST_PROTOCOL)support)	ALWAYS_EQ	REPO_ROOT)threading_helper)	timedelta   c                    UR                  [        R                  " [        5      5        [        R
                  R                  [        S5      n[        R
                  R                  U5      (       aD  UR                  [        R                  " US[        R                  [        R                  -  S95        [        R
                  R                  [        S5      n[        R
                  R                  U5      (       aX  [        R                  S:X  aD  UR                  [        R                  " US[        R                  [        R                  -  S95        U$ )NzDoc/library/enum.rstF)module_relativeoptionflagszDoc/howto/enum.rstshort)addTestsdoctestDocTestSuiteenumospathjoinr&   existsDocFileSuiteELLIPSISNORMALIZE_WHITESPACEsysfloat_repr_style)loadertestsignore	lib_testshowto_testss        7/opt/python-3.13.8/usr/lib/python3.13/test/test_enum.py
load_testsrA      s    	NN7''-.Y(>?I	ww~~i  w++ %#,,W-I-II 	
 '',,y*>?K	ww~~k""s';';w'Fw++ %#,,W-I-II 	
 L    c                  $   ^ ^ SSK Jm  U U4S jnU$ )Nr   )wrapsc                 .   >^  T" T 5      UU 4S j5       nU$ )Nc                     > T Vs/ s H  n[        U[        5      (       d  M  UPM     nn[        U5      S:X  a  US   eU(       a  [        SU5      eT" U 0 UD6$ s  snf )N   r   zEnum Exceptions)
isinstance	ExceptionlenExceptionGroup)argskwargseexcsenum_types_or_exceptionsfuncs       r@   inner5reraise_if_not_enum.<locals>.decorator.<locals>.inner3   sk     21Aa+ 1  
 4yA~1g$%6==(((s
   AA )rQ   rR   rP   rD   s   ` r@   	decorator&reraise_if_not_enum.<locals>.decorator2   s     	t
	) 

	) rB   )	functoolsrD   )rP   rU   rD   s   ` @r@   reraise_if_not_enumrX   /   s     rB   .c                        \ rS rSrSrSrSrSrg)StoogesG   rG   r)      rT   N__name__
__module____qualname____firstlineno__LARRYCURLYMOE__static_attributes__rT   rB   r@   r\   r\   G       rB   r\   c                        \ rS rSrSrSrSrSrg)
IntStoogesO   rG   r)   r^   rT   Nr_   rT   rB   r@   rj   rj   O   rh   rB   rj   c                        \ rS rSrSrSrSrSrg)FloatStoogesW   g=
ףp=?g(\@gR$_	$	@rT   Nr_   rT   rB   r@   rm   rm   W   s    rB   rm   c                   $    \ rS rSrSrSrSrSrSrg)FlagStooges_   rG   r)        rT   N	r`   ra   rb   rc   rd   re   rf   BIGrg   rT   rB   r@   rp   rp   _       rB   rp   c                   (    \ rS rSrSrSrSrSrSrSr	g)	FlagStoogesWithZeroh   r   rG   r)   rr   rs   rT   N
r`   ra   rb   rc   NOFLAGrd   re   rf   ru   rg   rT   rB   r@   rx   rx   h       rB   rx   c                   $    \ rS rSrSrSrSrSrSrg)IntFlagStoogesr   rG   r)   rr   rs   rT   Nrt   rT   rB   r@   r~   r~   r   rv   rB   r~   c                   (    \ rS rSrSrSrSrSrSrSr	g)	IntFlagStoogesWithZero{   r   rG   r)   rr   rs   rT   Nrz   rT   rB   r@   r   r   {   r|   rB   r   c                       \ rS rSrSrSrSrg)Name   Guido van RossumzBarry WarsawrT   N)r`   ra   rb   rc   BDFLFLUFLrg   rT   rB   r@   r   r      s    !rB   r   Questionzwho what when where whymoduleAnswerzhim this then there becauseTheoryzrule law suppositionspanish_inquisition)qualnamec                        \ rS rSrSrSrSrSrg)Fruit   rG   r)   r^   rT   N)r`   ra   rb   rc   TOMATOBANANACHERRYrg   rT   rB   r@   r   r      s    rB   r   c           
      r    Uc  Un[        [        S-   5       H  nU " [        [        XS95      U5        M     g NrG   )protocol)ranger#   r!   r    )	assertionsourcetargetr   s       r@   test_pickle_dump_loadr      s5    ~*Q./%f896B 0rB   c                     [        [        S-   5       H  nU " U5         [        X#S9  S S S 5        M     g ! , (       d  f       M1  = fr   )r   r#   r    )r   	exceptionobjr   s       r@   test_pickle_exceptionr      s6    *Q./y!#) "! 0!!s	   
5
A	c                   F    \ rS rSrSrSrSrSrSrS r	S r
S	 rS
 rS rSrg)TestHelpers   _bad__good_	_what_ho___mal____bien____que_que__)_MyEnum__private_MyEnum__still_private_MyEnum___triple_private_MyEnum__private__MyEnum__also_private_okay_semi_private_weird__	_MyEnum__c                      " S S5      nS H`  nU" 5       nU R                  [        R                  " U5      5        [        X2S5        U R	                  [        R                  " U5      5        Mb     g )Nc                       \ rS rSrSrg)+TestHelpers.test_is_descriptor.<locals>.foo   rT   Nr`   ra   rb   rc   rg   rT   rB   r@   foor          rB   r   )__get____set__
__delete__rG   )assertFalser1   _is_descriptorsetattr
assertTrue)selfr   attrr   s       r@   test_is_descriptorTestHelpers.test_is_descriptor   sW    	 	6D%CT0056Cq!OOD//45	 7rB   c                    U R                   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     U R
                  U R                  -   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     S H(  nU R                  [        R                  " U5      5        M*     S H(  nU R                  [        R                  " U5      5        M*     g )N%r is a not sunder name?%r is a sunder name?)_a__aa_)aa__a__aa____a___a____a________________	sunder_namesprivate_and_sunder_namesr   r1   
_is_sunderdunder_namesprivate_namesrandom_namesr   r   namess      r@   test_sunderTestHelpers.test_sunder   s    %%(E(EEDOODOOD13MPT3TU F%%(:(::T=N=NNDT__T24JT4QR O AOODOOA./ !/AT__Q/0/rB   c                    U R                    H,  nU R                  [        R                  " U5      SU-  5        M.     U R                  U R
                  -   U R                  -   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     S H(  nU R                  [        R                  " U5      5        M*     S H(  nU R                  [        R                  " U5      5        M*     g )N%r is a not dunder name?%r is a dunder name?)r   __aa__)r   r   r   r   r   r   r   r   r   r   r   r   r   	r   r   r1   
_is_dunderr   r   r   r   r   r   s      r@   test_dunderTestHelpers.test_dunder   s    %%DOODOOD13MPT3TU &%%(:(::T=Z=ZZ]a]n]nnDT__T24JT4QR o$AOODOOA./ %/AT__Q/0/rB   c                 :   U R                   U R                  -    H*  nU R                  [        R                  " SU5      S5        M,     U R
                  U R                  -   U R                  -    H*  nU R                  [        R                  " SU5      S5        M,     g NMyEnumz%r is a not private name?z%r is a private name?	r   r   r   r1   _is_privater   r   r   r   r   r   s     r@   test_is_privateTestHelpers.test_is_private       &&)F)FFDOOD,,Xt<>YZ G%%(9(99D<M<MMDT--h=?VW NrB   c                     U R                  [        [        S5      5      / SQ5        U R                  [        S[        [        S5      5        g )N   rG   r)   rr   z-8 is not a positive integer)assertEquallistr   assertRaisesRegex
ValueErrorr   s    r@   test_iter_bits_lsbTestHelpers.test_iter_bits_lsb   s8    nQ/0)<z+I4Q_`bQcdrB   rT   N)r`   ra   rb   rc   r   r   r   r   r   r   r   r   r   r  rg   rT   rB   r@   r   r      s9     2L7L\MLCL6	1	1XerB   r   c                   $    \ rS rSrSS jrS rSrg)classproperty   Nc                 X    Xl         X l        X0l        Uc  Ub  UR                  nX@l        g N)fgetfsetfdel__doc__)r   r	  r
  r  docs        r@   __init__classproperty.__init__   s)    			;4+,,CrB   c                 $    U R                  U5      $ r  )r	  )r   instance
ownerclasss      r@   r   classproperty.__get__   s    yy$$rB   )r  r  r	  r
  )NNNN)r`   ra   rb   rc   r  r   rg   rT   rB   r@   r  r     s    %rB   r  c                   B    \ rS rSrSr\" 5       r\" 5       r\" 5       rSr	g)HeadlightsK   r   rT   N)
r`   ra   rb   rc   OFF_Kr   
LOW_BEAM_KHIGH_BEAM_KFOG_Krg   rT   rB   r@   r  r         V
frB   r  boundaryc                   B    \ rS rSrSr\" 5       r\" 5       r\" 5       rSr	g)HeadlightsC   r   rT   N)
r`   ra   rb   rc   OFF_Cr   
LOW_BEAM_CHIGH_BEAM_CFOG_Crg   rT   rB   r@   r  r     r  rB   r  c                       \ rS rSrSrSrSrg)NoNamei  rG   r)   rT   Nr`   ra   rb   rc   ONETWOrg   rT   rB   r@   r&  r&    s    rB   r&  c                       \ rS rSrSrSrS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S r!S  r"S! r#S" r$S# r%S$ r&S%r'g)&
_EnumTestsi  zP
Test for behavior that is the same across the different types of enumerations.
Nc           
        ^  T R                   R                  SS  S:X  Ga   " S ST R                  5      n " U 4S jSU5      nUT l         " S ST R                  5      nUT l         " S	 S
T R                  5      nUT l         " S ST R                  5      nUT l         " S ST R                  5      nUT l         " S SU5      nUT l         " S ST R                  5      nUT l	         " S ST R                  5      n	U	T l
        ST l        / SQT l        [        U[        5      (       a  T R                  T l        OvUR                   ["        L a
  / SQT l        OY[        T R                  [$        5      (       a  / SQT l        ST l        U" S5      T l        OT R                  =(       d    / SQT l        [)        T SS5      (       d  T R                  T l        g g T R                   R                  SS  S:X  GaU  [,        R.                  S 5       n
T R                  SS U
05      n[1        5       n
[1        5       n[1        5       n[        T R                  [$        5      (       a  S!nOUnU" S[3        XXS"95      =T l        nS# n[1        5       n
T R                  SS U
4S$U445      T l        S% n[1        5       n
T R                  S
S U
4S&U4/5      T l        S' nS( n[1        5       n
T R                  S[3        XUS)95      T l        S* nS+ nT R                  S[3        XS,95      T l        T R                  SS 5      T l        S- nT R                  SS.U05      T l	        [4        S/ 5       nT R                  SS.U05      T l
        ST l        / SQT l        [        U[        5      (       a  T R                  T l        OvUR                   ["        L a
  / SQT l        OY[        T R                  [$        5      (       a  / SQT l        ST l        U" S5      T l        OT R                  =(       d    / SQT l        [)        T SS5      (       d  T R                  T l        g g [7        S0T R                   R                  -  5      e)1NClassc                   8    \ rS rSr\R
                  S 5       rSrg)"_EnumTests.setUp.<locals>.BaseEnumi  c                      SU R                   -  $ Nz%s is first!r   r  s    r@   first(_EnumTests.setUp.<locals>.BaseEnum.first  s    )DII55rB   rT   N)r`   ra   rb   rc   r1   propertyr4  rg   rT   rB   r@   BaseEnumr0    s    6 6rB   r7  c                      > \ rS rSr\" 5       r\" 5       r\" 5       r\"  Y R                  \
5      (       a  SrSrg\rSrg)"_EnumTests.setUp.<locals>.MainEnumi"  r^   rT   N)r`   ra   rb   rc   r   r4  secondthird
issubclass	enum_typer   duperg   r  s   r@   MainEnumr9  "  s3    dnnd33D DrB   r?  c                   (    \ rS rSrS r\" 5       rSrg)$_EnumTests.setUp.<locals>.NewStrEnumi,  c                 6    U R                   R                  5       $ r  r   upperr  s    r@   __str__,_EnumTests.setUp.<locals>.NewStrEnum.__str__-      99??,,rB   rT   N)r`   ra   rb   rc   rE  r   r4  rg   rT   rB   r@   
NewStrEnumrA  ,      -rB   rH  c                   (    \ rS rSrS r\" 5       rSrg)'_EnumTests.setUp.<locals>.NewFormatEnumi2  c                 6    U R                   R                  5       $ r  rC  r   specs     r@   
__format__2_EnumTests.setUp.<locals>.NewFormatEnum.__format__3  rG  rB   rT   N)r`   ra   rb   rc   rO  r   r4  rg   rT   rB   r@   NewFormatEnumrK  2  rI  rB   rQ  c                   .    \ rS rSrS rS r\" 5       rSrg)*_EnumTests.setUp.<locals>.NewStrFormatEnumi8  c                 6    U R                   R                  5       $ r  r   titler  s    r@   rE  2_EnumTests.setUp.<locals>.NewStrFormatEnum.__str__9  rG  rB   c                 J    SR                  [        U R                  5      5      $ N r4   reversedr   rM  s     r@   rO  5_EnumTests.setUp.<locals>.NewStrFormatEnum.__format__;      778DII#677rB   rT   N)	r`   ra   rb   rc   rE  rO  r   r4  rg   rT   rB   r@   NewStrFormatEnumrS  8  s    -8rB   r_  c                        \ rS rSrS rS rSrg)%_EnumTests.setUp.<locals>.NewBaseEnumi@  c                 6    U R                   R                  5       $ r  rU  r  s    r@   rE  -_EnumTests.setUp.<locals>.NewBaseEnum.__str__A  rG  rB   c                 J    SR                  [        U R                  5      5      $ rY  r[  rM  s     r@   rO  0_EnumTests.setUp.<locals>.NewBaseEnum.__format__C  r^  rB   rT   N)r`   ra   rb   rc   rE  rO  rg   rT   rB   r@   NewBaseEnumra  @  s    -8rB   rf  c                   "    \ rS rSr\" 5       rSrg)$_EnumTests.setUp.<locals>.NewSubEnumiF  rT   N)r`   ra   rb   rc   r   r4  rg   rT   rB   r@   
NewSubEnumrh  F  s	    rB   ri  c                       \ rS rSrS rSrg)!_EnumTests.setUp.<locals>.LazyGNViJ  c                     g r  rT   r   startlastvaluess       r@   _generate_next_value_7_EnumTests.setUp.<locals>.LazyGNV._generate_next_value_K  s    rB   rT   Nr`   ra   rb   rc   rq  rg   rT   rB   r@   LazyGNVrk  J  s    rB   rt  c                   $    \ rS rSr\S 5       rSrg)!_EnumTests.setUp.<locals>.BusyGNViO  c                     g r  rT   rm  s       r@   rq  7_EnumTests.setUp.<locals>.BusyGNV._generate_next_value_P  s    rB   rT   Nr`   ra   rb   rc   staticmethodrq  rg   rT   rB   r@   BusyGNVrv  O  s     rB   r{  F)r4  r:  r;  )123r   T   rG   r)   r^   source_valuesr   Functionc                      SU R                   -  $ r2  r3  r  s    r@   r4  _EnumTests.setUp.<locals>.firste  s    %		11rB   r4  r^   )r4  r:  r;  r>  c                 6    U R                   R                  5       $ r  rC  r  s    r@   rE  !_EnumTests.setUp.<locals>.__str__s      yy((rB   rE  c                 6    U R                   R                  5       $ r  rC  rM  s     r@   rO  $_EnumTests.setUp.<locals>.__format__x  r  rB   rO  c                 6    U R                   R                  5       $ r  rU  r  s    r@   rE  r  }  r  rB   c                 J    SR                  [        U R                  5      5      $ rY  r[  rM  s     r@   rO  r        wwx		233rB   )r4  rO  rE  c                 6    U R                   R                  5       $ r  rU  r  s    r@   rE  r    r  rB   c                 J    SR                  [        U R                  5      5      $ rY  r[  rM  s     r@   rO  r    r  rB   )rO  rE  c                     g r  rT   rm  s       r@   rq  /_EnumTests.setUp.<locals>._generate_next_value_      rB   rq  c                     g r  rT   rm  s       r@   rq  r    s    rB   zunknown enum style: %r)	__class__r`   r=  r?  rH  rQ  r_  rf  ri  rt  r{  is_flagnamesr<  r
   rp  _member_type_strr   dupe2getattrr  r1   r6  r   dictrz  r   )r   r7  r?  rH  rQ  r_  rf  ri  rt  r{  r4  r:  r;  r>  rE  rO  rq  s   `                r@   setUp_EnumTests.setUp  s   >>""23'7264>> 6!8 ! %DMT^^  )DO  "/D4>>  %5D!8dnn 8
  +D[ (DO$..  #DL$..  #DL DL5DJ(G,,"jj''3.-DNND11'#%a[
"kk6Y4%88%)[[" 9^^$$RS)Z7]]2 2~~j75/BHFEVFFE$..$//'/
Duch<t'uuDMH)FE"nn\WUOYW^L_;`aDO)FE!%75/S_`jRkAl!mD)4FE$(NN3EtRWx  HA  %BD!)4#~~mTZ=ijD"..|WEDO>>)6MNc5deDL >>)6MNc5deDL DL5DJ(G,,"jj''3.-DNND11'#%a[
"kk6Y4%88%)[[" 9 58O8OOPPrB   c                 x    U R                  UR                  U5      UR                  UR                  5      5        g r  )r   formatvaluer   rN  r   s      r@   assertFormatIsValue_EnumTests.assertFormatIsValue  s(    V,dkk&,,.GHrB   c                 v    U R                  UR                  U5      UR                  [        U5      5      5        g r  )r   r  r  r  s      r@   assertFormatIsStr_EnumTests.assertFormatIsStr  s(    V,dkk#f+.FGrB   c                     " S SU R                   5      nU R                  [        US5      5        U?U R	                  [        US5      5        U R                  [        5         U?S S S 5        U R                  [        5         U?S S S 5        U R                  [        5         UR                  ?	S S S 5        g ! , (       d  f       NY= f! , (       d  f       NJ= f! , (       d  f       g = f)Nc                   D    \ rS rSr\" 5       r\" 5       r\" 5       rS rSr	g)2_EnumTests.test_attribute_deletion.<locals>.Seasoni  c                     g r  rT   )clss    r@   spam7_EnumTests.test_attribute_deletion.<locals>.Season.spam  r  rB   rT   N)
r`   ra   rb   rc   r   SPRINGSUMMERAUTUMNr  rg   rT   rB   r@   Seasonr    s    VFVFVFrB   r  r  )
r=  r   hasattrr  r   assertRaisesAttributeErrorr  DRYr   r   r  s     r@   test_attribute_deletion"_EnumTests.test_attribute_deletion  s    	T^^ 	 	/0K01~. /~.
 /~." /.	 /.....s$   #B9C
#C9
C

C
C)c                     U R                  [        S5          " S SU R                  5      nS S S 5        g ! , (       d  f       g = f)Nzdo not use .super...__new__;c                   ,   ^  \ rS rSrU 4S jrSrSrU =r$ )/_EnumTests.test_bad_new_super.<locals>.BadSuperi  c                 &   > [         TU ]  X5      nU$ r  super__new__)r  r  r   r  s      r@   r  7_EnumTests.test_bad_new_super.<locals>.BadSuper.__new__  s    '/#5CJrB   rG   rT   )r`   ra   rb   rc   r  failedrg   __classcell__r  s   @r@   BadSuperr    s     rB   r  )r   	TypeErrorr=  )r   r  s     r@   test_bad_new_super_EnumTests.test_bad_new_super  s6    ##.4>> 	  s	   6
Ac                    U R                   nU R                  (       a  U R                  [        U5      S5        U R                  [	        U5      S5        U R                  [        U5      S5        U R                  U" S5      U R                  L 5        U R                  SU;   5        OQU R                  [        U5      S5        U R                  [	        U5      S5        U R                  [        U5      S5        U R                  [        U5      UR                  UR                  UR                  /5        U R                  U Vs/ s H  o"R                  PM     snU R                  5        U R                  U Vs/ s H  o"R                  PM     snU R                  5        U R                  U Vs/ s H  o"R                  PM     sn/ SQ5        [!        XR                  SS9 H  u  p4U R#                  X   U5        M     [!        XR                  SS9 H  u  p5U R#                  U" U5      U5        M     [%        U[&        5      (       a6  U R                  UR(                  U" S5      s=L =(       a    US	   L Os  5        g UR*                  [        L a6  U R                  UR(                  U" S
5      s=L =(       a    US	   L Os  5        g [%        U[,        5      (       a6  U R                  UR(                  U" S5      s=L =(       a    US	   L Os  5        g U R                  UR(                  U" U R                  S   5      s=L =(       a    US	   L Os  5        g s  snf s  snf s  snf )Nz<flag 'MainEnum'>r  r   z<enum 'MainEnum'>)zfirst is first!zsecond is first!zthird is first!Tstrictr;  r>  r~  r^   r)   )r?  r  r   reprr  r  r   r  r   r4  r:  r;  r   r  r  rp  zipassertIsr<  r
   r>  r  r   )r   TEmr   r   r  s         r@   test_basics_EnumTests.test_basics  s   ]]<<T"X':;SW&9:VBZ)<=OOBqETZZ/0OOAG$T"X':;SW&9:VBZ)<=bBHHbii#BC!#$A$

	 	"$%"Q"%	 	"$%"Q"%J	  JJt<LFMM"(F+ = [[>MFMM"U)V, ?b'""OOBGGr'{@@bj@A$OOBGGr#w<<"V*<=D!!OOBGGr!u::6
:;OOBGGr$++a.'9GGRZGH- % & &s   M9M/M c                      " S SU R                   5      nU R                  U5        U R                  U R                  5        U R                   H  nU R                  U5        M     g )Nc                       \ rS rSrSrg)+_EnumTests.test_bool_is_true.<locals>.Emptyi  rT   Nr   rT   rB   r@   Emptyr    r   rB   r  )r=  r   r?  )r   r  r   s      r@   test_bool_is_true_EnumTests.test_bool_is_true  sH    	DNN 	&mmFOOF# $rB   c                     U R                   nU R                  [        5         SU R                   l        S S S 5        g ! , (       d  f       g = f)Nzreally first)r?  r  r  r:  )r   r?  s     r@   test_changing_member_fails%_EnumTests.test_changing_member_fails  s1    ==~.#1DMM  /..s	   =
Ac                    ^  T R                   nT R                  UR                  U5        T R                  T R                  S   U;   5        [        T 5      [        [        4;  a  T R                  SU;   5        UR                  nT R                  X!5        T R                  [        S5      U5         " S S[        5      nT R                  UR                  U5        UR                  [        L aQ   " U 4S jST R                   5      nT R                  UR"                  U5        T R                  UR$                  U5        g  " U 4S jS	T R                   5      nT R                  UR"                  U5        T R                  UR$                  U5        g )
Nr   r4  nanc                   0    \ rS rSr\" 5       r\" 5       rSrg)._EnumTests.test_contains_tf.<locals>.OtherEnumi	  rT   N)r`   ra   rb   rc   r   onetworg   rT   rB   r@   	OtherEnumr  	  s    &C&CrB   r  c                   V   > \ rS rSr Y R                  S   r Y R                  S   rSrg)1_EnumTests.test_contains_tf.<locals>.NotEqualEnumi  r   rG   rT   Nr`   ra   rb   rc   r  thisthatrg   r  s   r@   NotEqualEnumr    #    ))!,))!,rB   r  c                   V   > \ rS rSr Y R                  S   r Y R                  S   rSrg)._EnumTests.test_contains_tf.<locals>.EqualEnumi  r   rG   rT   Nr  r  s   r@   	EqualEnumr    r  rB   r  )r?  assertInr4  r   rp  typeTestStrEnumClassTestStrEnumFunctionr   r>  assertNotInfloatr   r  r  objectr=  r  r  )r   r?  valr  r  r  s   `     r@   test_contains_tf_EnumTests.test_contains_tf  s*   ==hnnh/A(23:.0CDDW01mmc$ux0	 	 	1!!V+-t~~ - \..9\..9-DNN - MM)..(3MM)..(3rB   c                    U R                   n " S S[        5      nU R                  UR                  U5        U R                  UR                  U5        U R                  UR
                  U5        U R                  UR                  U5        U R                  UR                  U5        U R                  UR
                  U5        U R                  UR                  U5        U R                  UR                  U5        U R                  UR
                  U5        U R                  UR                  U5        U R                  UR                  U5        U R                  UR
                  U5        g )Nc                        \ rS rSrSrSrSrSrg)K_EnumTests.test_contains_same_name_diff_enum_diff_values.<locals>.OtherEnumi   brandnewrp  rT   Nr`   ra   rb   rc   r4  r:  r;  rg   rT   rB   r@   r  r     s    EFErB   r  )r?  r   r  r4  r:  r;  r  )r   r?  r  s      r@   -test_contains_same_name_diff_enum_diff_values8_EnumTests.test_contains_same_name_diff_enum_diff_values  s   ==	 	
 	hnnh/hoox0hnnh/3)43iooy1i&&	2iooy1(3))84(3rB   c                     U R                   nU R                  [        [        U5      5      [        [	        U5      5      5        g r  )r?  r   setdirenum_dirr   r  s     r@   test_dir_on_class_EnumTests.test_dir_on_class3  s,    ]]SWs8B<'89rB   c                     U R                   nU R                  [        [        UR                  5      5      [        [        UR                  5      5      5        g r  )r?  r   r  r  r4  
member_dirr  s     r@   test_dir_on_item_EnumTests.test_dir_on_item7  s6    ]]S]+SBHH1E-FGrB   c                      " S SU R                   5      nU R                  S[        U5      ;  5        U R                  S[        UR                  5      ;   5        g )Nc                   6    \ rS rSr\" 5       r\" 5       rS rSrg)5_EnumTests.test_dir_with_added_behavior.<locals>.Testi<  c                      SU R                   -  $ )NzWowser! I'm %s!r3  r  s    r@   wowser<_EnumTests.test_dir_with_added_behavior.<locals>.Test.wowser?  s    )DII56rB   rT   N)	r`   ra   rb   rc   r   r  theser  rg   rT   rB   r@   Testr
  <  s    6DFE7rB   r  r  )r=  r   r  r  )r   r  s     r@   test_dir_with_added_behavior'_EnumTests.test_dir_with_added_behavior;  sB    	74>> 	7
 	D	12C		N23rB   c                      " S SU R                   5      n " S SU5      nU R                  S[        U5      ;  5        U R                  S[        UR                  5      ;   5        g )Nc                       \ rS rSrS rSrg)D_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SuperEnumiF  c                     g)Nzdid you see me?rT   r  s    r@   	invisibleN_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SuperEnum.invisibleG  s    (rB   rT   N)r`   ra   rb   rc   r  rg   rT   rB   r@   	SuperEnumr  F  s    )rB   r  c                   "    \ rS rSr\" 5       rSrg)B_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SubEnumiI  rT   N)r`   ra   rb   rc   r   samplerg   rT   rB   r@   SubEnumr  I  s	    VFrB   r  r  r=  r   r  r  r   r  r  s      r@   &test_dir_on_sub_with_behavior_on_super1_EnumTests.test_dir_on_sub_with_behavior_on_superD  sM    	) 	)	i 	3w<78s7>>'::;rB   c                   ^   " U 4S jST R                   5      n " U 4S jSU5      nT R                  S[        U5      ;  5        T R                  S[        UR                  5      ;   [        UR                  5      5        g )Nc                   "   > \ rS rSrU 4S jrSrg)\_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SuperEnumiP  c                 .  > TR                   R                  R                  nTR                   R                  [        L a	  U" U 5      nO+[	        US   [
        5      (       a  US   u  nOUnU" U /UQ76 n[        U5      S:X  a  US   OUUl        SUl        U$ )Nr   rG   ztest description)	r=  r  r  r  rH   tuplerJ   _value_description)r  r  kwdsr  r   create_valuer   s         r@   r  d_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SuperEnum.__new__Q  s    nn22::>>//69c(C!%(E22(-a',c1L1C*-e*/eAhu"4
rB   rT   Nr`   ra   rb   rc   r  rg   r  s   r@   r  r#  P  s     rB   r  c                   6   > \ rS rSr Y R                  S   rSrg)Z_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SubEnumi^  rG   rT   N)r`   ra   rb   rc   r  r  rg   r  s   r@   r  r-  ^  s    ''*FrB   r  r'  r  r  s   `  r@   >test_dir_on_sub_with_behavior_including_instance_dict_on_superI_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_superN  sY    	 		+i 	+S\9:W^^)<<c'..>QRrB   c                     U R                  [        S5         U R                  S5        S S S 5        g ! , (       d  f       g = f)Nz#<.... 'NewBaseEnum'> has no membersr   )r   r  rf  r  s    r@   test_empty_enum_has_no_values(_EnumTests.test_empty_enum_has_no_valuesc  s.    ##I/TUQ VUUs	   2
A c                 t    U R                   nU R                  U" UR                  5      UR                  5        g r  )r?  r  r4  )r   Mains     r@   test_enum_in_enum_out _EnumTests.test_enum_in_enum_outg  s&    }}d4::&

3rB   c                     U R                   nU R                  nU R                  [        UR                  S   5      [
        L 5        U R                  [        UR                  S   5      [
        L 5        g )Nrq  )rt  r{  r   r  __dict__rz  )r   lazybusys      r@   test_gnv_is_static_EnumTests.test_gnv_is_statick  sT    ||||T]]+BCDTUT]]+BCDTUrB   c                     U R                   n0 nSX!R                  '   SX!R                  '   SX!R                  '   U R	                  X!R                     S5        g )N122503150704)r?  r4  r:  r;  r   )r   r?  mappings      r@   	test_hash_EnumTests.test_hashq  sK    =="(#) "(16:rB   c                    U R                  [        5          " S SU R                  5      nS S S 5        U R                  [        5          " S SU R                  5      nS S S 5        U R                  [        5          " S SU R                  5      nS S S 5        U R                  [        5          " S SU R                  5      nS S S 5        U R                  [        5          " S SU R                  5      nS S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nu= f! , (       d  f       g = f)Nc                       \ rS rSrSrSrg),_EnumTests.test_invalid_names.<locals>.Wrongi{  	   rT   N)r`   ra   rb   rc   mrorg   rT   rB   r@   WrongrF  {      rB   rI  c                       \ rS rSrSrSrg)rF  i~     rT   N)r`   ra   rb   rc   _create_rg   rT   rB   r@   rI  rF  ~  s    rB   c                       \ rS rSrSrSrg)rF  i  rG  rT   N)r`   ra   rb   rc   _get_mixins_rg   rT   rB   r@   rI  rF    s     rB   c                       \ rS rSrSrSrg)rF  i  rG   rT   N)r`   ra   rb   rc   
_find_new_rg   rT   rB   r@   rI  rF        
rB   c                       \ rS rSrSrSrg)rF  i  rG  rT   N)r`   ra   rb   rc   
_any_name_rg   rT   rB   r@   rI  rF    rR  rB   )r  r   r=  r   rI  s     r@   test_invalid_names_EnumTests.test_invalid_namesy  s    z*  + z*  + z*! ! + z*  + z*  +* +* +* +* +* +*s;   D	D<D#/D4"E
D
D #
D14
E
Ec                    ^   " U 4S jST R                   5      nT R                  [        UR                  5      S5        g)z=check that setting __str__ to object's is not reset to Enum'sc                   T   > \ rS rSr Y R                  S   rS r\R                  rSr	g)4_EnumTests.test_object_str_override.<locals>.Generici  r)   c                 "    U R                   < S3$ )Nz.test_name_r  s    r@   __repr__=_EnumTests.test_object_str_override.<locals>.Generic.__repr__  s    $(KK22rB   rT   N)
r`   ra   rb   rc   r  itemr^  r  rE  rg   r  s   r@   GenericrZ    s!    %%a(D3nnGrB   ra  z	item.testN)r=  r   r  r`  r   ra  s   ` r@   test_object_str_override#_EnumTests.test_object_str_override  s.    	%dnn 	%
 	W\\*K8rB   c                 8   U R                   nU R                  [        UR                  5      UR                  R                  R                  5       5        U R                  [        UR                  5      UR                  R                  R                  5       5        g r  )rH  r   r  r4  r   rD  r  )r   NSs     r@   test_overridden_str_EnumTests.test_overridden_str  s^    __RXX(;(;(=>)288==+>+>+@ArB   c                 L   U R                   nU R                  [        UR                  5      UR                  R                  R                  5       5        U R                  [        UR                  5      SR                  [        UR                  R                  5      5      5        g rY  )	r_  r   r  r4  r   rV  r  r4   r\  )r   NSFs     r@   test_overridden_str_format%_EnumTests.test_overridden_str_format  se    ##SYY)=)=)?@		*BGGHSYY^^4L,MNrB   c                 L   U R                   nU R                  [        UR                  5      UR                  R                  R                  5       5        U R                  [        UR                  5      SR                  [        UR                  R                  5      5      5        g rY  )	ri  r   r  r4  r   rV  r  r4   r\  )r   NSEs     r@   $test_overridden_str_format_inherited/_EnumTests.test_overridden_str_format_inherited  sc    ooSYY)=)=)?@		*BGGHSYY^^4L,MNrB   c                 b   U R                  SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        U R                  nU R                   [        L a  / SQn[        SR                  5       U5       H  u  pEX   nU R                  UR                  U[        U5      5        U R                  UR                  U5        UR                  [        La,  [        XR                  5      (       a  U R                  Xe5        OU R!                  Xe5        U R#                  Xa5        U R%                  ['        U5      U5        U R%                  Xa" U5      5        M     g )N	MinorEnumjune july augustr^   junejulyaugustr=  r   r   rJ   ru  rv  rw  rp  r
   r  splitr  r   r  r  r<  assertNotEqualr  r  r  r   rr  lstrp  monthavrN   s          r@   !test_programmatic_function_string,_EnumTests.test_programmatic_function_string  sM   NN;0BC	9oS3y>2YI61A1AB	 >>W$-F/557@IE AQWWb$y/:QVVU+&&f4IOfOf9g9g  '##A*MM!'MM$q'9-MM!Yr]+ ArB   c                 R   U R                  S/ SQ5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        U R                  nU R                   [        L a  / SQn[        SR                  5       U5       H  u  pEX   nU R                  UR                  U5        U R                  UR                  U5        UR                  [        La,  [        XR                  5      (       a  U R                  Xe5        OU R!                  Xe5        U R#                  Xa5        U R%                  ['        U5      U5        U R%                  Xa" U5      5        M     g )Nrr  rt  r^   rs  rx  r{  s          r@   &test_programmatic_function_string_list1_EnumTests.test_programmatic_function_string_list  sG   NN;0JK	9oS3y>2YI61A1AB	 >>W$-F/557@IE AQWWb)QVVU+&&f4IOfOf9g9g  '##A*MM!'MM$q'9-MM!Yr]+ ArB   c                 |   U R                  SSU R                  S   4SU R                  S   4SU R                  S   445      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        U R                  UR
                  UR                  UR                  /U5        [        S	R                  5       U R                  5       H  u  p4X   nU R                  UR                  U5        U R                  UR                  U5        UR                  [        La,  [        XR                  5      (       a  U R                  XT5        OU R!                  XT5        U R#                  XQ5        U R%                  ['        U5      U5        U R%                  XQ" U5      5        M     g 
Nrr  ru  r   rv  rG   rw  r)   r^   rs  )r=  r  r   r   rJ   ru  rv  rw  r  ry  rp  r  r   r  r  r<  rz  r  r  r  r   rr  r|  r}  r~  rN   s         r@   #test_programmatic_function_iterable._EnumTests.test_programmatic_function_iterable  sp   NN$,,Q/064;M;Ma;P2QT\^b^p^pqr^sStu	 9oS3y>2YI61A1AB	 /557EIE AQWWb)QVVU+&&f4IOfOf9g9g  '##A*MM!'MM$q'9-MM!Yr]+ FrB   c           
         U R                  S[        SU R                  S   4SU R                  S   4SU R                  S   445      5      n[        U5      nU R	                  [        U5      [        U5      5        U R	                  [        U5      SU5        U R	                  UR                  UR                  UR                  /U5        [        S	R                  5       U R                  5       H  u  p4X   nUR                  [        La,  [        XR                  5      (       a  U R	                  XT5        OU R                  XT5        U R!                  XQ5        U R#                  [%        U5      U5        U R#                  XQ" U5      5        M     g r  )r=  r   r  r   r   rJ   ru  rv  rw  r  ry  rp  r  r  r<  rz  r  r  r  r  s         r@   $test_programmatic_function_from_dict/_EnumTests.test_programmatic_function_from_dict  sX   NNfd&8&8&;<vtGYGYZ[G\>]`hjnj|j|}~j  `A  B  C	 9oS3y>2YI61A1AB	 /557EIE A&&f4IOfOf9g9g  '##A*MM!'MM$q'9-MM!Yr]+ FrB   c           	         U R                   nU R                  (       al  U R                  [        U" S5      5      S5        U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O}[        U[        5      (       a&  U R                  [        UR                  5      S5        OBU R                  [        UR                  5      SU R                  S   < S3UR                  5        [        U R                  U R                  US	S
9 H>  u  p#nU R                  [        U5      SUR                  < SUR                  < S35        M@     g )Nr   z<MainEnum: 0>z<MainEnum.dupe: 3>z<MainEnum.first|third: 5>z<MainEnum.third: 'third'>z<MainEnum.third: r)   >Tr  z
<MainEnum.z: )r?  r  r   r  r>  r  r<  r
   rp  _value_repr_r  r  r   r  r   r  r   r  r   s        r@   	test_repr_EnumTests.test_repr   s    ]]<<T"Q%[/:T"''],@AT$**-/JKG$$T"''],GHT"'']dkkRSn,WY[YhYhi#&tzz4;;4#PDT&\&++v||+\] $QrB   c                 x     " S SU R                   5      nU R                  [        UR                  5      S5        g )Nc                   D    \ rS rSr\" 5       r\" 5       r\" 5       rS rSr	g)._EnumTests.test_repr_override.<locals>.Generici  c                      SU R                   -  $ )Nz!don't you just love shades of %s?r3  r  s    r@   r^  7_EnumTests.test_repr_override.<locals>.Generic.__repr__  s    :TYYFFrB   rT   N)
r`   ra   rb   rc   r   r4  r:  r;  r^  rg   rT   rB   r@   ra  r    s    FEVFFEGrB   ra  z$don't you just love shades of third?)r=  r   r  r;  rb  s     r@   test_repr_override_EnumTests.test_repr_override  s3    	Gdnn 	G 	W]]#6	rB   c                      " S SU R                   5      n " S SU5      nU R                  [        UR                  5      S5        g )Nc                       \ rS rSrS rSrg)._EnumTests.test_inherited_repr.<locals>.MyEnumi  c                      SU R                   -  $ )NzMy name is %s.r3  r  s    r@   r^  7_EnumTests.test_inherited_repr.<locals>.MyEnum.__repr__  s    '$))33rB   rT   Nr`   ra   rb   rc   r^  rg   rT   rB   r@   r   r        4rB   r   c                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg)1_EnumTests.test_inherited_repr.<locals>.MySubEnumi  rT   N)	r`   ra   rb   rc   r   r  r  theotherrg   rT   rB   r@   	MySubEnumr    s    6D6DvHrB   r  zMy name is that.)r=  r   r  r  )r   r   r  s      r@   test_inherited_repr_EnumTests.test_inherited_repr  s:    	4T^^ 	4	 	 	inn-/ABrB   c                      " S S[         S9n " S SU[        5      nU R                  [        UR                  5      S5        g )Nc                       \ rS rSrSrg)C_EnumTests.test_multiple_superclasses_repr.<locals>._EnumSuperClassi$  rT   Nr   rT   rB   r@   _EnumSuperClassr  $  r   rB   r  	metaclassc                       \ rS rSrSrSrg)5_EnumTests.test_multiple_superclasses_repr.<locals>.Ei&  rG   rT   N)r`   ra   rb   rc   Arg   rT   rB   r@   Er  &      ArB   r  z<E.A: 1>)r   r   r   r  r  )r   r  r  s      r@   test_multiple_superclasses_repr*_EnumTests.test_multiple_superclasses_repr#  s4    	 		 	accJ/rB   c                     U R                  [        [        U R                  5      5      U R                  R                  U R                  R
                  U R                  R                  /5        g r  )r   r   r\  r?  r;  r:  r4  r  s    r@   test_reversed_iteration_order(_EnumTests.test_reversed_iteration_order*  sI    Xdmm,-$$dmm&:&:DMM<O<OP	rB   )r{  rt  r?  rf  rQ  rH  r_  ri  r  r  r  r  rp  )(r`   ra   rb   rc   r  rp  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r.  r1  r5  r;  rB  rV  rc  rg  rk  ro  r  r  r  r  r  r  r  r  r  rg   rT   rB   r@   r+  r+    s     FHQTIH#(	$IL$2
4<4,:H4<S* 4V;"9B
O
O
,0,0,0,,^
C0rB   r+  c                   ,    \ rS rSrS rS rS rS rSrg)_PlainOutputTestsi0  c                    U R                   nU R                  (       al  U R                  [        U" S5      5      S5        U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O%U R                  [        UR                  5      S5        [        U R                  U R                  USS9 H/  u  p#nU R                  [        U5      SUR                  < 35        M1     g )	Nr   zMainEnum(0)MainEnum.dupeMainEnum.first|thirdMainEnum.thirdTr  	MainEnum.
r?  r  r   r  r>  r  r  r  rp  r   r  s        r@   test_str_PlainOutputTests.test_str2  s    ]]<<SAZ7S\?;S_.DES\+;<#&tzz4;;4#PDS[6;;*IJ $QrB   c                    U R                   nU R                  (       aK  U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O%U R                  [        UR                  5      S5        [        U R                  U R                  USS9 H/  u  p#nU R                  [        U5      SUR                  < 35        M1     g Nr  r  r  Tr  r  
r?  r  r   r  r>  r  r  r  rp  r   r  s        r@   test_format_PlainOutputTests.test_format=      ]]<<VBGG_o>VDJJ/1GHVBGG_.>?#&tzz4;;4#PDVF^fkk-LM $QrB   c                     U R                   nU R                  [        UR                  5      SUR                  < SUR                  < 35        U R                  [        UR                  5      S5        g )NNewFormatEnum.first FIRST)rQ  r   r  r4  rE  r  r   NFs     r@   test_overridden_format(_PlainOutputTests.test_overridden_formatG  sQ    RXX(="**VXV^V^?_`)73rB   c                    U R                   nU R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        g N{}{:}{:20}{:^20}{:>20}{:<20}{:5.2})r?  r  r:  r  s     r@   test_format_specs#_PlainOutputTests.test_format_specsL  s    ]]tRYY/ubii0w		2x3x3x3x3rB   rT   N	r`   ra   rb   rc   r  r  r  r  rg   rT   rB   r@   r  r  0  s    	KN4
4rB   r  c                   ,    \ rS rSrS rS rS rS rSrg)_MixedOutputTestsiW  c                    U R                   nU R                  (       aK  U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O%U R                  [        UR                  5      S5        [        U R                  U R                  USS9 H/  u  p#nU R                  [        U5      SUR                  < 35        M1     g r  r  r  s        r@   r  _MixedOutputTests.test_strY  s    ]]<<S\?;S_.DES\+;<#&tzz4;;4#PDS[6;;*IJ $QrB   c                    U R                   nU R                  (       aK  U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O%U R                  [        UR                  5      S5        [        U R                  U R                  USS9 H/  u  p#nU R                  [        U5      SUR                  < 35        M1     g r  r  r  s        r@   r  _MixedOutputTests.test_formatc  r  rB   c                     U R                   nU R                  [        UR                  5      S5        U R                  [	        UR                  5      S5        g )Nr  r  )rQ  r   r  r4  r  r  s     r@   r  (_MixedOutputTests.test_overridden_formatm  s?    RXX(=>)73rB   c                    U R                   nU R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        g r  )r?  r  r4  r  s     r@   r  #_MixedOutputTests.test_format_specsr  s    ]]tRXX.ubhh/w1x2x2x2x2rB   rT   Nr  rT   rB   r@   r  r  W  s    KN4
3rB   r  c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
_MinimalOutputTestsi}  c                    U R                   nU R                  (       aK  U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O;U R                  [        UR                  5      [        U R                  S   5      5        [        U R                  U R                  USS9 H*  u  p#nU R                  [        U5      [        U5      5        M,     g Nr~  5r)   Tr  )	r?  r  r   r  r>  r  rp  r  r  r  s        r@   r  _MinimalOutputTests.test_str  s    ]]<<S\3/S_c2S\3t{{1~+>?#&tzz4;;4#PDS[#e*5 $QrB   c                    U R                   nU R                  (       aK  U R                  [        UR                  5      S5        U R                  [        U R
                  5      S5        O;U R                  [        UR                  5      [        U R                  S   5      5        [        U R                  U R                  USS9 H*  u  p#nU R                  [        U5      [        U5      5        M,     g r  )	r?  r  r   r  r>  r  rp  r  r  r  s        r@   r  _MinimalOutputTests.test_format  s    ]]<<VBGG_c2VDJJ/5VBGG_fT[[^.DE#&tzz4;;4#PDVF^VE]; $QrB   c                     U R                   nU R                  [        UR                  5      [        U R                  S   5      5        U R                  [        UR                  5      S5        g )Nr   r  )rQ  r   r  r4  rp  r  r  s     r@   r  *_MinimalOutputTests.test_overridden_format  sK    RXXDKKN(;<)73rB   c                 <   U R                   nU R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        U R                  SUR                  5        UR                  [        L aU  U R                  SUR                  5        U R                  SUR                  5        U R                  S	UR                  5        g g )
Nr  r  r  r  r  r  z{:n}r  z{:f})r?  r  r;  r  r  r  s     r@   r  %_MinimalOutputTests.test_format_specs  s    ]]  rxx0  1  "((3  2884  2884  2884u$$$VRXX6$$Xrxx8$$VRXX6 %rB   c                     U R                   n[        R                  " U5      nU R                  X!5        U R                  X!5        [        R                  " U5      nU R                  X15        U R                  X15        g r  )r?  copyr   r  deepcopyr   r  copieddeeps       r@   	test_copy_MinimalOutputTests.test_copy  sZ    ]]2$f!}}R "drB   c                    U R                   n[        R                  " UR                  5      nU R                  X!R                  5        [        R                  " UR                  5      nU R                  X1R                  5        g r  )r?  r  r4  r  r  r  s       r@   test_copy_member$_MinimalOutputTests.test_copy_member  sO    ]]288$fhh'}}RXX&dHH%rB   rT   N)r`   ra   rb   rc   r  r  r  r  r  r  rg   rT   rB   r@   r  r  }  s     6<4
7 &rB   r  c                   &    \ rS rSrS rS rS rSrg)
_FlagTestsi  c                     U R                  [        S5       nU R                  S5        S S S 5        U R                  WR                  R
                  S 5        g ! , (       d  f       N5= f)Nz'RED' is not a valid RED)r   r   r?  r  r   __context__)r   ctxs     r@   *test_default_missing_with_wrong_type_value5_FlagTests.test_default_missing_with_wrong_type_value  sQ    ### MM% 	
 	cmm//6 s   A
A&c                 *    " S SU R                   5      nUu  p#UR                  nU R                  U) U5        U R                  U) U5        U R                  X#-  ) U" S5      5        U R                  U) U" S5      5        U R                  U" S5      ) X#-  5         " S SU R                   5      nUu  pgnUR                  n	U R                  U) Xx-  5        U R                  U) Xh-  5        U R                  U) Xg-  5        U R                  Xg-  ) U5        U R                  Xh-  ) U5        U R                  Xx-  ) U5        U R                  Xg-  U-  ) U" S5      5        U R                  U	) U" S5      5        U R                  U" S5      ) Xg-  U-  5        g )Nc                        \ rS rSrSrSrSrSrg)<_FlagTests.test_closed_invert_expectations.<locals>.ClosedABi  rG   r)   r^   rT   Nr`   ra   rb   rc   r  BMASKrg   rT   rB   r@   ClosedABr    s    AADrB   r	  r   c                   $    \ rS rSrSrSrSrSrSrg)=_FlagTests.test_closed_invert_expectations.<locals>.ClosedXYZi  rr   r)   rG   r   rT   N	r`   ra   rb   rc   XYZr  rg   rT   rB   r@   	ClosedXYZr    s    AAADrB   r  )r=  r  r  )
r   r	  r  r  AB_MASKr  r  r  r  XYZ_MASKs
             r@   test_closed_invert_expectations*_FlagTests.test_closed_invert_expectations  s\   	t~~ 	 --qb!qb!fhqk*wh,x{lQS*	 	
 a>>qb!#qb!#qb!#fa fa fa Ah	!-xi1.y|mac!e-rB   c                 l    " S SU R                   5      nUu  p#UR                  nUR                  [        [        4;   a  U R                  U) U" S5      5        U R                  U) U" S5      5        U R                  X#-  ) U" S5      5        U R                  U) U" S5      5        U R                  U" S5      ) U5        OuU R                  U) U5        U R                  U) U5        U R                  X#-  ) U" S5      5        U R                  U) U" S5      5        U R                  U" S5      ) X#-  5         " S SU R                   5      nUu  pgnUR                  n	UR                  [        [        4;   a  U R                  U) U" S	5      5        U R                  U) U" S
5      5        U R                  U) U" S5      5        U R                  Xg-  ) U" S5      5        U R                  Xh-  ) U" S5      5        U R                  Xx-  ) U" S5      5        U R                  Xg-  U-  ) U" S5      5        U R                  U	) U" S5      5        U R                  U" S5      ) U	5        g U R                  U) Xx-  5        U R                  U) Xh-  5        U R                  U) Xg-  5        U R                  Xg-  ) U5        U R                  Xh-  ) U5        U R                  Xx-  ) U5        U R                  Xg-  U-  ) U" S5      5        U R                  U	) U" S5      5        U R                  U" S5      ) Xg-  U-  5        g )Nc                        \ rS rSrSrSrSrSrg)8_FlagTests.test_open_invert_expectations.<locals>.OpenABi  rG   r)      rT   Nr  rT   rB   r@   OpenABr    s    AADrB   r           r   c                   $    \ rS rSrSrSrSrSrSrg)9_FlagTests.test_open_invert_expectations.<locals>.OpenXYZi  rr   r)   rG      rT   Nr  rT   rB   r@   OpenXYZr    s    AAADrB   r                        )r=  r  
_boundary_r   r   r  r   )
r   r  r  r  r  r   r  r  r  r  s
             r@   test_open_invert_expectations(_FlagTests.test_open_invert_expectations  s   	T^^ 	 ++-MM1"fSk*MM1"fSk*MMAC&&+.MM7(F1I.MM6!9*g.MM1"a MM1"a MMAC&&),MM7(F1I.MM6!9*qs,	dnn 	
 a<<%.MM1"gbk*MM1"gbk*MM1"gbk*MMAC&'"+.MMAC&'"+.MMAC&'"+.MMACE(GBK0MM8)WQZ0OOWQZK2MM1"ac"MM1"ac"MM1"ac"MMAC&!$MMAC&!$MMAC&!$MMACE(GAJ/MM8)WQZ0OOWQZK!#a%1rB   rT   N)r`   ra   rb   rc   r  r  r)  rg   rT   rB   r@   r  r    s    7.@02rB   r  c                       \ rS rSr\rSrg)TestPlainEnumClassi  rT   Nr`   ra   rb   rc   r   r=  rg   rT   rB   r@   r,  r,        IrB   r,  c                       \ rS rSr\rSrg)TestPlainEnumFunctioni  rT   Nr-  rT   rB   r@   r0  r0    r.  rB   r0  c                       \ rS rSr\rS rSrg)TestPlainFlagClassi  c                     " S S[         5      nU R                  UR                  R                  S5        U R	                  UR
                  R                  S 5        U R                  [        S5         UR                  UR
                  -    S S S 5        U R                  [        S5         UR
                  UR                  -    S S S 5        U R                  [        S5         UR                  UR
                  -    S S S 5        U R                  [        S5         UR
                  )   S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N]= f! , (       d  f       g = f)Nc                       \ rS rSrSrSrSrg)?TestPlainFlagClass.test_none_member.<locals>.FlagWithNoneMemberi  rG   NrT   )r`   ra   rb   rc   r  r  rg   rT   rB   r@   FlagWithNoneMemberr5    s    AArB   r6  rG   zA'FlagWithNoneMember.E' cannot be combined with other flags with |zA'FlagWithNoneMember.E' cannot be combined with other flags with &zB'FlagWithNoneMember.E' cannot be combined with other flags with \^z)'FlagWithNoneMember.E' cannot be inverted)r   r   r  r  r  r  r   r  )r   r6  s     r@   test_none_member#TestPlainFlagClass.test_none_member  s   	 	 	+--33Q7(**00$7##I/st  #5#7#77 u##I/st  #5#7#77 u##I/tu  #5#7#77 v##I/[\!!! ]\ utttuu\\s0   2D1*E"EE$1
D?
E
E!$
E2rT   N)r`   ra   rb   rc   r   r=  r7  rg   rT   rB   r@   r2  r2    s    I"rB   r2  c                       \ rS rSr\rSrg)TestPlainFlagFunctioni.  rT   N)r`   ra   rb   rc   r   r=  rg   rT   rB   r@   r:  r:  .  r.  rB   r:  c                       \ rS rSr\rS rSrg)TestIntEnumClassi2  c                      " S S[         5      nU R                  UR                  R                  S5        U R	                  UR                  R                  UR                  5        g )Nc                       \ rS rSrSrSrSrg)3TestIntEnumClass.test_shadowed_attr.<locals>.Numberi6  rG   r)   rT   N)r`   ra   rb   rc   divisor	numeratorrg   rT   rB   r@   Numberr?  6  s    GIrB   rB  rG   r	   r   r@  rA  r  r   rB  s     r@   test_shadowed_attr#TestIntEnumClass.test_shadowed_attr5  sH    	W 	 	1115f&&..?rB   rT   Nr`   ra   rb   rc   r	   r=  rE  rg   rT   rB   r@   r<  r<  2  s    I@rB   r<  c                       \ rS rSr\rS rSrg)TestIntEnumFunctioni>  c                     [        SS5      nU R                  UR                  R                  S5        U R	                  UR                  R                  UR                  5        g )NrB  )r@  rA  rG   rC  rD  s     r@   rE  &TestIntEnumFunction.test_shadowed_attrA  sG    #;<1115f&&..?rB   rT   NrG  rT   rB   r@   rI  rI  >  s    I@rB   rI  c                       \ rS rSr\rS rSrg)r  iH  c                 *    " S S[         5      nU R                  UR                  R                  5       S5        U R                  UR                  R                  5       S5        U R	                  UR                  R                  UR                  5        g )Nc                       \ rS rSrSrSrSrg)1TestStrEnumClass.test_shadowed_attr.<locals>.BookiL  authorrV  rT   N)r`   ra   rb   rc   rP  rV  rg   rT   rB   r@   BookrO  L  s    FErB   rQ  AuthorTitler
   r   rP  rV  r  r   rQ  s     r@   rE  #TestStrEnumClass.test_shadowed_attrK  sf    	7 	 	**,h7))+W5djj''5rB   rT   Nr`   ra   rb   rc   r
   r=  rE  rg   rT   rB   r@   r  r  H  s    I6rB   r  c                       \ rS rSr\rS rSrg)r  iU  c                 $   [        SS5      nU R                  UR                  R                  5       S5        U R                  UR                  R                  5       S5        U R	                  UR                  R                  UR                  5        g )NrQ  )rP  rV  rR  rS  rT  rU  s     r@   rE  &TestStrEnumFunction.test_shadowed_attrX  se    v23**,h7))+W5djj''5rB   rT   NrW  rT   rB   r@   r  r  U  s    I6rB   r  c                       \ rS rSr\rSrg)TestIntFlagClassi`  rT   Nr`   ra   rb   rc   r   r=  rg   rT   rB   r@   r\  r\  `      IrB   r\  c                       \ rS rSr\rSrg)TestIntFlagFunctionid  rT   Nr]  rT   rB   r@   r`  r`  d  r^  rB   r`  c                   ,    \ rS rSr " S S\\5      rSrg)TestMixedIntClassih  c                       \ rS rSrSrg)TestMixedIntClass.enum_typeii  rT   Nr   rT   rB   r@   r=  rd  i      rB   r=  rT   N)r`   ra   rb   rc   intr   r=  rg   rT   rB   r@   rb  rb  h      $C$rB   rb  c                   "    \ rS rSr\" S\S9rSrg)TestMixedIntFunctionil  r=  r  rT   N)r`   ra   rb   rc   r   rf  r=  rg   rT   rB   r@   ri  ri  l      [s+IrB   ri  c                   ,    \ rS rSr " S S\\5      rSrg)TestMixedStrClassip  c                       \ rS rSrSrg)TestMixedStrClass.enum_typeiq  rT   Nr   rT   rB   r@   r=  ro  q  re  rB   r=  rT   N)r`   ra   rb   rc   r  r   r=  rg   rT   rB   r@   rm  rm  p  rg  rB   rm  c                   "    \ rS rSr\" S\S9rSrg)TestMixedStrFunctionit  r=  rj  rT   N)r`   ra   rb   rc   r   r  r=  rg   rT   rB   r@   rq  rq  t  rk  rB   rq  c                   ,    \ rS rSr " S S\\5      rSrg)TestMixedIntFlagClassix  c                       \ rS rSrSrg)TestMixedIntFlagClass.enum_typeiy  rT   Nr   rT   rB   r@   r=  ru  y  re  rB   r=  rT   N)r`   ra   rb   rc   rf  r   r=  rg   rT   rB   r@   rs  rs  x  rg  rB   rs  c                   "    \ rS rSr\" S\S9rSrg)TestMixedIntFlagFunctioni|  r=  rj  rT   N)r`   ra   rb   rc   r   rf  r=  rg   rT   rB   r@   rw  rw  |  rk  rB   rw  c                   n    \ rS rSr\" SSS5      \" SSS5      \" SS	S
5      /r/ SQr " S S\\5      rSr	g)TestMixedDateClassi       r$    r^        rL  r!  )rz  r{  r$  )r|  r^   r}  )r~  rL  r!  c                   $    \ rS rSr\S 5       rSrg)TestMixedDateClass.enum_typei  c                     / SQnXB   $ Nr  rT   r   rn  countlast_valuesrp  s        r@   rq  2TestMixedDateClass.enum_type._generate_next_value_  s    DF= rB   rT   Nry  rT   rB   r@   r=  r    s    		! 
	!rB   r=  rT   N)
r`   ra   rb   rc   r   rp  r  r   r=  rg   rT   rB   r@   ry  ry    s<    4R $tQ"3T$B5GHFCM!D$ !rB   ry  c                   p    \ rS rSr\" SSS5      \" SSS5      \" SS	S
5      /r/ SQrS r\" SS\0\S9r	Sr
g)TestMixedDateFunctioni  rz  r{  r$  r|  r^   r}  r~  rL  r!  r  c                     / SQnXB   $ r  rT   r  s        r@   rq  +TestMixedDateFunction._generate_next_value_  s    @}rB   r=  rq  rj  rT   N)r`   ra   rb   rc   r   rp  r  rq  r   r=  rg   rT   rB   r@   r  r    sK    4R $tQ"3T$B5GHFCM [#:;P"QX\]IrB   r  c                   n    \ rS rSr\" SSS5      \" SSS5      \" SSS5      /r/ S	Qr " S
 S\\5      rSr	g)TestMinimalDateClassi    r{  rG     r)   r"    )r  r{  rG   )r  r)   r"  )r  rG   rG   c                       \ rS rSrS rSrg)TestMinimalDateClass.enum_typei  c                     / SQnXB   $ Nr  rT   r  s        r@   rq  4TestMinimalDateClass.enum_type._generate_next_value_  s    AF= rB   rT   Nrs  rT   rB   r@   r=  r    s    	!rB   r=  rT   N)
r`   ra   rb   rc   r   rp  r  r   r=  rg   rT   rB   r@   r  r    s<    4QdAr!2Dq!4DEF@M!D( !rB   r  c                   z    \ rS rSr\" SSS5      \" SSS5      \" SSS5      /r/ S	Qr\S
 5       r\	" SS\0\S9r
Srg)TestMinimalDateFunctioni  r  r{  rG   r  r)   r"  r  r  c                     / SQnXB   $ r  rT   r  s        r@   rq  -TestMinimalDateFunction._generate_next_value_  s    =}rB   r=  rq  rj  rT   N)r`   ra   rb   rc   r   rp  r  rz  rq  r   r=  rg   rT   rB   r@   r  r    sX    4QdAr!2Dq!4DEF@M  '>?T&U\`aIrB   r  c                   4    \ rS rSr/ SQr " S S\\5      rSrg)TestMixedFloatClassi  g?g@gffffff
@c                       \ rS rSrS rSrg)TestMixedFloatClass.enum_typei  c                     / SQnXB   $ Nr  rT   r  s        r@   rq  3TestMixedFloatClass.enum_type._generate_next_value_      $F= rB   rT   Nrs  rT   rB   r@   r=  r        	!rB   r=  rT   N)	r`   ra   rb   rc   rp  r  r   r=  rg   rT   rB   r@   r  r    s    F!E4 !rB   r  c                   6    \ rS rSr/ SQrS r\" SS\0\S9rSr	g)	TestMixedFloatFunctioni  r  c                     / SQnXB   $ r  rT   r  s        r@   rq  ,TestMixedFloatFunction._generate_next_value_       }rB   r=  rq  rj  rT   N)
r`   ra   rb   rc   rp  rq  r   r  r=  rg   rT   rB   r@   r  r    s$    F [#:;P"QX]^IrB   r  c                   4    \ rS rSr/ SQr " S S\\5      rSrg)TestMinimalFloatClassi  g@g      @gffffff@c                       \ rS rSrS rSrg)TestMinimalFloatClass.enum_typei  c                     / SQnXB   $ Nr  rT   r  s        r@   rq  5TestMinimalFloatClass.enum_type._generate_next_value_  r  rB   rT   Nrs  rT   rB   r@   r=  r    r  rB   r=  rT   N)	r`   ra   rb   rc   rp  r  r   r=  rg   rT   rB   r@   r  r    s    F!E8 !rB   r  c                   6    \ rS rSr/ SQrS r\" SS\0\S9rSr	g)	TestMinimalFloatFunctioni  r  c                     / SQnXB   $ r  rT   r  s        r@   rq  .TestMinimalFloatFunction._generate_next_value_  r  rB   r=  rq  rj  rT   N)
r`   ra   rb   rc   rp  rq  r   r  r=  rg   rT   rB   r@   r  r    s$    F '>?T&U\abIrB   r  c                      \ rS rSrSrS rS rS r\R                  " S5      S 5       r
S r\" \5      S	 5       rS
 rS r\R"                  " \S:  S5      S 5       r\R"                  " \S:  S5      S 5       rS rS rS rS rS rS rS rS rS rS r\" \5      S 5       r S r!S r"S r#S r$S  r%S! r&S" r'\" \(5      S# 5       r)S$ r*S% r+\" \,5      S& 5       r-\" \(5      S' 5       r.\" \5      S( 5       r/\" \05      S) 5       r1\" \25      S* 5       r3S+ r4S, r5S- r6S. r7S/ r8S0 r9S1 r:\" \;5      S2 5       r<S3 r=S4 r>S5 r?S6 r@S7 rAS8 rBS9 rCS: rDS; rES< rFS= rGS> rHS? rIS@ rJSA rKSB rLSC rMSD rNSE rOSF rPSG rQSH rRSI rSSJ rTSK rUSL rVSM rWSN rXSO rYSP rZSQ r[SR r\SS r]ST r^SU r_SV r`SW raSX rbSY rcSZ rdS[ reS\ rfS] rgS^ rhS_ riS` rjSa rkSb rlSc rmSd rnSe roSf rpSg rqSh rrSi rsSj rtSk ruSl rvSm rwSn rxSo rySp rzSq r{Sr r|Ss r}St r~Su rSvrgw)xTestSpeciali  zE
various operations that are not attributable to every possible enum
c                      " S S[         5      nXl         " S S[        5      nX l         " S S[        [         5      nX0l        SSKJn   " S	 S
U[         5      nXPl        g )Nc                   $    \ rS rSrSrSrSrSrSrg)!TestSpecial.setUp.<locals>.Seasoni  rG   r)   r^   rr   rT   N)	r`   ra   rb   rc   r  r  r  WINTERrg   rT   rB   r@   r  r        FFFFrB   r  c                   (    \ rS rSrSrSrSrSrSrSr	g)	!TestSpecial.setUp.<locals>.Gradesi  r  rr   r^   r)   r   rT   N
r`   ra   rb   rc   r  r  CDFrg   rT   rB   r@   Gradesr        AAAAArB   r  c                   $    \ rS rSrSrSrSrSrSrg)&TestSpecial.setUp.<locals>.Directionali  eastwestnorthsouthrT   N)	r`   ra   rb   rc   EASTWESTNORTHSOUTHrg   rT   rB   r@   Directionalr    s    DDEErB   r  r   r   c                       \ rS rSrSrSrSrg)"TestSpecial.setUp.<locals>.Holidayi  )  rG   rG   )r  r^   r}  rT   N)r`   ra   rb   rc   NEW_YEARIDES_OF_MARCHrg   rT   rB   r@   Holidayr    s    !H'MrB   r  )	r   r  r	   r  r  r  datetimer   r  )r   r  r  r  r   r  s         r@   r  TestSpecial.setUp  sV    	T 	
 	W 	 	#t 	
 '!	(dD 	( rB   c                     " S S[         5      nU R                  UR                  5        U R                  UR                  5         " S S[         5      nU R                  UR                  5        U R	                  UR                  5         " S S[
        [         5      nU R                  UR                  5        U R	                  UR                  5        g )Nc                       \ rS rSrSrSrSrg)$TestSpecial.test_bool.<locals>.Logici   TFrT   Nr`   ra   rb   rc   truefalserg   rT   rB   r@   Logicr     s    DErB   r  c                   "    \ rS rSrSrSrS rSrg)(TestSpecial.test_bool.<locals>.RealLogici  TFc                 ,    [        U R                  5      $ r  )boolr&  r  s    r@   __bool__1TestSpecial.test_bool.<locals>.RealLogic.__bool__	      DLL))rB   rT   N)r`   ra   rb   rc   r  r  r  rg   rT   rB   r@   	RealLogicr    s    DE*rB   r  c                       \ rS rSrSrSrSrg)'TestSpecial.test_bool.<locals>.IntLogici  rG   r   rT   Nr  rT   rB   r@   IntLogicr        DErB   r  )r   r   r  r  r   rf  )r   r  r  r  s       r@   	test_boolTestSpecial.test_bool  s    	D 	 	

#$	* 	*
 		')	sD 	 	&(rB   c                 Z   U R                   nU R                  [        5         UR                  UR                  :    S S S 5        U R                  [        5         UR                  S:    S S S 5        U R                  UR                  S5         " S S[        5      nU R                  UR                  UR                  5        U R                  [        5         UR                  UR                  :    S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nrr   rG   c                        \ rS rSrSrSrSrSrg)*TestSpecial.test_comparisons.<locals>.Parti  rG   r)   r^   rT   N)r`   ra   rb   rc   r  CLIPBARRELrg   rT   rB   r@   Partr    s    FDFrB   r  )r  r  r  r  r  rz  r   r  )r   r  r  s      r@   test_comparisonsTestSpecial.test_comparisons  s    y)MMFMM) *y)MMA * 	FMM1-	4 	
 	FMM4;;7y)MMDII% *) *))) *)s#   C:DD:
D
D
D*z
to-do listc                     " S S[         5      n[        U5      nU R                  SU5        U R                  SU5        U R                  SU5        U R                  SU5         " S S[         5      n[        U5      nU R                  SU5        U R                  SU5        U R                  SU5        U R                  SU5        g )	Nc                       \ rS rSrSrg);TestSpecial.test_dir_with_custom_dunders.<locals>.PlainEnumi(  rT   Nr   rT   rB   r@   	PlainEnumr  (  r   rB   r  r^  rE  rO  r  c                   ,    \ rS rSrS rS rS rS rSrg)8TestSpecial.test_dir_with_custom_dunders.<locals>.MyEnumi0  c                 ,    [         R                  U 5      $ r  r  r^  r  s    r@   r^  ATestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__repr__1      t,,rB   c                 ,    [         R                  U 5      $ r  r  r  s    r@   rE  @TestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__str__3  r  rB   c                 ,    [         R                  U 5      $ r  r  r  s    r@   rO  CTestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__format__5  r  rB   c                     g r  rT   r  s    r@   r  ATestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__init__7  r  rB   rT   N)	r`   ra   rb   rc   r^  rE  rO  r  rg   rT   rB   r@   r   r  0  s    ---rB   r   )r   r  r  r  )r   r  cls_dirr   s       r@   test_dir_with_custom_dunders(TestSpecial.test_dir_with_custom_dunders&  s    	 	i.W-G,w/W-	T 	 f+j'*i)lG,j'*rB   c                 x   U R                  [        5          " S S[        5      nS S S 5        U R                  [        5          " S S[        5      nS S S 5        U R                  [        5          " S S[        5      nS S S 5        g ! , (       d  f       Ni= f! , (       d  f       NM= f! , (       d  f       g = f)Nc                   $    \ rS rSrSrSrSrSrSrg)4TestSpecial.test_duplicate_name_error.<locals>.ColoriA  rG   r)   r^   rr   rT   Nr`   ra   rb   rc   redgreenbluerg   rT   rB   r@   Colorr
  A  s    rB   r  c                   &    \ rS rSrSrSrSrS rSrg)r
  iH  rG   r)   r^   c                     g)Nr  rT   r  s    r@   r  8TestSpecial.test_duplicate_name_error.<locals>.Color.redL  s     rB   rT   Nr  rT   rB   r@   r  r
  H  s    !rB   c                   D    \ rS rSr\R
                  S 5       rSrSrSrSr	g)r
  iP  c                     g)NredderrT   r  s    r@   r  r  Q  s    #rB   rG   r)   r^   rT   N)
r`   ra   rb   rc   r1   r6  r  r  r  rg   rT   rB   r@   r  r
  P  s'    $ $rB   r  r  r   r   r  s     r@   test_duplicate_name_error%TestSpecial.test_duplicate_name_error?  s    y)  * y)! ! * y)  *) *) *) *)s#   B	B0B+	
B
B(+
B9c                 D    U R                  [        R                  S5        g )Nr   )r   r   rb   r  s    r@    test_enum_function_with_qualname,TestSpecial.test_enum_function_with_qualnameX  s    ,,.CDrB   c                   ^^^  " S S[         5      nU R                  UR                  R                  [        5        U R                  UR
                  R                  [        5        U R                  UR                  R                  [        5         " S S5      m " S S5      m " UU4S jS[         5      nU R                  UR                  R                  T5        U R                  UR                  R                  T5         " S	 S
5      m " U4S jS[         5      nU R                  UR                  R                  T5        g)2Support using Enum to refer to types deliberately.c                        \ rS rSr\r\r\r	Sr
g)/TestSpecial.test_enum_of_types.<locals>.MyTypesi^  rT   N)r`   ra   rb   rc   rf  ir  fr  r   rg   rT   rB   r@   MyTypesr   ^  s    AAArB   r#  c                       \ rS rSrSrg)+TestSpecial.test_enum_of_types.<locals>.Fooie  rT   Nr   rT   rB   r@   Foor%  e  r   rB   r&  c                       \ rS rSrSrg)+TestSpecial.test_enum_of_types.<locals>.Barig  rT   Nr   rT   rB   r@   Barr(  g  r   rB   r)  c                   "   > \ rS rSr Yr Y rSrg)0TestSpecial.test_enum_of_types.<locals>.MyTypes2ii  rT   N)r`   ra   rb   rc   r   brg   r)  r&  s   r@   MyTypes2r+  i  s    AArB   r.  c                       \ rS rSrSrg)8TestSpecial.test_enum_of_types.<locals>.SpamEnumNotInnerin  rT   Nr   rT   rB   r@   SpamEnumNotInnerr0  n  r   rB   r1  c                      > \ rS rSr Y rSrg)0TestSpecial.test_enum_of_types.<locals>.SpamEnumip  rT   N)r`   ra   rb   rc   r  rg   )r1  s   r@   SpamEnumr3  p  s    #DrB   r4  N)r   r   r!  r  rf  r"  r  r   r  r   r,  r  )r   r#  r.  r4  r)  r&  r1  s       @@@r@   test_enum_of_typesTestSpecial.test_enum_of_types\  s    	d 	 	#.%0#.	 		 		 	t 	 	))3/))3/	 		$t 	$,,.>?rB   c                     " S S[         5      nU R                  UR                  R                  [        R
                  [           5        U R                  UR                  R                  [        [           5        U R                  [        UR                  5      S5        U R                  [        UR                  5      S5        g )Nc                   <    \ rS rSr\R
                  \   r\\   r	Sr
g)3TestSpecial.test_enum_of_generic_aliases.<locals>.Eiu  rT   N)r`   ra   rb   rc   typingListrf  r   r   r,  rg   rT   rB   r@   r  r9  u  s    C AS	ArB   r  z<E.a: typing.List[int]>z<E.b: list[int]>)
r   r   r   r  r:  r;  rf  r,  r   r  )r   r  s     r@   test_enum_of_generic_aliases(TestSpecial.test_enum_of_generic_aliasest  s    	 	 	FKK$45DI.acc$=>acc$67rB   r^      zinner classes are not membersc                    U R                  [        S5          " S S[        5      nSSS5        U R                  [	        WR
                  U5      5        U R                  UR                  R                  S5        U R                  UR
                  R                  R                  R                  S5        U R                  [        UR
                  R                  5      UR
                  R                  R                  UR
                  R                  R                  /5        U R                  [        U5      UR                  UR                  UR
                  /5        g! , (       d  f       GN>= f)z
Check for warnings pre-3.13
zwill not become a memberc                   2    \ rS rSrSrSr " S S\5      rSrg)BTestSpecial.test_nested_classes_in_enum_are_members.<locals>.Outeri  rG   r)   c                       \ rS rSrSrSrSrg)HTestSpecial.test_nested_classes_in_enum_are_members.<locals>.Outer.Inneri  
   rL  rT   Nr`   ra   rb   rc   r   barrg   rT   rB   r@   InnerrD    s    CCrB   rH  rT   N	r`   ra   rb   rc   r   r,  r   rH  rg   rT   rB   r@   OuterrB    s    D rB   rJ  NrG   rE  )assertWarnsRegexDeprecationWarningr   r   rH   rH  r   r   r  r   r   rG  r,  r   rJ  s     r@   'test_nested_classes_in_enum_are_members3TestSpecial.test_nested_classes_in_enum_are_members}  s     ""#57QR  S 	
5;;67***..44b9""#[[""EKK$5$5$9$9:	 	KWWeggu{{+	 SRs   E
E-zinner classes are still membersc                      " S S[         5      nU R                  [        UR                  [        5      5        U R                  UR                  R                  S5        U R                  UR                  R                  R                  S5        U R                  [        UR                  5      UR                  R                  UR                  R                  /5        U R                  [        U5      UR                  UR                  /5        g)'Support locally-defined nested classes.c                   2    \ rS rSrSrSr " S S\5      rSrg)FTestSpecial.test_nested_classes_in_enum_are_not_members.<locals>.Outeri  rG   r)   c                       \ rS rSrSrSrSrg)LTestSpecial.test_nested_classes_in_enum_are_not_members.<locals>.Outer.Inneri  rE  rL  rT   NrF  rT   rB   r@   rH  rU    s    rB   rH  rT   NrI  rT   rB   r@   rJ  rS    s    AA rB   rJ  rG   rE  Nr   r   rH   rH  r  r   r   r  r   r   rG  r,  rM  s     r@   +test_nested_classes_in_enum_are_not_members7TestSpecial.test_nested_classes_in_enum_are_not_members  s    	D 	 	
5;;56*..3[[__ekkoo.	 	KWWegg	rB   c                      " S S[         5      nU R                  [        UR                  [        5      5        U R                  UR                  R                  S5        U R                  UR                  R                  R                  S5        U R                  [        UR                  5      UR                  R                  UR                  R                  /5        U R                  [        U5      UR                  UR                  /5        g )Nc                   <    \ rS rSrSrSr\ " S S\5      5       rSr	g)ETestSpecial.test_nested_classes_in_enum_with_nonmember.<locals>.Outeri  rG   r)   c                       \ rS rSrSrSrSrg)KTestSpecial.test_nested_classes_in_enum_with_nonmember.<locals>.Outer.Inneri  rE  rL  rT   NrF  rT   rB   r@   rH  r]        rB   rH  rT   N)
r`   ra   rb   rc   r   r,  r   r   rH  rg   rT   rB   r@   rJ  r[    s%    AA  rB   rJ  rG   rE  rV  rM  s     r@   *test_nested_classes_in_enum_with_nonmember6TestSpecial.test_nested_classes_in_enum_with_nonmember  s    	D 	 	
5;;56*..3[[__ekkoo.	 	KWWegg	rB   c                 X  ^^^  " S S[         5      nU R                  UR                  R                  [        5        U R                  UR                  [        L 5        U R                  UR                  R                  [        5         " S S5      m " S S5      m " UU4S jS[         5      nU R                  UR                  R                  T5        U R                  UR                  TL 5         " S	 S
5      m " U4S jS[         5      nU R                  UR                  TL 5        g)r  c                   ,    \ rS rSr\r\" \5      r\	r
Srg)>TestSpecial.test_enum_of_types_with_nonmember.<locals>.MyTypesi  rT   N)r`   ra   rb   rc   rf  r!  r   r  r"  r  r   rg   rT   rB   r@   r#  rc    s    A% AArB   r#  c                       \ rS rSrSrg):TestSpecial.test_enum_of_types_with_nonmember.<locals>.Fooi  rT   Nr   rT   rB   r@   r&  re    r   rB   r&  c                       \ rS rSrSrg):TestSpecial.test_enum_of_types_with_nonmember.<locals>.Bari  rT   Nr   rT   rB   r@   r)  rg    r   rB   r)  c                   .   > \ rS rSr Yr\"  Y 5      rSrg)?TestSpecial.test_enum_of_types_with_nonmember.<locals>.MyTypes2i  rT   N)r`   ra   rb   rc   r   r   r,  rg   r-  s   r@   r.  ri    s    A#ArB   r.  c                       \ rS rSrSrg)FTestSpecial.test_enum_of_types_with_nonmember.<locals>.SpamEnumIsInneri  rT   Nr   rT   rB   r@   SpamEnumIsInnerrk    r   rB   rl  c                   (   > \ rS rSr\"  Y 5      rSrg)?TestSpecial.test_enum_of_types_with_nonmember.<locals>.SpamEnumi  rT   N)r`   ra   rb   rc   r   r  rg   )rl  s   r@   r4  rn    s    _-DrB   r4  N)r   r   r!  r  rf  r   r"  r  r   r  r   r,  r  )r   r#  r.  r4  r)  r&  rl  s       @@@r@   !test_enum_of_types_with_nonmember-TestSpecial.test_enum_of_types_with_nonmember  s    	d 	 	#.		U*+#.	 		 		 	t 	 	))3/

c)*	 		.t 	.89rB   c                     " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  S5        U R                  [        UR
                  5      [        5         " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  S5        U R                  [        UR
                  5      [        5        g )Nc                   2    \ rS rSrSrSr\" \\-  5      rSrg)<TestSpecial.test_using_members_as_nonmember.<locals>.Examplei  rG   r)   rT   N)	r`   ra   rb   rc   r  r  r   ALLrg   rT   rB   r@   Examplers    s    AAAE"CrB   ru  rG   r)   r^   c                   F    \ rS rSr\" 5       r\" 5       r\" \\-  5      rSr	g)rs  i  rT   N)
r`   ra   rb   rc   r   r  r  r   rt  rg   rT   rB   r@   ru  rs    s    AAAE"CrB   )	r   r   r  r  r  rt  r  r  rf  )r   ru  s     r@   test_using_members_as_nonmember+TestSpecial.test_using_members_as_nonmember  s    	#d 	#
 	!,!,a(d7;;'-	#d 	#
 	!,!,a(d7;;'-rB   c                 ~    " S S[         5      nU R                  [        UR                  U5      5        U R	                  UR
                  R                  S5        U R	                  UR                  R                  R                  R                  S5        U R	                  [        UR                  R                  5      UR                  R                  R                  UR                  R                  R                  /5        U R	                  [        U5      UR
                  UR                  UR                  /5        g)rQ  c                   <    \ rS rSrSrSr\ " S S\5      5       rSr	g)BTestSpecial.test_nested_classes_in_enum_with_member.<locals>.Outeri  rG   r)   c                       \ rS rSrSrSrSrg)HTestSpecial.test_nested_classes_in_enum_with_member.<locals>.Outer.Inneri  rE  rL  rT   NrF  rT   rB   r@   rH  r}    r^  rB   rH  rT   N)
r`   ra   rb   rc   r   r,  r   r   rH  rg   rT   rB   r@   rJ  r{    s%    AA  rB   rJ  rG   rE  N)r   r   rH   rH  r   r   r  r   r   rG  r,  rM  s     r@   'test_nested_classes_in_enum_with_member3TestSpecial.test_nested_classes_in_enum_with_member  s    	D 	 	
5;;67***..44b9""#[[""EKK$5$5$9$9:	 	KWWeggu{{+	rB   c                   ^ SS jmU R                  [        S5       n " U4S jS[        5      nS S S 5        U R                  WR                  [
        5        U R                  WR                  [        5        U R                  UR                  S5      S5        U R                  [        S5         U R                  UR                  R                  S5      S5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)	Nc                     X4$ r  rT   )r   r,  s     r@   rQ   &TestSpecial.test_partial.<locals>.func  s	    4KrB   zpartial.*enum\.memberc                   ,   > \ rS rSrSr\"  Y 5      rSrg)#TestSpecial.test_partial.<locals>.Ei
  rG   rT   N)r`   ra   rb   rc   r   r   r,  rg   )rQ   s   r@   r  r  
  s    DMrB   r  r)   )r)   r  r   )r  )
rK  FutureWarningr   r   filename__file__assertIsInstancer,  r   r   )r   cmr  rQ   s      @r@   test_partialTestSpecial.test_partial  s    	""=2JKr"D " L 	h/acc7+Q(""=)<QSSUU1Xv. =< LK =<s   C$/,C5$
C25
Dc                 f    " S S[         5      nU R                  [        U5      UR                  UR                  /5        U R                  [        UR                  5      U5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        g )Nc                       \ rS rSrSrSrSrg)2TestSpecial.test_enum_with_value_name.<locals>.Huhi  rG   r)   rT   N)r`   ra   rb   rc   r   r  rg   rT   rB   r@   Huhr    r  rB   r  r   rG   )r   r   r   r   r  r  r  )r   r  s     r@   test_enum_with_value_name%TestSpecial.test_enum_with_value_name  sw    	$ 	 	cSXXsyy$9:d388nc*/+rB   c                 \    " S S[         5      n " S S[         5      n " S S[         5      n " S S[         5      nU R                  UR                  U5        U R                  UR                  U5        U R                  UR                  U5        U R                  UR                  U5        g )	Nc                       \ rS rSrSrSrg)BTestSpecial.test_contains_name_and_value_overlap.<locals>.IntEnum1i  rG   rT   Nr`   ra   rb   rc   r  rg   rT   rB   r@   IntEnum1r    r  rB   r  c                       \ rS rSrSrSrg)BTestSpecial.test_contains_name_and_value_overlap.<locals>.IntEnum2i  rG   rT   Nr  rT   rB   r@   IntEnum2r    r  rB   r  c                       \ rS rSrSrSrg)BTestSpecial.test_contains_name_and_value_overlap.<locals>.IntEnum3i!  r)   rT   Nr  rT   rB   r@   IntEnum3r  !  r  rB   r  c                       \ rS rSrSrSrg)BTestSpecial.test_contains_name_and_value_overlap.<locals>.IntEnum4i#  rG   rT   N)r`   ra   rb   rc   r  rg   rT   rB   r@   IntEnum4r  #  r  rB   r  )r	   r  r  r  )r   r  r  r  r  s        r@   $test_contains_name_and_value_overlap0TestSpecial.test_contains_name_and_value_overlap  s|    	w 		w 		w 		w 	hjj(+hjj(+X.hjj(+rB   c                      " S S[         5      n " S S[        5      nU R                  UR                  U5        U R                  UR                  U5        g )Nc                       \ rS rSrSrSrg)HTestSpecial.test_contains_different_types_same_members.<locals>.IntEnum1i+  rG   rT   Nr  rT   rB   r@   r  r  +  r  rB   r  c                       \ rS rSrSrSrg)HTestSpecial.test_contains_different_types_same_members.<locals>.IntFlag1i-  rG   rT   Nr  rT   rB   r@   IntFlag1r  -  r  rB   r  )r	   r   r  r  )r   r  r  s      r@   *test_contains_different_types_same_members6TestSpecial.test_contains_different_types_same_members*  s>    	w 		w 	hjj(+hjj(+rB   c                      " S S[         5      nU R                  S U;   5        U R                  SU;   5        U R                  SU;   5        g )Nc                   ,    \ rS rSrSrSr\S 5       rSrg)?TestSpecial.test_contains_does_not_call_missing.<locals>.AnEnumi3  Nr^   c                     U R                   $ r  )UNKNOWN)r  rp  s     r@   	_missing_ITestSpecial.test_contains_does_not_call_missing.<locals>.AnEnum._missing_6  s    {{"rB   rT   )	r`   ra   rb   rc   r  LUCKYclassmethodr  rg   rT   rB   r@   AnEnumr  3  s    GE# #rB   r  r^   r   )r   r   r   )r   r  s     r@   #test_contains_does_not_call_missing/TestSpecial.test_contains_does_not_call_missing2  sB    	#T 	# 	'V$f%rB   c                     " S S[         5      n " S SU[        R                  5      nU R                  [	        UR
                  5      S5        U[        5       S'   U[        5       S'   [        U R                  UR
                  5        [        U R                  U5         " S SU5      n " S S	U[        R                  5      nU R                  UR                  U5        U[        5       S'   U[        5       S	'   [        U R                  UR                  5        [        U R                  U5         " S
 S[         5      n " S SU[        5      nU R                  UR                  U5        U R                  U" S5      UR                  5        U[        5       S'   U[        5       S'   [        U R                  UR                  5        [        U R                  U5        g )Nc                       \ rS rSrSrS rSrg)4TestSpecial.test_inherited_data_type.<locals>.HexInti>  HexIntc                     [        U 5      $ r  hexr  s    r@   r^  =TestSpecial.test_inherited_data_type.<locals>.HexInt.__repr__@      4y rB   rT   Nr  rT   rB   r@   r  r  >  s    #L!rB   r  c                   $    \ rS rSrSrSrSrSrSrg)4TestSpecial.test_inherited_data_type.<locals>.MyEnumiB  r   rG   r)   r^   rT   Nr`   ra   rb   rc   r  r  r  rg   rT   rB   r@   r   r  B  s    #LAAArB   r   z<MyEnum.A: 0x1>c                       \ rS rSrSrSrg)6TestSpecial.test_inherited_data_type.<locals>.SillyIntiM  SillyIntrT   Nr   rT   rB   r@   r  r  M  s    %LrB   r  c                   $    \ rS rSrSrSrSrSrSrg)9TestSpecial.test_inherited_data_type.<locals>.MyOtherEnumiO  MyOtherEnumrr   r     rT   N)r`   ra   rb   rc   r  r  r  rg   rT   rB   r@   r  r  O  s    (LAAArB   r  c                       \ rS rSrSrS rSrg)9TestSpecial.test_inherited_data_type.<locals>.UnBrokenInti[  UnBrokenIntc                 ,    [         R                  X5      $ r  )rf  r  )r  r  s     r@   r  ATestSpecial.test_inherited_data_type.<locals>.UnBrokenInt.__new__]  s    {{3..rB   rT   Nr+  rT   rB   r@   r  r  [  s    (L/rB   r  c                   $    \ rS rSrSrSrSrSrSrg)<TestSpecial.test_inherited_data_type.<locals>.MyUnBrokenEnumi_  MyUnBrokenEnumr      rG  rT   N)r`   ra   rb   rc   GHIrg   rT   rB   r@   r  r  _  s    +LAAArB   r  r   )rf  r1   r   r   r  r  globalsr   r  r  r  r  r  )r   r  r   r  r  r  r  s          r@   test_inherited_data_type$TestSpecial.test_inherited_data_type=  sc   	!S 	!	VTYY 	
 	fhh):;$	($	(dmmVXX6dmmV4	&v 	&	(DII 	
 	k//: (	*#.	- dmm[]];dmm[9	/# 	/	[$ 	
 	n22K@nQ')9)9:#.	- &4	"#dmm^-=-=>dmm^<rB   c                    [         R                  [        R                  R                  5      nU R                  [        R                  U5      [        R                  5        [         R                  [        R                  R                  S-   5      nU R                  [        5         [        R                  U5        S S S 5        g ! , (       d  f       g = f)Ng{Gz?)	r  r  rm   rf   r  r  fromhexr  r   )r   hs     r@   test_floatenum_fromhex"TestSpecial.test_floatenum_fromhexk  s    IIl&&,,-l**1-|/?/?@IIl&&,,t34z*  # +**s   &C
Cc                 &   [        SS[        S9n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        U R                  UR
                  UR                  UR                  /U5        [        SR                  5       S5       Hf  u  p4U" U5      nU R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        Mh     g )Nrr  rs  rj  r^   rG   r   rf  r   r   rJ   ru  rv  rw  	enumeratery  r   r  r  r  r   rr  r|  r!  r}  rN   s         r@   test_programmatic_function_type+TestSpecial.test_programmatic_function_types  s    &8sC	9oS3y>2YI61A1AB	 ""4":":"<a@HA!AQ"QVVU+MM!'MM$q'9- ArB   c                 h   [        SSSS9n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        [        SR                  5       S5       H  u  p4U" U5      nU R                  [        UR                  5      U5        U R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        M     g )Nrr  rs  rE  rn  r^   r   r   r   rJ   ru  rv  rw  r  ry  rf  r  rz  r   r  r  r  r  s         r@   ,test_programmatic_function_string_with_start8TestSpecial.test_programmatic_function_string_with_start  s    &8C	9oS3y>2YI61A1AB	 ""4":":"<bAHA!AS\1-%QVVU+MM!'MM$q'9- BrB   c                 (   [        SS[        SS9n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        U R                  UR
                  UR                  UR                  /U5        [        SR                  5       S5       Hf  u  p4U" U5      nU R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        Mh     g )Nrr  rs  r#  )r  rn  r^   r  r  s         r@   *test_programmatic_function_type_with_start6TestSpecial.test_programmatic_function_type_with_start  s    &8s"M	9oS3y>2YI61A1AB	 ""4":":"<bAHA!AQ"QVVU+MM!'MM$q'9- BrB   c                 l   [        S/ SQSS9n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        [        SR                  5       S5       H  u  p4U" U5      nU R                  [        UR                  5      U5        U R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        M     g )Nrr  rt     r  r^   rs  r  r  s         r@   1test_programmatic_function_string_list_with_start=TestSpecial.test_programmatic_function_string_list_with_start  s    &@K	9oS3y>2YI61A1AB	 ""4":":"<bAHA!AS\1-%QVVU+MM!'MM$q'9- BrB   c                     [        SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        [        SR                  5       S5       Hf  u  p4U" U5      nU R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        Mh     g )Nrr  rs  r^   rG   r	   r   r   rJ   ru  rv  rw  r  ry  r   r  r  r  r  s         r@   -test_programmatic_function_type_from_subclass9TestSpecial.test_programmatic_function_type_from_subclass  s    K);<	9oS3y>2YI61A1AB	 ""4":":"<a@HA!AQ"QVVU+MM!'MM$q'9- ArB   c                    [        SSSS9n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  UR                  UR
                  UR                  /U5        [        SR                  5       S5       Hf  u  p4U" U5      nU R                  XS5        U R                  UR                  U5        U R                  XQ5        U R                  [        U5      U5        Mh     g )Nrr  rs  (   r  r^   r  r  s         r@   8test_programmatic_function_type_from_subclass_with_startDTestSpecial.test_programmatic_function_type_from_subclass_with_start  s    K);2F	9oS3y>2YI61A1AB	 ""4":":"<bAHA!AQ"QVVU+MM!'MM$q'9- BrB   c                     " S S[         5      nU R                  [        SUS5        U R                  U" S5      UR                  5        U R                  U" SS5      UR                  5         " S S[         5      nU R                  U" S	5      UR
                  5        U R                  U" S
SS5      UR
                  5        g )Nc                        \ rS rSrSrSrSrSrg)ETestSpecial.test_programmatic_function_is_value_call.<locals>.TwoParti  rG         ?)r)          @)r^         @rT   Nr`   ra   rb   rc   r(  r)  THREErg   rT   rB   r@   TwoPartr    s    CCErB   r   z1 is not a valid .*TwoPartrG   r  r  c                        \ rS rSrSrSrSrSrg)GTestSpecial.test_programmatic_function_is_value_call.<locals>.ThreeParti  )rG   r  r  )r)   r  r  r^   r  threerT   Nr  rT   rB   r@   	ThreePartr    s    CC#ErB   r  r  r^   r  r  )r   r   r   r  r(  r  )r   r   r  s      r@   (test_programmatic_function_is_value_call4TestSpecial.test_programmatic_function_is_value_call  s    	d 	 	z+GRSTgh'5gaow{{3	$ 	$ 	i 12IOODi30)//BrB   c                     U R                  [        R                  SS5      [        R                  5        U R	                  [
        5         [        R                  SS5        S S S 5        g ! , (       d  f       g = f)Ns    bigs    )r  rj   
from_bytesrf   r  r   r  s    r@   test_intenum_from_bytes#TestSpecial.test_intenum_from_bytes  sK    j++K?Pz*!!+u5 +**s   
A**
A8c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nz-_sunder_ names, such as ._bad_., are reservedc                       \ rS rSrSrSrg)3TestSpecial.test_reserved_sunder_error.<locals>.Badi  rG   rT   N)r`   ra   rb   rc   r   rg   rT   rB   r@   Badr    s    rB   r  )r   r   r   )r   r  s     r@   test_reserved_sunder_error&TestSpecial.test_reserved_sunder_error  s2    ##?d 	     0
>c                 R   U R                  [        S5          " S S[        [        [        5      nS S S 5         " S S[        5      n " S S[        5      nU R                  [        S5          " S SX#[        5      nS S S 5        g ! , (       d  f       N\= f! , (       d  f       g = f)	Nztoo many data typesc                       \ rS rSrSrSrg)1TestSpecial.test_too_many_data_types.<locals>.Huhi  rG   rT   Nr`   ra   rb   rc   Onerg   rT   rB   r@   r  r    rJ  rB   r  c                       \ rS rSrS rSrg)3TestSpecial.test_too_many_data_types.<locals>.MyStri  c                     SU -  $ )Nz	hello, %srT   r  s    r@   hello9TestSpecial.test_too_many_data_types.<locals>.MyStr.hello  s    "T))rB   rT   Nr`   ra   rb   rc   r  rg   rT   rB   r@   MyStrr    s    *rB   r  c                       \ rS rSrS rSrg)3TestSpecial.test_too_many_data_types.<locals>.MyInti  c                     [        U 5      $ r  r  r  s    r@   r  8TestSpecial.test_too_many_data_types.<locals>.MyInt.repr  r  rB   rT   N)r`   ra   rb   rc   r  rg   rT   rB   r@   MyIntr!        !rB   r$  c                       \ rS rSrSrSrg)r  i  rG   rT   Nr  rT   rB   r@   r  r    rJ  rB   )r   r  r  rf  r   )r   r  r  r$  s       r@   test_too_many_data_types$TestSpecial.test_too_many_data_types  s    ##I/DEc3  F	*C 	*	!C 	! ##I/DEeD  FE FE FEs   B-B
B
B&c                     [        U R                  [        R                  5        [        U R                  [        5        g r  )r   r  r\   re   r  s    r@   test_pickle_enumTestSpecial.test_pickle_enum  s"    dmmW]];dmmW5rB   c                     [        U R                  [        R                  5        [        U R                  [        5        g r  )r   r  rj   re   r  s    r@   test_pickle_intTestSpecial.test_pickle_int  s$    dmmZ-=-=>dmmZ8rB   c                     [        U R                  [        R                  5        [        U R                  [        5        g r  )r   r  rm   re   r  s    r@   test_pickle_floatTestSpecial.test_pickle_float  s$    dmm\-?-?@dmm\:rB   c                     [        U R                  [        R                  5        [        U R                  [        5        g r  )r   r  r   himr  s    r@   test_pickle_enum_function%TestSpecial.test_pickle_enum_function  s"    dmmVZZ8dmmV4rB   c                     [        U R                  [        R                  5        [        U R                  [        5        g r  )r   r  r   whor  s    r@   %test_pickle_enum_function_with_module1TestSpecial.test_pickle_enum_function_with_module  s"    dmmX\\:dmmX6rB   c                      " S S[         5      nXR                  l        SU R                  R                  -  U R                  l        [        U R                  U R                  R                  5        g )Nc                       \ rS rSrSrSrSrg)8TestSpecial.test_pickle_nested_class.<locals>.NestedEnumi  commonrarerT   N)r`   ra   rb   rc   twigsshinyrg   rT   rB   r@   
NestedEnumr<    s    EErB   rA  z%s.NestedEnum)r   r  rA  r`   rb   r   r  r?  )r   rA  s     r@   test_pickle_nested_class$TestSpecial.test_pickle_nested_class  sM    	 	 %/!'69P9P'P$dmmT__-B-BCrB   c                      " S S[         5      n[        R                  Ul        [	        [
        5       H.  nU R                  UR                  R                  U5      S5        M0     g )Nc                       \ rS rSrSrSrSrg)9TestSpecial.test_pickle_by_name.<locals>.ReplaceGlobalInti%  rG   r)   rT   Nr'  rT   rB   r@   ReplaceGlobalIntrF  %      CCrB   rG  r)  )r	   r1   _reduce_ex_by_global_name__reduce_ex__r   r#   r   r)  )r   rG  protos      r@   test_pickle_by_nameTestSpecial.test_pickle_by_name$  sQ    	w 	 *.)G)G&+,E-11??FN -rB   c                     [        SS[        S9nU[        5       S'   [        R                  " U5        [        U R                  [        UR                  5        [        U R                  [        U5        g )N	BadPicklezdill sweet bread-n-butterr   )
r   r`   r  r1   _make_class_unpicklabler   r  r  dillr"   )r   rO  s     r@   test_pickle_explodes TestSpecial.test_pickle_explodes,  sW    8K	!*	+$$Y/d//INNKd//	JrB   c                 d     " S S[         [        5      nU R                  UR                  S5        g )Nc                        \ rS rSrSrSrSrSrg)0TestSpecial.test_string_enum.<locals>.SkillLeveli6  z'what is the sound of one hand clapping?z#why did the chicken cross the road?knock, knock!rT   N)r`   ra   rb   rc   master
journeyman
apprenticerg   rT   rB   r@   
SkillLevelrV  6  s    >F>J(JrB   r[  rW  )r  r   r   rZ  )r   r[  s     r@   test_string_enumTestSpecial.test_string_enum5  s(    	)d 	) 	..@rB   c                      " S S[         5      nU R                  U" S5      UR                  5        U R                  [        US5      UR                  5        U R                  US   UR
                  5        g )Nc                   $    \ rS rSrSrSrSrSrSrg)0TestSpecial.test_getattr_getitem.<locals>.Periodi=  rG   r)   r^   rr   rT   N)	r`   ra   rb   rc   morningnooneveningnightrg   rT   rB   r@   Periodr`  =  s    GDGErB   re  r)   rd  ra  )r   r  rb  r  rd  ra  r   re  s     r@   test_getattr_getitem TestSpecial.test_getattr_getitem<  sV    	T 	
 	fQi-gfg.=fY'8rB   c                 R    U R                   nU R                  [        US5      5        g )N__eq__)r  r   r  r  s     r@   test_getattr_dunderTestSpecial.test_getattr_dunderF  s    12rB   c                      " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  UR                  /5        g )Nc                   $    \ rS rSrSrSrSrSrSrg)0TestSpecial.test_iteration_order.<locals>.SeasoniK  r)   rr   r^   rG   rT   N)	r`   ra   rb   rc   r  r  r  r  rg   rT   rB   r@   r  ro  K  r  rB   r  )r   r   r   r  r  r  r  r  s     r@   test_iteration_order TestSpecial.test_iteration_orderJ  sA    	T 	
 	Vv}}fmmL	rB   c                 :   U R                  [        R                  S5        U R                  [        R                  [        S5      5        U R	                  [        R                  [        [        S5      5        [        U R                  [        R                  5        g )Nr   r   )r   r   r   r   r  r  r   r  s    r@   test_subclassingTestSpecial.test_subclassingU  sZ    $67		4(:#;<diiv!67dmmTYY7rB   c                     " S S[         5      nU R                  [        5          " S SU5      nS S S 5        U R                  [        S5          " S SU[        5      nS S S 5        U R                  [
        S5         U" S	S
5        S S S 5        g ! , (       d  f       Nf= f! , (       d  f       NH= f! , (       d  f       g = f)Nc                        \ rS rSrSrSrSrSrg))TestSpecial.test_extending.<locals>.Colori]  rG   r)   r^   rT   Nr  rT   rB   r@   r  rw  ]      CEDrB   r  c                        \ rS rSrSrSrSrSrg)-TestSpecial.test_extending.<locals>.MoreColoric  rr   r  r  rT   Nr`   ra   rb   rc   cyanmagentayellowrg   rT   rB   r@   	MoreColorrz  c      rB   r  z3<enum .EvenMoreColor.> cannot extend <enum .Color.>c                       \ rS rSrSrSrg)1TestSpecial.test_extending.<locals>.EvenMoreColorii  r   rT   N)r`   ra   rb   rc   
chartrueserg   rT   rB   r@   EvenMoreColorr  i  rR  rB   r  z5\(.Foo., \(.pink., .black.\)\) is not a valid .*Colorr&  )pinkblack)r   r  r  r   r	   r   )r   r  r  r  s       r@   test_extendingTestSpecial.test_extending\  s    	D 	
 y)E  * ##I/dew  f ##J0hi%*+ ji *) fe jis#   BB">
B3
B"
B03
Cc                      " S S[         5      nU R                  [        UR                  5      U5        U R	                  UR
                  R                  5       S5        g )Nc                   "    \ rS rSrSrSrS rSrg)2TestSpecial.test_exclude_methods.<locals>.whateverip  r  thosec                      SU R                   -  $ )Nz
no, not %sr  r  s    r@   really9TestSpecial.test_exclude_methods.<locals>.whatever.reallys  s    #djj00rB   rT   N)r`   ra   rb   rc   r  r  r  rg   rT   rB   r@   whateverr  p  s    DE1rB   r  zno, not that)r   assertIsNotr  r  r   r  )r   r  s     r@   test_exclude_methods TestSpecial.test_exclude_methodso  sF    	1t 	1
 	hoo.9--/@rB   c                     U R                  [        5          " S S[        [        5      nS S S 5        g ! , (       d  f       g = f)Nc                       \ rS rSrSrSrg)7TestSpecial.test_wrong_inheritance_order.<locals>.Wrongiz  zerror before this pointrT   N)r`   ra   rb   rc   NotHererg   rT   rB   r@   rI  r  z  s    3rB   rI  )r  r  r   r  rU  s     r@   test_wrong_inheritance_order(TestSpecial.test_wrong_inheritance_orderx  s*    y)4c 4 *))s	   4
Ac                    ^  " S S[         5      mU R                  T5          " U4S jS[        5      nS S S 5        g ! , (       d  f       g = f)Nc                   (   ^  \ rS rSrU 4S jrSrU =r$ )MTestSpecial.test_raise_custom_error_on_creation.<locals>.InvalidRgbColorErrori~  c           	      \   > Xl         X l        X0l        [        TU ]  SU SU SU S35        g )N(z, z) is not a valid RGB color)rgr,  r  r  )r   r  r  r,  r  s       r@   r  VTestSpecial.test_raise_custom_error_on_creation.<locals>.InvalidRgbColorError.__init__  s5     1QCr!Bqc1K!LMrB   )r,  r  r  )r`   ra   rb   rc   r  rg   r  r  s   @r@   InvalidRgbColorErrorr  ~  s    N NrB   r  c                   2   > \ rS rSrSrSrSrSrU 4S jrSr	g)	ATestSpecial.test_raise_custom_error_on_creation.<locals>.RgbColori  )r  r   r   )r   r  r   )r   r   r  )r   r   r   c                 J   > [        S XU4 5       5      (       d	  T" XU5      eg )Nc              3   L   #    U  H  nS Us=:*  =(       a    S:*  Os  v   M     g7f)r   r  NrT   ).0r  s     r@   	<genexpr>]TestSpecial.test_raise_custom_error_on_creation.<locals>.RgbColor.__init__.<locals>.<genexpr>  s     D)3qC3)s   "$)all)r   r  r  r,  r  s       r@   r  JTestSpecial.test_raise_custom_error_on_creation.<locals>.RgbColor.__init__  s+    D1)DDD21;; ErB   rT   N)
r`   ra   rb   rc   r  GREENBLUEINVALIDr  rg   )r  s   r@   RgbColorr    s!    !#"%< <rB   r  )r   r  r   )r   r  r  s     @r@   #test_raise_custom_error_on_creation/TestSpecial.test_raise_custom_error_on_creation}  s:    	N: 	N 34<4 < 544s	   >
Ac                 $    " S S[         5      n " S S[         5      nU R                  UR                  UR                  5        U R                  UR                  UR
                  5        U R                  UR                  UR                  5        g )Nc                        \ rS rSrSrSrSrSrg)5TestSpecial.test_intenum_transitivity.<locals>.numberi  rG   r)   r^   rT   Nr`   ra   rb   rc   r  r  r  rg   rT   rB   r@   numberr        CCErB   r  c                        \ rS rSrSrSrSrSrg)5TestSpecial.test_intenum_transitivity.<locals>.numeroi  rG   r)   r^   rT   N)r`   ra   rb   rc   unodostresrg   rT   rB   r@   numeror        CCDrB   r  )r	   r   r  r  r  r  r  r  )r   r  r  s      r@   test_intenum_transitivity%TestSpecial.test_intenum_transitivity  sd    	W 		W 	 	VZZ0VZZ0v{{3rB   c                      " S S[         5      n " S S[         5      nU R                  [        XR                  5        g )Nc                       \ rS rSrSrSrSrg)7TestSpecial.test_wrong_enum_in_call.<locals>.Monochromei  r   rG   rT   Nr`   ra   rb   rc   r  whiterg   rT   rB   r@   
Monochromer        EErB   r  c                       \ rS rSrSrSrSrg)3TestSpecial.test_wrong_enum_in_call.<locals>.Genderi  r   rG   rT   Nr`   ra   rb   rc   malefemalerg   rT   rB   r@   Genderr        DFrB   r  )r   r  r   r  r   r  r  s      r@   test_wrong_enum_in_call#TestSpecial.test_wrong_enum_in_call  s0    	 		T 	 	*j++>rB   c                      " S S[         5      n " S S[        5      nU R                  [        XR                  5        g )Nc                       \ rS rSrSrSrSrg)=TestSpecial.test_wrong_enum_in_mixed_call.<locals>.Monochromei  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  c                       \ rS rSrSrSrSrg)9TestSpecial.test_wrong_enum_in_mixed_call.<locals>.Genderi  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  )r	   r   r  r   r  r  s      r@   test_wrong_enum_in_mixed_call)TestSpecial.test_wrong_enum_in_mixed_call  s0    	 		T 	 	*j++>rB   c                      " S S[         5      n " S S[         5      nU R                  U" UR                  5      UR                  5        g )Nc                       \ rS rSrSrSrSrg)9TestSpecial.test_mixed_enum_in_call_1.<locals>.Monochromei  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  c                       \ rS rSrSrSrSrg)5TestSpecial.test_mixed_enum_in_call_1.<locals>.Genderi  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  )r	   r  r  r  r  s      r@   test_mixed_enum_in_call_1%TestSpecial.test_mixed_enum_in_call_1  s9    	 		W 	 	j/1A1ABrB   c                      " S S[         5      n " S S[        5      nU R                  U" UR                  5      UR                  5        g )Nc                       \ rS rSrSrSrSrg)9TestSpecial.test_mixed_enum_in_call_2.<locals>.Monochromei  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  c                       \ rS rSrSrSrSrg)5TestSpecial.test_mixed_enum_in_call_2.<locals>.Genderi  r   rG   rT   Nr  rT   rB   r@   r  r    r  rB   r  )r   r	   r  r  r  r  s      r@   test_mixed_enum_in_call_2%TestSpecial.test_mixed_enum_in_call_2  s9    	 		W 	 	j-z/?/?@rB   c                      " S S[         5      n " S SU5      nU R                  [        UR                  5      S5        g )Nc                       \ rS rSrS rSrg)-TestSpecial.test_flufl_enum.<locals>.Fluflnumi  c                 ,    [        U R                  5      $ r  )rf  r  r  s    r@   __int__5TestSpecial.test_flufl_enum.<locals>.Fluflnum.__int__  s    4::&rB   rT   N)r`   ra   rb   rc   r  rg   rT   rB   r@   Fluflnumr        'rB   r  c                        \ rS rSrSrSrSrSrg)3TestSpecial.test_flufl_enum.<locals>.MailManOptionsi  rG   r)   r^   rT   N)r`   ra   rb   rc   option1option2option3rg   rT   rB   r@   MailManOptionsr    s    GGGrB   r  rG   )r   r   rf  r  )r   r  r  s      r@   test_flufl_enumTestSpecial.test_flufl_enum  s7    	't 	'	X 	 	^334a8rB   c                 $    " S S[         5      nU R                  UR                  R                  [        5        U R                  UR                  [        5         " S S[
        [        5      nU R                  UR                  R                  [
        5        U R                  UR                  [
        5         " S S[        5      nU R                  UR                  R                  [        5        U R                  UR                  [        5        g )Nc                       \ rS rSrSrSrSrg).TestSpecial.test_introspection.<locals>.Numberi  d      rT   Nr`   ra   rb   rc   r  r  rg   rT   rB   r@   rB  r    s    CCrB   rB  c                        \ rS rSrSrSrSrSrg).TestSpecial.test_introspection.<locals>.Stringi  softroughhardrT   N)r`   ra   rb   rc   yarnropewirerg   rT   rB   r@   Stringr    s    DDDrB   r  c                       \ rS rSrSrSrSrg)-TestSpecial.test_introspection.<locals>.Plaini  r  rG   rT   N)r`   ra   rb   rc   vanillar  rg   rT   rB   r@   Plainr    s    GCrB   r
  )
r	   r  r  r  rf  r  r   r  r	  r  )r   rB  r  r
  s       r@   test_introspectionTestSpecial.test_introspection  s    	W 	 	fjj..4f**C0	S$ 	 	fkk//5f**C0	D 	 	emm116:e))62rB   c                      " S S[         5      nU R                  [        5         U" S5        S S S 5        U R                  [        5         US     S S S 5        g ! , (       d  f       N2= f! , (       d  f       g = f)Nc                        \ rS rSrSrSrSrSrg)3TestSpecial.test_no_such_enum_member.<locals>.Colori  rG   r)   r^   rT   Nr  rT   rB   r@   r  r    rx  rB   r  rr   
chartreuse)r   r  r   KeyErrorr  s     r@   test_no_such_enum_member$TestSpecial.test_no_such_enum_member  sX    	D 	 z*!H +x(, )( +*((s   	AA+
A(+
A9c                    ^  " U4S jS[        [        5      5      m " S S[        TS9n " S S[        TS9n " S S	U5      n " S
 SU5      ng )Nc                   ,   >^  \ rS rSrU U4S jrSrU =r$ )6TestSpecial.test_multiple_mixin_mro.<locals>.auto_enumi  c                 "  > [        U5      " 5       nXl        [        UR                  5      nSnUR                   H  nX7   nU[        L a  UnOUnUS-  nXU'   M      UR                  5        H  u  pxXu;  d  M  XU'   M     [        T
U ]  XX$5      $ Nr   rG   )r  	_cls_namer  _member_namesEllipsisitemsr  r  )metaclsr  bases	classdicttempr  r!  kvr  	auto_enums            r@   r  >TestSpecial.test_multiple_mixin_mro.<locals>.auto_enum.__new__  s    I(!$I334"00A!AH}FAG 1 &OO-DA~"#Q . Y8e3 3rB   rT   r`   ra   rb   rc   r  rg   r  )r  r#  s   @r@   r#  r    s    3 3rB   r#  c                       \ rS rSrSrg)=TestSpecial.test_multiple_mixin_mro.<locals>.AutoNumberedEnumi  rT   Nr   rT   rB   r@   AutoNumberedEnumr'    r   rB   r(  r  c                       \ rS rSrSrg)8TestSpecial.test_multiple_mixin_mro.<locals>.AutoIntEnumi  rT   Nr   rT   rB   r@   AutoIntEnumr*    r   rB   r+  c                        \ rS rSrSrSrSrSrg);TestSpecial.test_multiple_mixin_mro.<locals>.TestAutoNumberi  .r^   rT   Nr`   ra   rb   rc   r   r,  crg   rT   rB   r@   TestAutoNumberr-        AAArB   r0  c                        \ rS rSrSrSrSrSrg)8TestSpecial.test_multiple_mixin_mro.<locals>.TestAutoInti	  .r^   rT   Nr.  rT   rB   r@   TestAutoIntr3  	  r1  rB   r4  )r  r   r	   )r   r(  r+  r0  r4  r#  s        @r@   test_multiple_mixin_mro#TestSpecial.test_multiple_mixin_mro  sH    	3T
 	3(	ty 		'Y 		- 	
	+ 	rB   c                 R  ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        [        U R                  US5        U R	                  UR                  R                  S5        [        U R                  UR                  5        [        U R                  U5        g )	Nc                   b   > \ rS rSrSrS rS r\R                  S 5       r S rS r	U 4S jr
S	rg
)=TestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInti  NamedIntc                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ Nr    name and value must be specifiedrJ   r  rf  r  _intname_argsr  rL   r@  r   r   s        r@   r  ETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__new__  G    "t9>#$FGG{{3.. $"
rB   c                     U R                   $ r  r@  r  s    r@   __getnewargs__LTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__getnewargs__  s    zz!rB   c                     U R                   $ r  r?  r  s    r@   r`   FTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__name__      }}$rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ Nz{}({!r}, {})r  r  r`   rf  r^  r  s    r@   r^  FTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__repr__  5    %,,T
++T* rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rf  rE  __objclass__r  r^  r   basebase_strs      r@   rE  ETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__str__&  7    <<((F2==..~%rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ Nz({0} + {1})rf  rH   r  r`   r   otherr   r:  s      r@   __add__ETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__add__/  ]    4y3;.dH--*UH2M2M#%,,T]]ENNK 
  KrB   r@  r?  N)r`   ra   rb   rc   r  rF  bltnsr6  r^  rE  r^  rg   r:  s   r@   r:  r9    s<    %L"^^% %&   rB   r:  c                        \ rS rSrSrSrSrSrg)8TestSpecial.test_subclasses_with_getnewargs.<locals>.NEIi9  NEIzthe-xrG   zthe-yr)   rT   Nr`   ra   rb   rc   xyrg   rT   rB   r@   rf  re  9       LAArB   rf  NamedInt('(the-x + the-y)', 3)testr  r)   rf  r   r  r  r   r  rj  rk  r  r   r  r   rf  NI5r:  s      @r@   test_subclasses_with_getnewargs+TestSpecial.test_subclasses_with_getnewargs      (	 s (	 T	(D 	 	ckk4<<0ceeceem,.NO (	*	%vq!a d..Q7a(dmmSUU3dmmS1rB   c                 R  ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        [        U R                  US5        U R	                  UR                  R                  S5        [        U R                  UR                  5        [        U R                  U5        g )	Nc                   b   > \ rS rSrSrS rS r\R                  S 5       r S rS r	U 4S jr
S	rg
)@TestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedIntiK  r:  c                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ r<  r>  rA  s        r@   r  HTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__new__M  rC  rB   c                     U R                   0 4$ r  rE  r  s    r@   __getnewargs_ex__RTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__getnewargs_ex__V  s    zz2~%rB   c                     U R                   $ r  rI  r  s    r@   r`   ITestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__name__X  rK  rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ rM  rN  r  s    r@   r^  ITestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__repr__[  rP  rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rR  rT  s      r@   rE  HTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__str__b  rX  rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ rZ  r[  r\  s      r@   r^  HTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__add__k  r`  rB   ra  N)r`   ra   rb   rc   r  r{  rb  r6  r^  rE  r^  rg   rc  s   r@   r:  rw  K  s<    %L&^^% %&   rB   r:  c                        \ rS rSrSrSrSrSrg);TestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NEIiu  rf  rg  rh  rT   Nri  rT   rB   r@   rf  r  u  rl  rB   rf  rm  rn  r  r)   ro  rp  s      @r@   "test_subclasses_with_getnewargs_ex.TestSpecial.test_subclasses_with_getnewargs_exJ  rt  rB   c                 R  ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        [        U R                  US5        U R	                  UR                  R                  S5        [        U R                  UR                  5        [        U R                  U5        g )	Nc                   b   > \ rS rSrSrS rS r\R                  S 5       r S rS r	U 4S jr
S	rg
)9TestSpecial.test_subclasses_with_reduce.<locals>.NamedInti  r:  c                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ r<  r>  rA  s        r@   r  ATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__new__  rC  rB   c                 2    U R                   U R                  4$ r  r  r@  r  s    r@   
__reduce__DTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__reduce__      ~~tzz11rB   c                     U R                   $ r  rI  r  s    r@   r`   BTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__name__  rK  rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ rM  rN  r  s    r@   r^  BTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__repr__  rP  rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rR  rT  s      r@   rE  ATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__str__  rX  rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ rZ  r[  r\  s      r@   r^  ATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__add__  r`  rB   ra  N)r`   ra   rb   rc   r  r  rb  r6  r^  rE  r^  rg   rc  s   r@   r:  r    <    %L2^^% %&   rB   r:  c                        \ rS rSrSrSrSrSrg)4TestSpecial.test_subclasses_with_reduce.<locals>.NEIi  rf  rg  rh  rT   Nri  rT   rB   r@   rf  r    rl  rB   rf  rm  rn  r  r)   ro  rp  s      @r@   test_subclasses_with_reduce'TestSpecial.test_subclasses_with_reduce  rt  rB   c                 R  ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        [        U R                  US5        U R	                  UR                  R                  S5        [        U R                  UR                  5        [        U R                  U5        g )	Nc                   b   > \ rS rSrSrS rS r\R                  S 5       r S rS r	U 4S jr
S	rg
)<TestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInti  r:  c                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ r<  r>  rA  s        r@   r  DTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__new__  rC  rB   c                 2    U R                   U R                  4$ r  r  r   rK  s     r@   rJ  JTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__reduce_ex__  r  rB   c                     U R                   $ r  rI  r  s    r@   r`   ETestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__name__  rK  rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ rM  rN  r  s    r@   r^  ETestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__repr__  rP  rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rR  rT  s      r@   rE  DTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__str__  rX  rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ rZ  r[  r\  s      r@   r^  DTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__add__  r`  rB   ra  N)r`   ra   rb   rc   r  rJ  rb  r6  r^  rE  r^  rg   rc  s   r@   r:  r    r  rB   r:  c                        \ rS rSrSrSrSrSrg)7TestSpecial.test_subclasses_with_reduce_ex.<locals>.NEIi  rf  rg  rh  rT   Nri  rT   rB   r@   rf  r    rl  rB   rf  rm  rn  r  r)   ro  rp  s      @r@   test_subclasses_with_reduce_ex*TestSpecial.test_subclasses_with_reduce_ex  s    (	 s (	 T	(D 	
 	ckk4<<0ceeceem,.NO (	*	%vq!a d..Q7a(dmmSUU3dmmS1rB   c                   ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        U R	                  UR                  R                  S5        U R                  [        S	5         [        U R                  UR                  5        S S S 5        [        R                  Ul        [        U R                  UR                  5        [        U R                  U5        g ! , (       d  f       NZ= f)
Nc                   \   > \ rS rSrSrS r\R                  S 5       r S rS rU 4S jr	Sr
g	)
KTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInti  r:  c                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ r<  r>  rA  s        r@   r  STestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__new__ 	  rC  rB   c                     U R                   $ r  rI  r  s    r@   r`   TTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__name__		  rK  rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ rM  rN  r  s    r@   r^  TTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__repr__	  rP  rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rR  rT  s      r@   rE  STestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__str__	  rX  rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ rZ  r[  r\  s      r@   r^  STestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__add__	  s]    4y3;.dH--*UH2M2M#%,,T]]ENNK   KrB   ra  Nr`   ra   rb   rc   r  rb  r6  r^  rE  r^  rg   rc  s   r@   r:  r    s9    %L ^^% %&   rB   r:  c                        \ rS rSrSrSrSrSrg)FTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NEIi%	  rf  rg  rh  rT   Nri  rT   rB   r@   rf  r  %	  rl  rB   rf  rm  rn  r  r)   r=  )rf  r   r  r  r   r  rj  rk  r  r  r   r  r   r1   pickle_by_enum_namerJ  rp  s      @r@   -test_subclasses_without_direct_pickle_support9TestSpecial.test_subclasses_without_direct_pickle_support  s   %	 s %	 N	(D 	 	ckk4<<0ceeceem,.NO (	*	%vq!a a(##I/QR!$--7 S !44dmmSUU3dmmS1 SRs   1!E&&
E4c                 $  ^  " U4S jS[         5      m " S ST[        5      nU R                  UR                  [        R                  5        U R	                  [        UR                  UR                  -   5      S5        T[        5       S'   U[        5       S'   T" SS5      nU R	                  US5        U R	                  UR                  R                  S5        [        U R                  UR                  5        [        U R                  U5        g )	Nc                   \   > \ rS rSrSrS r\R                  S 5       r S rS rU 4S jr	Sr
g	)
HTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInti8	  r:  c                     UnUtp1[        U5      S:X  a  [        S5      e[        R                  " U /UQ76 nX4l        X$l        U$ r<  r>  rA  s        r@   r  PTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__new__:	  rC  rB   c                     U R                   $ r  rI  r  s    r@   r`   QTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__name__C	  rK  rB   c                     SR                  [        U 5      R                  U R                  [        R	                  U 5      5      $ rM  rN  r  s    r@   r^  QTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__repr__F	  rP  rB   c                 ~    [         nUR                  nUR                  [        L a  UR	                  U 5      $ U" U 5      $ r  rR  rT  s      r@   rE  PTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__str__M	  rX  rB   c                    > [        U 5      [        U5      -   n[        U T5      (       a>  [        UT5      (       a-  T" SR                  U R                  UR                  5      U5      $ U$ rZ  r[  r\  s      r@   r^  PTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__add__V	  r`  rB   ra  Nr  rc  s   r@   r:  r  8	  s9    %L ^^% %&   rB   r:  c                   &    \ rS rSrSrSrSrS rSrg)CTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NEIi`	  rf  rg  rh  c                 >    [         U R                  U R                  44$ r  )r  r  r]  r  s     r@   rJ  QTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NEI.__reduce_ex__d	  s     ===rB   rT   N)r`   ra   rb   rc   rj  rk  rJ  rg   rT   rB   r@   rf  r  `	  s     LAA>rB   rf  rm  rn  r  r)   )rf  r   r  r  r   r  rj  rk  r  r  r   rp  s      @r@   *test_subclasses_with_direct_pickle_support6TestSpecial.test_subclasses_with_direct_pickle_support7	  s    &	 s &	 P	>(D 	> 	ckk4<<0ceeceem,.NO (	*	%vq!a a(dmmSUU3dmmS1rB   c                 H    " S S[         [        5      nU R                  [        UR                  5      U5        U R                  UR                  [         5        U R                  UR                  S5        U[        5       S'   [        U R                  UR                  5        g )Nc                   $    \ rS rSrSrSrSrSrSrg)2TestSpecial.test_tuple_subclass.<locals>.SomeTupleir	  	SomeTuple)rG   for the money)r)   for the showr^   for the musicrT   Nr  rT   rB   r@   r  r  r	  s    &L(E(F(ErB   r  r  )r%  r   r  r  r4  r  r:  r   r;  r  r   )r   r  s     r@   test_tuple_subclassTestSpecial.test_tuple_subclassq	  sr    	)t 	)
 	d9??+Y7i..6*>?!*	+dmmY__=rB   c                 0   SSK Jn  U" SS5      n " S SU[        5      nU R                  [	        UR
                  5      U5        U R                  UR                  R                  S5        U R                  UR                  R                  U5        U R                  UR
                  R                  S5        U R                  UR                  R                  S	5        U[        5       S'   U[        5       S'   [        U R                  UR
                  5        g )
Nr   
namedtupleT
index descc                   N    \ rS rSrSr\" 5       S4r\" 5       S4r\" 5       S4rSrg)=TestSpecial.test_tuple_subclass_with_auto_1.<locals>.SomeEnumi	  SomeEnumr  r  r  rT   N	r`   ra   rb   rc   r   r4  r:  r;  rg   rT   rB   r@   r  r  	  s+    %LFO+EV^+FFO+ErB   r  r  rG   r  collectionsr  r   r  r  r4  r   r;  r  r  indexr:  descr  r   )r   r  r  r  s       r@   test_tuple_subclass_with_auto_1+TestSpecial.test_tuple_subclass_with_auto_1}	  s    *sL)	,q$ 	,
 	d8>>*H5--/CDhnn22A6--q1--~> (	*	#dmmX^^<rB   c                 ^  ^ SSK Jn  U" SS5      m " U4S jS[        5      nU R                  [	        UR
                  5      U5        U R                  UR                  R                  S5        U R                  UR                  R                  T5        U R                  UR
                  R                  R                  S5        U R                  UR                  R                  R                  S	5        U[        5       S'   T[        5       S'   [        U R                  UR
                  5        g )
Nr   r  r  r  c                   t   > \ rS rSrSr Y " \" 5       S5      r Y " \" 5       S5      r Y " \" 5       S5      rSrg)=TestSpecial.test_tuple_subclass_with_auto_2.<locals>.SomeEnumi	  r  r  r  r  rT   Nr  )r  s   r@   r  r  	  s2    %Ldfo.Etv~.Fdfo.ErB   r  r  rG   r  r  )r   r  r  r  s      @r@   test_tuple_subclass_with_auto_2+TestSpecial.test_tuple_subclass_with_auto_2	  s    *sL)	/t 	/
 	d8>>*H5--/CDhnn22A6--33Q7..33^D (	*	#dmmX^^<rB   c                 t    " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  [        UR                  5      S5        U R                  UR
                  R                  S5        U R                  U" S5      UR                  5        g )Nc                   ,    \ rS rSrSrSrSrS rS rSr	g)LTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumberi	  rT   c                 l    [        U R                  5      S-   n[        R                  U 5      nXl        U$ NrG   rJ   __members__r  r  r&  r  r  r   s      r@   r  TTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumber.__new__	  -    COO,q0nnS)#
rB   c                 ,    [        U R                  5      $ r  rf  r&  r  s    r@   r  TTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumber.__int__	      4<<((rB   N)
r`   ra   rb   rc   r4  r:  r;  r  r  rg   rT   rB   r@   
AutoNumberr  	  s    EFE
)rB   r  r)   r^   rG   )	r   r   r   r4  r:  r;  rf  r  r  )r   r  s     r@   ,test_duplicate_values_give_unique_enum_items8TestSpecial.test_duplicate_values_give_unique_enum_items	  s    
	) 
	) 	Z !!:#4#4j6F6FG	 	Z../3))//3jmZ%5%56rB   c                     " S S[         5      n " S SU5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  [        [        [        U5      5      / SQ5        g )Nc                        \ rS rSrS rS rSrg)ETestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumberi	  c                 l    [        U R                  5      S-   n[        R                  U 5      nXl        U$ r  r  r  s      r@   r  MTestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumber.__new__	  r  rB   c                 ,    [        U R                  5      $ r  r  r  s    r@   r  MTestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumber.__int__	  r  rB   rT   N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   r  r  	  s    
)rB   r  c                        \ rS rSrSrSrSrSrg)@TestSpecial.test_inherited_new_from_enhanced_enum.<locals>.Colori	  rT   Nr  rT   rB   r@   r  r  	      CEDrB   r  r  )r   r   r   r  r  r  maprf  r   r  r  s      r@   %test_inherited_new_from_enhanced_enum1TestSpecial.test_inherited_new_from_enhanced_enum	  s^    	) 	)	J 	 	euyy%++uzz&JKc#uo.	:rB   c                     " S S[         5      n " S SU5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  [        [        [        U5      5      / SQ5        g )Nc                       \ rS rSrS rSrg)BTestSpecial.test_inherited_new_from_mixed_enum.<locals>.AutoNumberi	  c                 l    [        U R                  5      S-   n[        R                  X5      nXl        U$ r  )rJ   r  rf  r  r&  r  s      r@   r  JTestSpecial.test_inherited_new_from_mixed_enum.<locals>.AutoNumber.__new__	  s-    COO,q0kk#-#
rB   rT   Nr+  rT   rB   r@   r  r  	      rB   r  c                        \ rS rSrSrSrSrSrg)=TestSpecial.test_inherited_new_from_mixed_enum.<locals>.Colori	  rT   Nr  rT   rB   r@   r  r  	  r  rB   r  r  )r	   r   r   r  r  r  r  rf  r  s      r@   "test_inherited_new_from_mixed_enum.TestSpecial.test_inherited_new_from_mixed_enum	  s^    	 		J 	 	euyy%++uzz&JKc#uo.	:rB   c                      " S S[         5      nU R                  [        UR                  5        U R                  UR                  [        5        g )Nc                       \ rS rSrSrSrg)/TestSpecial.test_equality.<locals>.OrdinaryEnumi	  rG   rT   N)r`   ra   rb   rc   r   rg   rT   rB   r@   OrdinaryEnumr#  	  r  rB   r$  )r   r   r%   r   )r   r$  s     r@   test_equalityTestSpecial.test_equality	  s6    	4 	LNN33rB   c                      " S S[         5      n " S SU5      nU R                  UR                  UR                  5        U R	                  UR
                  UR                  5        U R                  UR                  UR                  5        U R                  UR                  UR                  5        U R                  UR                  UR                  5        U R                  UR                  UR                  5        g )Nc                   ,    \ rS rSrS rS rS rS rSrg)3TestSpecial.test_ordered_mixin.<locals>.OrderedEnumi	  c                 r    U R                   UR                   L a  U R                  UR                  :  $ [        $ r  r  r&  NotImplementedr   r]  s     r@   __ge__:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__ge__	  +    >>U__4<<5==88%%rB   c                 r    U R                   UR                   L a  U R                  UR                  :  $ [        $ r  r+  r-  s     r@   __gt__:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__gt__	  +    >>U__4<<%--77%%rB   c                 r    U R                   UR                   L a  U R                  UR                  :*  $ [        $ r  r+  r-  s     r@   __le__:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__le__	  r0  rB   c                 r    U R                   UR                   L a  U R                  UR                  :  $ [        $ r  r+  r-  s     r@   __lt__:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__lt__	  r4  rB   rT   N)	r`   ra   rb   rc   r.  r2  r6  r9  rg   rT   rB   r@   OrderedEnumr)  	  s    &&&&rB   r;  c                   (    \ rS rSrSrSrSrSrSrSr	g)	-TestSpecial.test_ordered_mixin.<locals>.Gradei	  r  rr   r^   r)   rG   rT   Nr  rT   rB   r@   Grader=  	  r  rB   r>  )r   assertGreaterr  r  assertLessEqualr  r  
assertLessr  assertGreaterEqualr   rz  )r   r;  r>  s      r@   test_ordered_mixinTestSpecial.test_ordered_mixin	  s    	&$ 	&"	K 	 	577EGG,UWWegg.)1%''*EGGUWW-rB   c                      " S S[         5      n " S SU5      nU R                  [        5          " S SU5      nS S S 5        g ! , (       d  f       g = f)Nc                       \ rS rSrS rSrg)*TestSpecial.test_extending2.<locals>.Shadei	  c                 .    [        U R                  5        g r  )printr   r  s    r@   shade0TestSpecial.test_extending2.<locals>.Shade.shade	  s    dii rB   rT   Nr`   ra   rb   rc   rJ  rg   rT   rB   r@   ShaderG  	  r%  rB   rM  c                        \ rS rSrSrSrSrSrg)*TestSpecial.test_extending2.<locals>.Colori	  rG   r)   r^   rT   Nr  rT   rB   r@   r  rO  	  rx  rB   r  c                        \ rS rSrSrSrSrSrg).TestSpecial.test_extending2.<locals>.MoreColori	  rr   r  r  rT   Nr{  rT   rB   r@   r  rQ  	  r  rB   r  )r   r  r  r   rM  r  r  s       r@   test_extending2TestSpecial.test_extending2	  sB    	!D 	!	E 	 y)E  *))   A
Ac                      " S S[         5      n " S SU5      n " S SU5      nU R                  UR                  R                  5       S5        g )Nc                       \ rS rSrS rSrg)*TestSpecial.test_extending3.<locals>.Shadei
  c                     U R                   $ r  r3  r  s    r@   rJ  0TestSpecial.test_extending3.<locals>.Shade.shade
  s    yy rB   rT   NrL  rT   rB   r@   rM  rX  
  r%  rB   rM  c                       \ rS rSrS rSrg)*TestSpecial.test_extending3.<locals>.Colori
  c                      SU R                   -  $ )Nz%s hexlified!r  r  s    r@   r  .TestSpecial.test_extending3.<locals>.Color.hex	
  s    &33rB   rT   N)r`   ra   rb   rc   r  rg   rT   rB   r@   r  r\  
  r  rB   r  c                        \ rS rSrSrSrSrSrg).TestSpecial.test_extending3.<locals>.MoreColori
  rr   r  r  rT   Nr{  rT   rB   r@   r  r`  
  s    DGFrB   r  z5 hexlified!)r   r   r}  r  rR  s       r@   test_extending3TestSpecial.test_extending3
  sG    	!D 	!	4E 	4	 	 	**..0.ArB   c                      " S S[         5      n " S SU5      nU R                  [        UR                  5      U5        g )Nc                       \ rS rSrS rSrg)6TestSpecial.test_subclass_duplicate_name.<locals>.Basei
  c                     g r  rT   r  s    r@   rn  ;TestSpecial.test_subclass_duplicate_name.<locals>.Base.test
  r  rB   rT   Nr`   ra   rb   rc   rn  rg   rT   rB   r@   Basere  
      rB   ri  c                       \ rS rSrSrSrg)6TestSpecial.test_subclass_duplicate_name.<locals>.Testi
  rG   rT   Nrh  rT   rB   r@   r  rl  
      DrB   r  )r   r  r  rn  )r   ri  r  s      r@   test_subclass_duplicate_name(TestSpecial.test_subclass_duplicate_name
  s0    	4 		4 	d499ot,rB   c                   ^ SSK Jm   " U4S jS[        5      n " S SU5      nU R                  UR                  R                  S5        U R                  UR                  R
                  S5         " S	 S
[        5      n " S SU5      nU R                  UR                  R                  S5        U R                  UR                  R
                  S5        g )Nr   DynamicClassAttributec                   (   > \ rS rSr Y S 5       rSrg)>TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Basei
  c                     g)NdynamicrT   r  s    r@   rn  CTestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base.test
  s     rB   rT   Nrh  rq  s   r@   ri  rt  
  s    "! #!rB   ri  c                       \ rS rSrSrSrg)>TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Testi
  rG   rT   Nrh  rT   rB   r@   r  ry  
  rm  rB   r  rv  rG   c                   8    \ rS rSr\R
                  S 5       rSrg)?TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base2i#
  c                     g)Nflashy dynamicrT   r  s    r@   flashETestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base2.flash$
  s    'rB   rT   N)r`   ra   rb   rc   r1   r6  r~  rg   rT   rB   r@   Base2r{  #
  s    ]]( (rB   r  c                       \ rS rSrSrSrg)ry  i'
  rG   rT   N)r`   ra   rb   rc   r~  rg   rT   rB   r@   r  ry  '
  s    ErB   r}  )typesrr  r   r   rn  r  r~  )r   ri  r  r  rr  s       @r@   $test_subclass_duplicate_name_dynamic0TestSpecial.test_subclass_duplicate_name_dynamic
  s    /	!4 	!	4 	3!,	(D 	(	5 	))+;<))1-rB   c                      " S S[         5      n " S SU5      nU R                  [        5          " S SU5      nS S S 5        g ! , (       d  f       g = f)Nc                       \ rS rSrS rSrg)2TestSpecial.test_no_duplicates.<locals>.UniqueEnumi-
  c                    ^  T R                   n[        U 4S jU 5       5      (       a;  T R                  nU" T R                  5      R                  n[	        SU< SU< 35      eg )Nc              3   V   >#    U  H  nTR                   UR                   :H  v   M      g 7fr  r  )r  rN   r   s     r@   r  NTestSpecial.test_no_duplicates.<locals>.UniqueEnum.__init__.<locals>.<genexpr>0
  s     :ctzzQWW,cs   &)z$aliases not allowed in UniqueEnum:  z --> )r  anyr   r  r   )r   rL   r  r   rN   s   `    r@   r  ;TestSpecial.test_no_duplicates.<locals>.UniqueEnum.__init__.
  sU    nn:c:::		ADJJ,,A$ !%  ;rB   rT   Nr`   ra   rb   rc   r  rg   rT   rB   r@   
UniqueEnumr  -
  s    rB   r  c                        \ rS rSrSrSrSrSrg)-TestSpecial.test_no_duplicates.<locals>.Colori7
  rG   r)   r^   rT   Nr  rT   rB   r@   r  r  7
  rx  rB   r  c                   $    \ rS rSrSrSrSrSrSrg)r  i<
  rG   r)   r^   rT   N)	r`   ra   rb   rc   r  r  r  grenerg   rT   rB   r@   r  r  <
  s    rB   )r   r  r   )r   r  r  s      r@   test_no_duplicatesTestSpecial.test_no_duplicates,
  sB    		 			J 	 z*
  +**rU  c                      " S S[         5      nU R                  [        UR                  R                  S5      S5        U R                  UR                  R
                  S5        g )Nc                   ^    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
 r\R                  S 5       rSrg)%TestSpecial.test_init.<locals>.PlanetiC
  )gITf|Dg    
BA)gQX4Eg    WAgoEg    TXA)g	Dg    (IA)gcEg   A)g[\h}Eg    ，A)g#'?TQEg   _xA)gJ-UEg    wAc                     Xl         X l        g r  massradius)r   r  r  s      r@   r  .TestSpecial.test_init.<locals>.Planet.__init__L
  s     	$rB   c                 V    SnXR                   -  U R                  U R                  -  -  $ )NgyдW=r  )r   r  s     r@   surface_gravity5TestSpecial.test_init.<locals>.Planet.surface_gravityO
  s'      99}dkk(ABBrB   r  N)r`   ra   rb   rc   MERCURYVENUSEARTHMARSJUPITERSATURNURANUSNEPTUNEr  r1   r6  r  rg   rT   rB   r@   Planetr  C
  sI    +G+E,E+D+G+F+F+G% ]]C CrB   r  r)   g#@r  )r   r   roundr  r  r  )r   r  s     r@   	test_initTestSpecial.test_initB
  sN    	CT 	C" 	v||;;Q?F++-CDrB   c                     " S S[         [        5      nU R                  [        US5      5        U R                  [        US5      5        U R                  [        US5      5        U R	                  [        UR                  [         5      5        U R	                  UR                  UR                  L 5        U R	                  UR                  UR                  L 5        g )Nc                       \ rS rSrSrS rSr\" 5       r\	" S5       H  r
\
S-  S4\S\
-  '   M     \	" S	5       H  r
\
S
-  S4\S\
-  '   M     \	" S5       H  r
\
S4\S\
-  '   M     \r\r\rSrg)'TestSpecial.test_ignore.<locals>.PeriodiX
  z
different lengths of time
c                 J    [         R                  " X5      nXl        X#l        U$ r  )r(   r  r&  period)r  r  r  r   s       r@   r  /TestSpecial.test_ignore.<locals>.Period.__new__\
  s!    ''3##

rB   zPeriod ir?  r#  r}  zmonth_%d5   r   weekzweek_%d    dayzday_%drT   N)r`   ra   rb   rc   r  r  _ignore_varsre  r   r!  day_1OneDayweek_1OneWeekmonth_1OneMonthrg   rT   rB   r@   re  r  X
  s    
 "HVF2Y)*2wzA~& 2Y()!Vy1}% 2Y'(%xx!|$ FGHrB   re  r  r!  )r(   r   r   r  r   rH   r  r  day_30week_4day_28rf  s     r@   test_ignoreTestSpecial.test_ignoreW
  s    	Y 	( 	4523-.
6<<;<&--7867rB   c                 b    " S S[         5      n " S SU5      nU R                  [        U5      UR                  UR                  UR
                  /5        [        U[        S5      5       H@  u  p4US-  nU R                  UR                  U/5        U R                  U" U/5      U5        MB     g )Nc                       \ rS rSrS rSrg)9TestSpecial.test_nonhash_value.<locals>.AutoNumberInAListit
  c                 n    [        U R                  5      S-   /n[        R                  U 5      nXl        U$ r  r  r  s      r@   r  ATestSpecial.test_nonhash_value.<locals>.AutoNumberInAList.__new__u
  s0    S__-12nnS)#
rB   rT   Nr+  rT   rB   r@   AutoNumberInAListr  t
  r  rB   r  c                        \ rS rSrSrSrSrSrg)4TestSpecial.test_nonhash_value.<locals>.ColorInAListiz
  rT   Nr  rT   rB   r@   ColorInAListr  z
  r  rB   r  r^   rG   )
r   r   r   r  r  r  r  r   r  r  )r   r  r  r1   r  s        r@   test_nonhash_valueTestSpecial.test_nonhash_values
  s    	 		, 	 	l+l.>.>@R@RT`TeTe-fg|U1X6KDQJETZZ%1MM,w/6 7rB   c                      " S S[         [        5      n " S SU5      nU R                  [        U5      UR                  UR
                  /5        U R                  UR                  S5        U R                  U" S5      UR                  5        g )Nc                       \ rS rSrS rSrg)KTestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledIntEnumi
  c                 P    Uu  p#[         R                  X5      nX4l        X$l        U$ r  )rf  r  labelr&  )r  rL   r  r  r   s        r@   r  STestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledIntEnum.__new__
  s&    #kk#-!	#
rB   rT   Nr+  rT   rB   r@   LabelledIntEnumr  
  s    rB   r  c                       \ rS rSrSrSrSrg)HTestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledListi
  )rG   Unprocessed)r)   zPayment CompleterT   N)r`   ra   rb   rc   unprocessedpayment_completerg   rT   rB   r@   LabelledListr  
  s    ,K6rB   r  rG   )rf  r   r   r   r  r  )r   r  r  s      r@   &test_conflicting_types_resolved_in_new2TestSpecial.test_conflicting_types_resolved_in_new
  st    	c4 		7? 	7 	l+l.F.FHeHe-fg1115a,*B*BCrB   c                      " S S[         5      n U" S5        [        S5      e! [         a'  nU R                  UR                  S L 5         S nAg S nAff = f)Nc                        \ rS rSrSrSrSrSrg)DTestSpecial.test_default_missing_no_chained_exception.<locals>.Colori
  rG   r)   r^   rT   Nr`   ra   rb   rc   r  r  r  rg   rT   rB   r@   r  r  
  rx  rB   r  r   Exception not raised.)r   rI   r   r   r  r   r  excs      r@   )test_default_missing_no_chained_exception5TestSpecial.test_default_missing_no_chained_exception
  sR    	D 		5!H 344  	5OOCOOt344	5s   $ 
AAAc                 D    " S S[         5      nU R                  U" S5      UR                  5         U" S5        [        S5      e! [         a'  nU R                  UR                  S L 5         S nAOS nAff = f U" S5        [        S5      e! [         a3  nU R                  [        UR                  [        5      5         S nAOS nAff = f U" S5        [        S5      e! [         a3  nU R                  [        UR                  [        5      5         S nAg S nAff = f)Nc                   0    \ rS rSrSrSrSr\S 5       rSr	g)0TestSpecial.test_missing_override.<locals>.Colori
  rG   r)   r^   c                 N    US:X  a  U R                   $ US:X  a  gUS:X  a  [        eg )Nr  
bad returnr  	error out)r  ZeroDivisionError)r  r`  s     r@   r  :TestSpecial.test_missing_override.<locals>.Color._missing_
  s0    7?88O\)[(++  rB   rT   N)
r`   ra   rb   rc   r  r  r  r  r  rg   rT   rB   r@   r  r  
  s#    CED
  
 rB   r  r  r   r  r  r  )
r   r  r  rI   r   r   r  r  rH   r  r  s      r@   test_missing_override!TestSpecial.test_missing_override
  s    	 D 	   	eGnejj1	5!H 344  	5OOCOOt344	5	5, 344  	EOOJs
CDD	E	5+ 344 ! 	EOOJs
CDD	EsG   A 
A7A22A7;B 
C)CCC" "
D,)DDc                 J  ^ SS K nSS Kn " S S[        R                  5      m " S S5      n " U4S jS5      nUR	                  U" 5       5      nUR	                  U" 5       5      nUR                  5         U R                  U" 5       S 5        U R                  U" 5       S 5        g )Nr   c                       \ rS rSrSrSrSrg);TestSpecial.test_missing_exceptions_reset.<locals>.TestEnumi
  val1val2rT   N)r`   ra   rb   rc   VAL1VAL2rg   rT   rB   r@   TestEnumr  
  s    DDrB   r  c                       \ rS rSrS rSrg)9TestSpecial.test_missing_exceptions_reset.<locals>.Class1i
  c                 8     [        5       e! [          a     g f = fr  r   r  s    r@   r  BTestSpecial.test_missing_exceptions_reset.<locals>.Class1.__init__
  s!    $,&! s   
 
rT   Nr  rT   rB   r@   Class1r  
  s    rB   r  c                   "   > \ rS rSrU 4S jrSrg)9TestSpecial.test_missing_exceptions_reset.<locals>.Class2i
  c                 8   >  T" S5        g ! [          a     g f = f)Ninvalid_valuer  )r   r  s    r@   r  BTestSpecial.test_missing_exceptions_reset.<locals>.Class2.__init__
  s"    _-! s    
rT   Nr  )r  s   r@   Class2r   
  s     rB   r  )gcweakrefr1   r   refcollectr  )r   r  r  r  r  class_1_refclass_2_refr  s          @r@   test_missing_exceptions_reset)TestSpecial.test_missing_exceptions_reset
  sz    	tyy 		 		 	 kk&(+kk&(+
 	

kmT*kmT*rB   c                   ^
  " S S5      n " S S5      m
 " S S[         5      n " S S[         5      n " S	 S
U[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  UR                  S5        U R                  [        UR
                  5      S5         " U
4S jS
UT
[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  UR                  S5        U R                  [        UR
                  5      S5         " U
4S jS
T
U[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  UR                  S5        U R                  [        UR
                  5      S5         " U
4S jST
U[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  [        UR
                  5      S5        U R                  UR                  R                  5       S5         " U
4S jST
U[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  [        UR
                  5      S5        U R                  UR                  R                  5       S5        U R                  UR                  R                  5       S5         " U
4S jST
X#5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  [        UR
                  5      S5        U R                  UR                  R                  5       S5        U R                  UR                  R                  5       S5         " U
4S jST
X25      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  [        UR
                  5      S5        U R                  UR                  R                  5       S5        U R                  UR                  R                  5       S5         " U
4S jST
[        X#5      n	U R                  U	R                  R                  S5        U R                  U	R                  R                  S5        U R                  U	R
                  R                  S5        U R                  [        U	R
                  5      S5        U R                  U	R                  R                  5       S5        U R                  UR                  R                  5       S5        U R                  [        U	[        5      5        g )Nc                   $    \ rS rSr\S 5       rSrg)1TestSpecial.test_multiple_mixin.<locals>.MaxMixini
  c                 (    [        U 5      nXl        U$ r  )rJ   MAX)r  maxs     r@   r  5TestSpecial.test_multiple_mixin.<locals>.MaxMixin.MAX
  s    #h
rB   rT   N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   MaxMixinr  
  s     rB   r  c                       \ rS rSrS rSrg)1TestSpecial.test_multiple_mixin.<locals>.StrMixini
  c                 6    U R                   R                  5       $ r  r]  lowerr  s    r@   rE  9TestSpecial.test_multiple_mixin.<locals>.StrMixin.__str__
      {{((**rB   rT   Nr`   ra   rb   rc   rE  rg   rT   rB   r@   StrMixinr  
      +rB   r  c                       \ rS rSrS rSrg)1TestSpecial.test_multiple_mixin.<locals>.SomeEnumi
  c                     g)NbooyahrT   r  s    r@   behavior:TestSpecial.test_multiple_mixin.<locals>.SomeEnum.behavior
      rB   rT   N)r`   ra   rb   rc   r#  rg   rT   rB   r@   r  r   
  s     rB   r  c                        \ rS rSrS rS rSrg)4TestSpecial.test_multiple_mixin.<locals>.AnotherEnumi
  c                     g)Nnuhuh!rT   r  s    r@   r#  =TestSpecial.test_multiple_mixin.<locals>.AnotherEnum.behavior
  r%  rB   c                     g)N
what's up?rT   r  s    r@   social;TestSpecial.test_multiple_mixin.<locals>.AnotherEnum.social
  s    #rB   rT   N)r`   ra   rb   rc   r#  r-  rg   rT   rB   r@   AnotherEnumr'  
  s     $rB   r/  c                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg).TestSpecial.test_multiple_mixin.<locals>.Colori
  rT   N	r`   ra   rb   rc   r   r  r  r  rg   rT   rB   r@   r  r1  
      &CFE6DrB   r  rG   r)   r^   
Color.BLUEc                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)r1  i  rT   N
r`   ra   rb   rc   r   r  r  r  rE  rg   r  s   r@   r  r1    #    &CFE6D&&GrB   r  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)r1  i  rT   Nr6  r7  s   r@   r  r1    r8  rB   c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)2TestSpecial.test_multiple_mixin.<locals>.CoolColori  rT   Nr6  r7  s   r@   	CoolColorr;    r8  rB   r<  r"  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)4TestSpecial.test_multiple_mixin.<locals>.CoolerColori!  rT   Nr6  r7  s   r@   CoolerColorr>  !  r8  rB   r?  r)  r,  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)5TestSpecial.test_multiple_mixin.<locals>.CoolestColori,  rT   Nr6  r7  s   r@   CoolestColorrA  ,  r8  rB   rB  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)6TestSpecial.test_multiple_mixin.<locals>.ConfusedColori7  rT   Nr6  r7  s   r@   ConfusedColorrD  7  r8  rB   rE  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)6TestSpecial.test_multiple_mixin.<locals>.ReformedColoriB  rT   Nr6  r7  s   r@   ReformedColorrG  B  r8  rB   rH  )r   r   r  r  r  r  r  r  r#  r-  r	   r   r<  rf  )r   r  r  r/  r  r<  r?  rB  rE  rH  r  s             @r@   test_multiple_mixinTestSpecial.test_multiple_mixin
  sf   	 		+ 	+	 t 	 	$$ 	$
	Hd 	 	!,**A.))1-A&UZZ,7	'Hh 	'
 	!,**A.))1-A&UZZ&1	'Hh 	'
 	!,**A.))1-A&UZZ&1	'(D 	'
 	,,a0..2--q1Y^^,f5//18<	'(K 	'
 	..2**00!4))//3[--.7113X>//1<@	'8X 	'
 	))//3++1115**00!4\../8))224h?))002LA	'Hk 	'
 	**00!4,,22A6++1115]//0&9**335x@**113\B	'Hgx 	'
 	**00!4,,22A6++1115]//0&9**335x@**113\B
=#67rB   c                 z    [          " S S[        5      5       n " S S[        5      n[          " S SU5      5       ng )Nc                        \ rS rSrSrSrSrSrg)<TestSpecial.test_multiple_inherited_mixin.<locals>.Decision1iP  REVERT
REVERT_ALLRETRYrT   Nr`   ra   rb   rc   rN  rO  rP  rg   rT   rB   r@   	Decision1rM  P      F%JErB   rR  c                       \ rS rSrSrg)9TestSpecial.test_multiple_inherited_mixin.<locals>.MyEnumiU  rT   Nr   rT   rB   r@   r   rU  U  r   rB   r   c                        \ rS rSrSrSrSrSrg)<TestSpecial.test_multiple_inherited_mixin.<locals>.Decision2iW  rN  rO  rP  rT   NrQ  rT   rB   r@   	Decision2rW  W  rS  rB   rX  )r   r
   )r   rR  r   rX  s       r@   test_multiple_inherited_mixin)TestSpecial.test_multiple_inherited_mixinO  s@    		 	 
		W 			 	 
	rB   c                   ^  " S S[         5      n " S S5      m " U4S jSTU[        R                  5      n " S SU5      nU R                  [	        UR
                  U5      5        U R                  UR                  U5        U R                  [        UR
                  5      S	5         " S
 SU5      nU R                  UR
                  S5        g )Nc                   (   ^  \ rS rSrU 4S jrSrU =r$ )8TestSpecial.test_multiple_mixin_inherited.<locals>.MyInti^  c                 "   > [         TU ]  X5      $ r  r  )r  r  r  s     r@   r  @TestSpecial.test_multiple_mixin_inherited.<locals>.MyInt.__new___  s    ws22rB   rT   r%  r  s   @r@   r$  r]  ^  s    3 3rB   r$  c                       \ rS rSrS rSrg);TestSpecial.test_multiple_mixin_inherited.<locals>.HexMixinib  c                     [        U 5      $ r  r  r  s    r@   r^  DTestSpecial.test_multiple_mixin_inherited.<locals>.HexMixin.__repr__c  r  rB   rT   Nr  rT   rB   r@   HexMixinra  b  r%  rB   rd  c                   0   > \ rS rSr Y R                  rSrg)<TestSpecial.test_multiple_mixin_inherited.<locals>.MyIntEnumif  rT   Nr  )rd  s   r@   	MyIntEnumrf  f  s    ((HrB   rg  c                       \ rS rSrSrSrg)6TestSpecial.test_multiple_mixin_inherited.<locals>.Fooii  rG   rT   N)r`   ra   rb   rc   TESTrg   rT   rB   r@   r&  ri  i  rm  rB   r&  0x1c                       \ rS rSrSrS rSrg)6TestSpecial.test_multiple_mixin_inherited.<locals>.Feeio  rG   c                 F    US-  n[         R                  X5      nXl        U$ r  rf  r  r&  )r  r  r   s      r@   r  >TestSpecial.test_multiple_mixin_inherited.<locals>.Fee.__new__q  s#    
S0!&rB   rT   N)r`   ra   rb   rc   rj  r  rg   rT   rB   r@   Feerm  o  s    DrB   rq  r)   )	rf  r1   r   r   rH   rj  r   r  r  )r   r$  rg  r&  rq  rd  s        @r@   test_multiple_mixin_inherited)TestSpecial.test_multiple_mixin_inherited]  s    	3C 	3	! 	!	)% 	)	) 	
388U34**E2chh/	) 	 	1%rB   c                     " S S[         [        5      n " S S[         [        5      n " S SX5      nUnU R                  [        U5      UR                  UR
                  UR                  /5        U R                  UR                  S5        U R                  UR                  R                  S5        U R                  U" S5      UR                  5        U R                  UR                  R                  5        U" S	5      nU R                  [        U5      UR                  UR
                  UR                  /5        U R                  UR                  S5        U R                  UR                  R                  S5        U R                  U" S5      UR                  5        U R                  UR                  R                  5        U R                  [        XT5      5        U R                  UR                  5        g )
Nc                   2   ^  \ rS rSr\U 4S j5       rSrU =r$ )UTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.CaseInsensitiveStrEnumiy  c                    > U R                   R                  5        H3  nUR                  R                  5       UR                  5       :X  d  M1  Us  $    [        TU ]  U5      $ r  )_member_map_rp  r&  r  r  r  )r  r  r   r  s      r@   r  _TestSpecial.test_multiple_mixin_with_common_data_type.<locals>.CaseInsensitiveStrEnum._missing_z  sN    !..557F~~++->% 8 w(//rB   rT   )r`   ra   rb   rc   r  r  rg   r  r  s   @r@   CaseInsensitiveStrEnumrv  y  s    0 0rB   rz  c                   N    \ rS rSrS r\S 5       r\R                  S 5       r	Sr
g)MTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnumi  c                     SU l         g )NT_valid)r   rL   s     r@   r  VTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum.__init__  s	    "rB   c                     U R                   R                  X5      nSUl        UR                  5       Ul        Xl        X R                  U'   U$ )NF)r  r  r  rD  r]  r&  rx  )r  r  unknowns      r@   r  WTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum._missing_  sD    ++33C?!&!&"'*1  'rB   c                     U R                   $ r  r~  r  s    r@   validSTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum.valid  s    {{"rB   r~  N)r`   ra   rb   rc   r  r  r  r1   r6  r  rg   rT   rB   r@   LenientStrEnumr|    s1    #  ]]# #rB   r  c                        \ rS rSrSrSrSrSrg)HTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.JobStatusi  activepending
terminatedrT   N)r`   ra   rb   rc   ACTIVEPENDING
TERMINATEDrg   rT   rB   r@   	JobStatusr    s    FG%JrB   r  r  Activemissing)r  r   r   r   r  r  r  r  r  r   r  rH   r   )r   rz  r  r  JSr  s         r@   )test_multiple_mixin_with_common_data_type5TestSpecial.test_multiple_mixin_with_common_data_typex  sX   	0S$ 	0	#S$ 	#	&. 	&
 i299bjj"--*PQH-(3blBII.		(Y-i299bjj"--*PQH-(3blBII.		(
7/0'rB   c                 B    Sn[        USS5      n0 n0 n[        XU5        g )Nz8from enum import Enum; Enum('Animal', 'ANT BEE CAT DOG')z<string>exec)compiler  )r   code	global_nslocal_lss       r@   test_empty_globalsTestSpecial.test_empty_globals  s,     JtZ0	Th'rB   c                   ^
  " S S[         5      nU R                  UR                  S5        U R                  [        UR                  5      S5        U R                  SR	                  UR                  5      S5        U R                  UR                  [        UR                  5      5        U R                  UR                  SR	                  UR                  5      5        U R                  [        UR                  5      S5         " S S5      m
 " U
4S jS	T
[         5      nU R                  UR                  S
5        U R                  [        UR                  5      S5         " S S[        5      n " S SU[         5      nU R                  UR                  S5        U R                  UR                  [        UR                  5      5         " S S5      n " S SXS[         5      nU R                  UR                  S5        U R                  UR                  [        UR                  5      5        U R                  [        S5          " S S[         5      nS S S 5        U R                  [        S5          " S S[         5      nS S S 5        U R                  [        S5          " S S[         5      n	S S S 5        U R                  [        S[        R                  < 35          " S S[         5      n	S S S 5        U R                  [        S 5          " S! S[         5      n	S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Np= f! , (       d  f       g = f)"Nc                   $    \ rS rSrSrSrSrSrSrg)-TestSpecial.test_strenum.<locals>.GoodStrEnumi  r|  r}     3ascii   4latin1r  rT   N	r`   ra   rb   rc   r  r  r  fourrg   rT   rB   r@   GoodStrEnumr        CC!E+DrB   r  r|  r  z<GoodStrEnum.one: '1'>c                       \ rS rSrS rSrg)+TestSpecial.test_strenum.<locals>.DumbMixini  c                     gNdon't do thisrT   r  s    r@   rE  3TestSpecial.test_strenum.<locals>.DumbMixin.__str__      &rB   rT   Nr  rT   rB   r@   	DumbMixinr    r  rB   r  c                   <   > \ rS rSrSrSrSr Y R                  rSrg)-TestSpecial.test_strenum.<locals>.DumbStrEnumi  r  67rT   N	r`   ra   rb   rc   fivesixsevenrE  rg   r  s   r@   DumbStrEnumr        DCE''GrB   r  r  r  c                       \ rS rSrS rSrg)+TestSpecial.test_strenum.<locals>.EnumMixini  c                 "    [        SU < 35        g Nzhello from rI  r  s    r@   r  1TestSpecial.test_strenum.<locals>.EnumMixin.hello      01rB   rT   Nr  rT   rB   r@   	EnumMixinr        2rB   r  c                       \ rS rSrSrSrg)+TestSpecial.test_strenum.<locals>.HelloEnumi  8rT   Nr`   ra   rb   rc   eightrg   rT   rB   r@   	HelloEnumr        ErB   r  r  c                       \ rS rSrS rSrg).TestSpecial.test_strenum.<locals>.GoodbyeMixini  c                     [        S5        g Nz%s wishes you a fond farewellr  r  s    r@   goodbye6TestSpecial.test_strenum.<locals>.GoodbyeMixin.goodbye      56rB   rT   Nr`   ra   rb   rc   r  rg   rT   rB   r@   GoodbyeMixinr        7rB   r  c                       \ rS rSrSrSrg)-TestSpecial.test_strenum.<locals>.GoodbyeEnumi  9rT   Nr`   ra   rb   rc   ninerg   rT   rB   r@   GoodbyeEnumr        DrB   r  r  z1 is not a stringc                       \ rS rSrSrSrSrg)4TestSpecial.test_strenum.<locals>.FirstFailedStrEnumi  rG   r}  rT   Nr  rT   rB   r@   FirstFailedStrEnumr    s    rB   r  z2 is not a stringc                        \ rS rSrSrSrSrSrg)5TestSpecial.test_strenum.<locals>.SecondFailedStrEnumi  r|  r)   r~  rT   Nr  rT   rB   r@   SecondFailedStrEnumr    s    rB   r  c                       \ rS rSrSrSrSrg)4TestSpecial.test_strenum.<locals>.ThirdFailedStrEnumi  r|  r)   rT   Nr  rT   rB   r@   ThirdFailedStrEnumr    s    rB   r  zencoding must be a string, not c                   4    \ rS rSrSrS\R                  4rSrg)r  i  r|     2rT   N	r`   ra   rb   rc   r  r9   getdefaultencodingr  rg   rT   rB   r@   r  r        C222rB   zerrors must be a string, not 9c                       \ rS rSrSrSrSrg)r  i  r|  r  r  rG  rT   Nr  rT   rB   r@   r  r        &rB   )r
   r   r  r  r  r  r  r   r  r  r   r  r9   r  )r   r  r  r  r  r  r  r  r  r  r  s             @r@   test_strenumTestSpecial.test_strenum  s   	,' 	,
 	#.[__-s3[__5s;#koo*>?$++koo*FGkoo.0HI	' 	'	()W 	(
 	**C0[../A	2 	2		7 	#.#ioo*>?	7 	7	,7 	))3/))3{/?/?+@A##I/BCW  D ##I/BCg  D
 ##I/BCW  D ##IVYVlVl/op3W 3 q ##I/OP'W ' QP# DC DC
 DC qp QPs<   	L,7L=%M%MM0,
L:=
M
M
M-0
M>c                   ^  " S S[         [        5      n " S SU5      nU R                  UR                  S5        U R                  [        UR                  5      S5        U R                  SR	                  UR                  5      S5        U R                  [        UR                  5      S5         " S	 S
5      m " U4S jSTU5      nU R                  UR                  S5        U R                  [        UR                  5      S5         " S S[        5      n " S SXA5      nU R                  UR                  S5        U R                  [        UR                  5      S5         " S S5      n " S SXdU5      nU R                  UR                  S5        U R                  [        UR                  5      S5         " S SU5      n " S SU5      n	 " S S U5      n
U R                  [        S!5          " S" S U5      n
S S S 5        U R                  [        S#5          " S$ S U5      n
S S S 5        g ! , (       d  f       N9= f! , (       d  f       g = f)%Nc                       \ rS rSrSrg)6TestSpecial.test_custom_strenum.<locals>.CustomStrEnumi  rT   Nr   rT   rB   r@   CustomStrEnumr    r   rB   r  c                   $    \ rS rSrSrSrSrSrSrg)1TestSpecial.test_custom_strenum.<locals>.OkayEnumi  r|  r}  r  r  rT   Nr  rT   rB   r@   OkayEnumr    r  rB   r  r|  zOkayEnum.oner  z<OkayEnum.one: '1'>c                       \ rS rSrS rSrg)2TestSpecial.test_custom_strenum.<locals>.DumbMixini  c                     gr  rT   r  s    r@   rE  :TestSpecial.test_custom_strenum.<locals>.DumbMixin.__str__  r  rB   rT   Nr  rT   rB   r@   r  r    r  rB   r  c                   <   > \ rS rSrSrSrSr Y R                  rSrg)4TestSpecial.test_custom_strenum.<locals>.DumbStrEnumi  r  r  r  rT   Nr  r  s   r@   r  r    r  rB   r  r  r  c                       \ rS rSrS rSrg)2TestSpecial.test_custom_strenum.<locals>.EnumMixini  c                 "    [        SU < 35        g r  r  r  s    r@   r  8TestSpecial.test_custom_strenum.<locals>.EnumMixin.hello  r  rB   rT   Nr  rT   rB   r@   r  r	    r  rB   r  c                       \ rS rSrSrSrg)2TestSpecial.test_custom_strenum.<locals>.HelloEnumi  r  rT   Nr  rT   rB   r@   r  r	    r  rB   r  r  zHelloEnum.eightc                       \ rS rSrS rSrg)5TestSpecial.test_custom_strenum.<locals>.GoodbyeMixini  c                     [        S5        g r  r  r  s    r@   r  =TestSpecial.test_custom_strenum.<locals>.GoodbyeMixin.goodbye  r  rB   rT   Nr  rT   rB   r@   r  r	    r  rB   r  c                       \ rS rSrSrSrg)4TestSpecial.test_custom_strenum.<locals>.GoodbyeEnumi  r  rT   Nr  rT   rB   r@   r  r	    r  rB   r  r  zGoodbyeEnum.ninec                       \ rS rSrSrSrSrg);TestSpecial.test_custom_strenum.<locals>.FirstFailedStrEnumi  rG   r}  rT   Nr  rT   rB   r@   r  r	    s    CCrB   r  c                        \ rS rSrSrSrSrSrg)<TestSpecial.test_custom_strenum.<locals>.SecondFailedStrEnumi  r|  r  r~  rT   Nr  rT   rB   r@   r  r	    s    CCErB   r  c                       \ rS rSrSrSrSrg);TestSpecial.test_custom_strenum.<locals>.ThirdFailedStrEnumi  r|  r)   rT   Nr  rT   rB   r@   r  r	    s    CCrB   r  z)argument (2|'encoding') must be str, not c                   4    \ rS rSrSrS\R                  4rSrg)r	  i  r|  r  rT   Nr  rT   rB   r@   r  r	    r  rB   z'argument (3|'errors') must be str, not c                       \ rS rSrSrSrSrg)r	  i$  r|  r  rT   Nr  rT   rB   r@   r  r	  $  r  rB   )r  r   r   r  r  r  r  r  r  r   r  )r   r  r  r  r  r  r  r  r  r  r  r  s              @r@   test_custom_strenumTestSpecial.test_custom_strenum  s   	C 		,} 	,
 	s+X\\*N;X\\2NChll+-BC	' 	'	()] 	(
 	**C0[../A	2 	2		 	#.Y__-/@A	7 	7	,= 	))3/[--.0BC	 		- 		 	 ##I<>3] 3>
 ##I:<'] '< <> >
< <s   5H4I4
I
Ic                     U R                  [        S5          " S S[        [        5      nS S S 5        g ! , (       d  f       g = f)Nz_value_ not set in __new__c                   0    \ rS rSrS rS rSrSrSrSr	Sr
g	)
6TestSpecial.test_missing_value_error.<locals>.Combinedi*  c                     [         R                  X5      nSU;   a&  UR                  SS5      u  pEUR                  S5      nOUnS nXCl        XSl        X#l        U$ )Nr  rG   z ))r  r  ry  stripfis_namesegmentsequence)r  r  r	  r1   r	  r	  s         r@   r  >TestSpecial.test_missing_value_error.<locals>.Combined.__new__,  sV    ;;s2De|,1KKQ,?)")--"5#("&$,M#*L$,MKrB   c                 T    SU R                   R                  < SU R                  < S3$ )N<rY   r  )r  r`   r]  r  s    r@   r^  ?TestSpecial.test_missing_value_error.<locals>.Combined.__repr__9  s    (,(?(?MMrB   )zAn$(1,2)r   )zAn$(3,2)rG   )zAn$(5,1)r)   )zBn$r^   rT   N)r`   ra   rb   rc   r  r^  key_type
company_idr  r'  rg   rT   rB   r@   Combinedr	  *  s#     N !. -
 - -rB   r$	  )r   r  r  r   )r   r$	  s     r@   test_missing_value_error$TestSpecial.test_missing_value_error(  s.    ##I/KL.3 . MLLs	   5
Ac                      " S S[         5      nU R                  UR                  S5        U R                  UR                  S5        g )Nc                       \ rS rSrSrSrSrg)FTestSpecial.test_private_variable_is_normal_attribute.<locals>.PrivateiC  RadarHoolihanrT   N)r`   ra   rb   rc   _Private__corporal_Private__major_rg   rT   rB   r@   Privater)	  C  s     J!HrB   r.	  r*	  r+	  )r   r   r,	  r-	  )r   r.	  s     r@   )test_private_variable_is_normal_attribute5TestSpecial.test_private_variable_is_normal_attributeB  s<    	"d 	" 	33W=11:>rB   c                     " S S[         5      nUR                  R                  nU R                  X!R                  5        U R                  UR                  US   5        U R                  UR                  R                  S5        g )Nc                        \ rS rSrSrSrSrSrg)6TestSpecial.test_member_from_member_access.<locals>.DiiJ  rG   r   r^   rT   N)r`   ra   rb   rc   YESNOr   rg   rT   rB   r@   Dir3	  J  s    CBDrB   r6	  r   )r   r4	  r5	  r  r   r   )r   r6	  warns      r@   test_member_from_member_access*TestSpecial.test_member_from_member_accessI  s[    	 	 vvyydEE"bggr&z*v.rB   c                   ^ SSSS.m " U4S jS[         5      nU R                  [        U5      UR                  UR                  /5        U R                  UR                  R
                  S5        U R                  UR                  R                  5       S5        U R                  [        S5          " U4S	 jS
[         5      nS S S 5        g ! , (       d  f       g = f)Nalooffriendlyr	  )FOO_CATBAR_DOG	FOO_HORSEc            
          > \ rS rSr\" 5       R                   YR                  5        V VVs0 s H  u  pUR                  S5      (       d  M  X_M!     snnn 5        S rSr	gs  snnn f )ATestSpecial.test_dynamic_members_with_static_methods.<locals>.FooiV  FOO_c                 6    U R                   R                  5       $ r  r  rD  r  s    r@   rD  GTestSpecial.test_dynamic_members_with_static_methods.<locals>.Foo.upper\  s    zz''))rB   rT   N
r`   ra   rb   rc   r  updater  
startswithrD  rg   r  r!  r"  foo_definess   000r@   r&  rA	  V  sQ    FMM + 1 1 3 3||F+ AD 3 
*s   A"A"r&  ru   z$'FOO_CAT' already defined as 'aloof'c            
          > \ rS rSr\" 5       R
                  "  YR                  5        V VVs0 s H  u  pUR                  S5      (       d  M  X_M!     snnn 40 SS0D6  S rSr	gs  snnn f )DTestSpecial.test_dynamic_members_with_static_methods.<locals>.FooBaric  rB	  r=	  smallc                 6    U R                   R                  5       $ r  rD	  r  s    r@   rD  JTestSpecial.test_dynamic_members_with_static_methods.<locals>.FooBar.upperk  s    ::++--rB   rT   NrF	  rI	  s   000r@   FooBarrL	  c  s`    $/$5$5$7$7DA<</ $7 
 %g..s   A&A&rP	  )	r   r   r   r=	  r?	  r  rD  r   r  )r   r&  rP	  rJ	  s      @r@   (test_dynamic_members_with_static_methods4TestSpecial.test_dynamic_members_with_static_methodsS  s    ")juU	*$ 	* 	cS[[#--$@A**G4,,.6##I/UV	. 	. WVVs   1C
Cc                   ^ SSK JnJm  U" SS9 " S S5      5       n " S SU[        5      nU R	                  [        UR                  5      S	5        U R                  UR                  R                  U" S
5      :H  UR                  R                  5        U R                  [        UR                  U5      5        U R                  UR                  UL UR                  5        U " U4S jS5      5       n " S SU[        5      nU R	                  [        UR                  5      S5         " S S5      nU" SS9 " U4S jSU5      5       n " S SU[        5      nU R	                  [        UR                  5      S5        U" SS9 " U4S jS5      5       n " S SU[        5      nU R                  [        UR                  5      S5        g)z)ensure dataclass-mixin has correct repr()r   )	dataclassfieldF)r  c                   *    \ rS rSr% Sr\\S'   S rSrg)1TestSpecial.test_repr_with_dataclass.<locals>.Fooit  r&  r   c                     g)Nzha hah!rT   r  s    r@   r^  :TestSpecial.test_repr_with_dataclass.<locals>.Foo.__repr__x  s     rB   rT   N)r`   ra   rb   rc   rf  __annotations__r^  rg   rT   rB   r@   r&  rW	  t  s     LF!rB   r&  c                       \ rS rSrSrSrg)5TestSpecial.test_repr_with_dataclass.<locals>.Entriesiz  rG   rT   Nr`   ra   rb   rc   ENTRY1rg   rT   rB   r@   Entriesr\	  z      FrB   r_	  z<Entries.ENTRY1: ha hah!>rG   c                   J   > \ rS rSr% Sr\\S'   \\S'    Y " SSS9r\\S'   S	r	g
)?TestSpecial.test_repr_with_dataclass.<locals>.CreatureDataMixini  CreatureDataMixinsizelegsFTr  defaulttailrT   N
r`   ra   rb   rc   r  rZ	  rf  rh	  r  rg   rU	  s   r@   rc	  rb	    #    .LIIE48D$8rB   rc	  c                        \ rS rSrSrSrSrSrg)6TestSpecial.test_repr_with_dataclass.<locals>.Creaturei  CreaturerM	  r  mediumrr   rT   Nr`   ra   rb   rc   BEETLEDOGrg   rT   rB   r@   rn	  rm	        %L!FCrB   rn	  z%<Creature.DOG: size='medium', legs=4>c                       \ rS rSrS rSrg)1TestSpecial.test_repr_with_dataclass.<locals>.Huhi  c                     g)N	inheritedrT   r  s    r@   r^  :TestSpecial.test_repr_with_dataclass.<locals>.Huh.__repr__  s    "rB   rT   Nr  rT   rB   r@   r  rw	    s    #rB   r  c                   J   > \ rS rSr% Sr\\S'   \\S'    Y " SSS9r\\S'   S	r	g
)rb	  i  rc	  rd	  re	  FTrf	  rh	  rT   Nri	  rj	  s   r@   rc	  rb	    rk	  rB   c                        \ rS rSrSrSrSrSrg)rm	  i  rn	  ro	  rp	  rT   Nrr	  rT   rB   r@   rn	  rm	    ru	  rB   z<Creature.DOG: inherited>c                   J   > \ rS rSr% Sr\\S'   \\S'    Y " SSS9r\\S'   S	r	g
)rb	  i  rc	  rd	  re	  FTrf	  rh	  rT   Nri	  rj	  s   r@   rc	  rb	    rk	  rB   c                        \ rS rSrSrSrSrSrg)rm	  i  rn	  ro	  rp	  rT   Nrr	  rT   rB   r@   rn	  rm	    ru	  rB   z0<Creature.DOG: .*CreatureDataMixin object at .*>N)dataclassesrT	  rU	  r   r   r  r^	  r   r  rH   r  rt	  assertRegex)r   rT	  r&  r_	  rc	  rn	  r  rU	  s          @r@   test_repr_with_dataclass$TestSpecial.test_repr_with_dataclassn  s   
 	1			! 	! 
	!
	c4 	gnn-/JK,,A68L8LM
7>>378--4g6K6KL 
	9 	9 
	9
	 ($ 	  	hll+-TU	# 	# 
		9 	9 
	9
	 ($ 	  	hll+-HI 
		9 	9 
	9
	 ($ 	  	hll+-_`rB   c                      " S S5      n " S SU[         5      nU R                  [        UR                  5      S5        g )Nc                        \ rS rSrS rS rSrg)2TestSpecial.test_repr_with_init_mixin.<locals>.Fooi  c                     Xl         g r  r   )r   r   s     r@   r  ;TestSpecial.test_repr_with_init_mixin.<locals>.Foo.__init__  s    rB   c                 $    SU R                   < S3$ )NzFoo(a=)r	  r  s    r@   r^  ;TestSpecial.test_repr_with_init_mixin.<locals>.Foo.__repr__  s    z++rB   r	  N)r`   ra   rb   rc   r  r^  rg   rT   rB   r@   r&  r	    s    ,rB   r&  c                       \ rS rSrSrSrg)6TestSpecial.test_repr_with_init_mixin.<locals>.Entriesi  rG   rT   Nr]	  rT   rB   r@   r_	  r	    r`	  rB   r_	  zFoo(a=1))r   r   r  r^	  r   r&  r_	  s      r@   test_repr_with_init_mixin%TestSpecial.test_repr_with_init_mixin  s5    	, 	,
	c4 	 	gnn-z:rB   c                      " S S5      n " S SU[         5      nU R                  [        UR                  5      S5        U R                  [	        UR                  5      S5        g )Nc                        \ rS rSrS rS rSrg)=TestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Fooi  c                     g)Nr&  rT   r  s    r@   r^  FTestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Foo.__repr__      rB   c                     g)NooFrT   r  s    r@   rE  ETestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Foo.__str__  r	  rB   rT   N)r`   ra   rb   rc   r^  rE  rg   rT   rB   r@   r&  r	    s    rB   r&  c                       \ rS rSrSrSrg)ATestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Entriesi  rG   rT   Nr]	  rT   rB   r@   r_	  r	    r`	  rB   r_	  r	  )r   r   r  r^	  r  r	  s      r@   $test_repr_and_str_with_no_init_mixin0TestSpecial.test_repr_and_str_with_no_init_mixin  sN    	 	
	c4 	 	gnn-u5W^^,e4rB   c                      " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        g )Nc                   "    \ rS rSrS rSrSrSrg)2TestSpecial.test_value_backup_assign.<locals>.Somei  c                 ,    [         R                  U 5      $ r  r  r  )r  r  s     r@   r  :TestSpecial.test_value_backup_assign.<locals>.Some.__new__      ~~c**rB   rG   r)   rT   N)r`   ra   rb   rc   r  rj  rk  rg   rT   rB   r@   Somer	    s    +AArB   r	  rG   r)   )r   r   rj  r  rk  )r   r	  s     r@   test_value_backup_assign$TestSpecial.test_value_backup_assign  s@    	4 	
 	q)q)rB   c                     " S S[         [        5      nU R                  [        UR                  UR
                  -  U5      UR                  UR
                  -  5        U R                  [        UR                  S-  U5      5        g )Nc                        \ rS rSrSrSrSrSrg)7TestSpecial.test_custom_flag_bitwise.<locals>.MyIntFlagi  rG   r)   rr   rT   Nr`   ra   rb   rc   r(  r)  FOURrg   rT   rB   r@   	MyIntFlagr	    r  rB   r	  r)   )rf  r   r   rH   r(  r)  )r   r	  s     r@   test_custom_flag_bitwise$TestSpecial.test_custom_flag_bitwise  s`    	T 	 	
9==9==#@)Limm^g^k^kNkl
9==1#4i@ArB   c                     " S S[         5      nUR                  UR                  -  n[        R                  " U5      n[        R                  " U5      nU R                  X25        U R                  XB5        UR                  UR                  -  S-  n[        R                  " U5      n[        R                  " U5      nU R                  X25        U R                  XB5        U R                  UR                  S5        g )Nc                        \ rS rSrSrSrSrSrg)2TestSpecial.test_int_flags_copy.<locals>.MyIntFlagi  rG   r)   rr   rT   Nr	  rT   rB   r@   r	  r	    r  rB   r	  r  rL  )r   r(  r)  r  r  r   r  )r   r	  flagsr  r  s        r@   test_int_flags_copyTestSpecial.test_int_flags_copy  s    	 	
 	-5!}}U#'%	-15!}}U#'%y1rB   c                 Z  ^ SSK Jn  U" SS5      m " U4S jS[        5      nU R                  [	        UR
                  5      S5        U R                  UR
                  R                  T" SS/ S95        U R                  U Vs/ s H  o3R                  PM     snT" SS/ S9T" S	S
S/S9T" S
S/ SQS9/5        U R                  [        [        UR
                  S5         " S ST[        5      nU R                  [	        UR
                  5      S5        U R                  UR
                  R                  T" SS/ S95        U R                  UR
                  R                  S5        U R                  UR                  R                  S
5        U R                  UR                  R                  / SQ5        U R                  U Vs/ s H  o3R                  PM     snT" SS/ S9T" S	S
S/S9T" S
S/ SQS9/5         " U4S jS[        5      nU R                  [	        UR
                  5      S5        U R                  UR
                  R                  S5        U R                  UR                  R                  S
5        U R                  UR                  R                  / SQ5        g s  snf s  snf )Nr   r  TTuplez
id a blistc                   ^   > \ rS rSr Y " SS/ 5      r Y " SSS/5      r Y " SS/ SQ5      rSrg)	4TestSpecial.test_namedtuple_as_value.<locals>.NTEnumi  r   rG   r)   rr   r   rG   r)   rT   Nr`   ra   rb   rc   NONEr  r  rg   r	  s   r@   NTEnumr	    s/    !Q#Dq!aS!Aq!Y'ArB   r	  z*<NTEnum.NONE: TTuple(id=0, a=0, blist=[])>)idr   blistrG   r)   rr   r	  r	  c                   8    \ rS rSrSS/ 4rSSS/4rSS/ SQ4rSrg)	5TestSpecial.test_namedtuple_as_value.<locals>.NTCEnumi  r   rG   r)   rr   r	  rT   Nr	  rT   rB   r@   NTCEnumr	    s%    a8D1qc	A1iArB   r	  z+<NTCEnum.NONE: TTuple(id=0, a=0, blist=[])>c                   d   > \ rS rSrS r Y " SS/ 5      r Y " SSS/5      r Y " SS/ SQ5      rSrg	)
5TestSpecial.test_namedtuple_as_value.<locals>.NTDEnumi	  c                 T    [         R                  U 5      nXl        X$l        X4l        U$ r  )r  r  r	  r   r	  )r  r	  r   r	  r   s        r@   r  =TestSpecial.test_namedtuple_as_value.<locals>.NTDEnum.__new__
  s$    ,	$rB   r   rG   r)   rr   r	  rT   N)	r`   ra   rb   rc   r  r	  r  r  rg   r	  s   r@   NTDEnumr	  	  s6     !Q#Dq!aS!Aq!Y'ArB   r	  z+<NTDEnum.NONE: TTuple(id=0, a=0, blist=[])>)r  r  r   r   r  r	  r  r  r  r  r	  r  r   r  r	  )r   r  r	  rj  r	  r	  r	  s         @r@   test_namedtuple_as_value$TestSpecial.test_namedtuple_as_value  s   *Hl3	(T 	( 	fkk*,XY**Fa1B,GH"()&Q&)1,fQqc.JFVW[\dmLno	
 	.'6;;E	 fd 	  	gll+-Z[++VqAR-HI!,a()4")*'Q'*1,fQqc.JFVW[\dmLno	
		(d 		( 	gll+-Z[!,a()4C *  +s   J#J(c                 \    " S S[         5      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S-  S5         " S S[
        5      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  R                  S5        U R                  UR                  UR                  -  R                  S5         " S	 S[        [
        [        S
9nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S-  S5        g )Nc                   *    \ rS rSrS r\" S5      rSrg);TestSpecial.test_flag_with_custom_new.<locals>.FlagFromChari  c                 F    SU-  n[         R                  X5      nX#l        U$ r  ro  r  r/  r  r   s       r@   r  CTestSpecial.test_flag_with_custom_new.<locals>.FlagFromChar.__new__  #    Q{{3.$rB   r   r&  Nr`   ra   rb   rc   r  ordr   rg   rT   rB   r@   FlagFromCharr	         CArB   r	  l    l                rG   l               c                   .    \ rS rSrS r\" S5      rSrSrg)r	  i(  c                 F    SU-  n[         R                  U 5      nX#l        U$ r  )r  r  r&  r	  s       r@   r  r	  )  s#    Q~~c*$rB   r   rG   r	  N)	r`   ra   rb   rc   r  r	  r   zrg   rT   rB   r@   r	  r	  (  s     CAArB   l               c                   *    \ rS rSrS r\" S5      rSrg)r	  i8  c                 F    SU-  n[         R                  X5      nX#l        U$ r  ro  r	  s       r@   r  r	  9  r	  rB   r   r	  Nr	  rT   rB   r@   r	  r	  8  r	  rB   r  )
r   r   
_all_bits__flag_mask_r   r   r  r	  rf  r   )r   r	  s     r@   test_flag_with_custom_new%TestSpecial.test_flag_with_custom_new  sW   	7 	 	002PQ113QR)GH)+IJ	4 	 	002PQ113QR--/MN,..7>>@^_	3t 	 	002PQ113QR)GH)+IJrB   c                 D  ^  " S S5      mU R                  [        5          " S ST[        R                  5      nS S S 5        U R                  [        5          " U4S jST[        R                  5      nS S S 5        g ! , (       d  f       NJ= f! , (       d  f       g = f)Nc                        \ rS rSrS rS rSrg)-TestSpecial.test_init_exception.<locals>.BaseiG  c                 ,    [         R                  U 5      $ r  r	  )r  rL   s     r@   r  5TestSpecial.test_init_exception.<locals>.Base.__new__H  r	  rB   c                     [        SU5      e)NzI don't liker  )r   rj  s     r@   r  6TestSpecial.test_init_exception.<locals>.Base.__init__J  s     33rB   rT   N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   ri  r	  G  s    +4rB   ri  c                       \ rS rSrSrS rSrg)/TestSpecial.test_init_exception.<locals>.MyEnumiM  r   c                     Xl         g r  rk  r   rk  s     r@   r  8TestSpecial.test_init_exception.<locals>.MyEnum.__init__O      FrB   r	  N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   r   r	  M  s    rB   r   c                   ,   > \ rS rSrSrS rU 4S jrSrg)r	  iR  r   c                     Xl         g r  r	  r	  s     r@   r  r	  T  r	  rB   c                 D   > TR                  U 5      nT" U5      Ul        U$ r  )r  r&  )r  r  r   ri  s      r@   r  7TestSpecial.test_init_exception.<locals>.MyEnum.__new__V  s!    !\\#.F%)%[FN!MrB   r	  N)r`   ra   rb   rc   r  r  r  rg   )ri  s   r@   r   r	  R  s    " "rB   )r  r  r1   r   r   )r   r   ri  s     @r@   test_init_exceptionTestSpecial.test_init_exceptionF  sp    	4 	4
 y)tyy  *
 z*"tyy " +* *)
 +*s   B B 
B
Bc                      " S S[         5      n " S S[        US9n " S SU5      nU R                  [        U5      UR                  UR
                  UR                  UR                  /5        g )Nc                   (   ^  \ rS rSrU 4S jrSrU =r$ ):TestSpecial.test_extra_member_creation.<locals>.IDEnumMetai\  c                 f   > UR                    H  nSX5    3X5 S3'   M     [        TU ]  " XX#40 UD6$ )N-_DESC)member_namesr  r  )r  r  r  r  r(  r   r  s         r@   r  BTestSpecial.test_extra_member_creation.<locals>.IDEnumMeta.__new__]  sA    %22D23IO3D0EIen- 3wwUNNNrB   rT   r%  r  s   @r@   
IDEnumMetar	  \  s    O OrB   r	  c                       \ rS rSrSrg)6TestSpecial.test_extra_member_creation.<locals>.IDEnumib  rT   Nr   rT   rB   r@   IDEnumr	  b  r   rB   r	  r  c                       \ rS rSrSrSrSrg)6TestSpecial.test_extra_member_creation.<locals>.MyEnumid  r	  r   rT   N)r`   ra   rb   rc   IDNAMErg   rT   rB   r@   r   r
  d  s    BDrB   r   )r   r
   r   r   r
  r
  ID_DESC	NAME_DESC)r   r	  r	  r   s       r@   test_extra_member_creation&TestSpecial.test_extra_member_creation[  s\    	O 	O	W
 		V 	 	f		6;;PVP`P`'abrB   c                     " S S5      n " S SU[         5      nUR                  R                  S5        U R                  UR                  US   5        U R                  UR                  UR                  5        UR
                  R                  S5        U R                  UR
                  US   5        U R                  UR
                  UR                  5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        U R                  UR                  R                  S5        g )Nc                   $    \ rS rSr\S 5       rSrg))TestSpecial.test_add_alias.<locals>.mixinij  c                     g)NhuhrT   r  s    r@   ORG-TestSpecial.test_add_alias.<locals>.mixin.ORGk  s    rB   rT   N)r`   ra   rb   rc   r6  r
  rg   rT   rB   r@   mixinr

  j  s     rB   r
  c                        \ rS rSrSrSrSrSrg))TestSpecial.test_add_alias.<locals>.Colorin  rG   r)   r^   rT   Nr  rT   rB   r@   r  r
  n  rx  rB   r  ROJOr
  r
  )	r   r  _add_alias_r  r
  r  r
  r   r  )r   r
  r  s      r@   test_add_aliasTestSpecial.test_add_aliasi  s    	 		E4 	 			f%eiiv/eii,

u%ejj%,/ejj%)),.%0/.rB   c                      " S S[         5      nUR                  R                  S5        U R                  UR                  U" S5      5        g )Nc                        \ rS rSrSrSrSrSrg)>TestSpecial.test_add_value_alias_after_creation.<locals>.Colori~  rG   r)   r^   rT   Nr  rT   rB   r@   r  r
  ~  rx  rB   r  r  )r   r  _add_value_alias_r  r  s     r@   #test_add_value_alias_after_creation/TestSpecial.test_add_value_alias_after_creation}  s8    	D 	 			##A&eiiq*rB   c                 v    " S S[         5      nU R                  U" S5      UR                  5        U R                  U" S5      UR                  5        U R                  U" S5      UR                  5        U R                  U" S5      UR                  5        U R                  U" S5      UR                  5        g )Nc                   &    \ rS rSrSrSrSrS rSrg)?TestSpecial.test_add_value_alias_during_creation.<locals>.Typesi  )r   )rG   src)r)   nlc                 r    [         R                  U 5      nXl        U H  nUR                  " U5        M     U$ r  )r  r  r&  r
  )r  	int_valuevalue_aliasesr   aliass        r@   r  GTestSpecial.test_add_value_alias_during_creation.<locals>.Types.__new__  s2    ,!**E,,U3 +rB   rT   N)	r`   ra   rb   rc   UnknownSourceNetListr  rg   rT   rB   r@   Typesr
    s    GFGrB   r)
  r   rG   r
  r)   r 
  )r   r  r&
  r'
  r(
  )r   r)
  s     r@   $test_add_value_alias_during_creation0TestSpecial.test_add_value_alias_during_creation  s~    		D 		 	eAh.eAh-eElELL1eAh.eDk5==1rB   c                      " S S[         5      nU R                  U" SS5      UR                  5        U R                  U" SS5      UR                  5        g )Nc                   $    \ rS rSrSrSrSrSrSrg)>TestSpecial.test_second_tuple_item_is_falsey.<locals>.Cardinali  )rG   r   )r   rG   )rZ   r   )r   rZ   rT   N)	r`   ra   rb   rc   RIGHTUPLEFTDOWNrg   rT   rB   r@   Cardinalr.
    s    EBDDrB   r3
  rG   r   rZ   )r   r  r/
  r1
  )r   r3
  s     r@    test_second_tuple_item_is_falsey,TestSpecial.test_second_tuple_item_is_falsey  s@    	t 	
 	hq!nhnn5hr1ox}}5rB   c                     U R                  [        S5         [        S5        S S S 5        U R                  [        S5         [        S5        S S S 5        g ! , (       d  f       N9= f! , (       d  f       g = f)Nhas no membersr   )r   r  r   r   r  s    r@   test_no_membersTestSpecial.test_no_members  sc    ##  G	
 ##  G	  
 s   AA'
A$'
A5c           	      *   S/ 0 4 HO  nS [         4 H@  n[        SXS9nU R                  [        U5      S5        U R	                  [
        SUS5        MB     MQ     U R	                  [
        S[        SSS9  U R	                  [
        S[        SS[         S9  g )	NrZ  
empty_enumrj  r   r7
  z.int. object is not iterablebad_enum)r  )rf  r   r   rJ   r   r  )r   nothinge_typer;
  s       r@   test_empty_namesTestSpecial.test_empty_names  s    2rzG)!,E
  Z!4&&y2BJPQR $ "
 	y*H$PZbcdy*H$PZ\]dghrB   c                 h     " S S[         5      nU R                  U" S15      UR                  5        g )Nc                   L    \ rS rSr\" S15      r\" S15      r\" SS15      rSrg)ATestSpecial.test_nonhashable_matches_hashable.<locals>.Directionsi  sccsrT   N)	r`   ra   rb   rc   	frozenset	DOWN_ONLYUP_ONLYUNRESTRICTEDrg   rT   rB   r@   
DirectionsrC
    s(    !4&)I'G$dD\2LrB   rJ
  rD
  )r   r  rG
  )r   rJ
  s     r@   !test_nonhashable_matches_hashable-TestSpecial.test_nonhashable_matches_hashable  s+    	3 	3 	j$(**>*>?rB   )r  r  r  r  N)r`   ra   rb   rc   r  r  r  r  unittestskipr  r  rX   r   r  r5  r<  skipIfpython_versionrN  rW  r_  ro  rw  r~  r  r  r  r  r  r  rm   r  r  r  r  r  r  r  r  rj   r  r  r'  r\   r*  r-  r0  r   r4  r   r8  rB  rL  rR  r\  rg  rk  rp  r   rs  r  r  r  r  r  r  r  r  r  r  r  r  r5  rr  r  r  r  r  r  r  r  r  r  r  r  r%  rC  rS  ra  rn  r  r  r  r  r  r  r  r  r  rI  rY  rr  r  r  r  r	  r%	  r/	  r8	  rQ	  r	  r	  r	  r	  r	  r	  r	  r	  r	  r
  r
  r
  r*
  r4
  r8
  r?
  rK
  rg   rT   rB   r@   r  r    sj   :),&$ ]]< + !+02  E !E@08 __g%+	. __W$-	((:0.**/,,,	&,=\ &$ '$. .". .". . C $6 %6
 !6 "6 $9 %9 &; ';  5 !5 "7 #7DOKA93	 8 8,&A4
<&4??CA93$ #J:2x:2x:2x92v82t82t
>="="7(; ;4.>B-.&,E*887"D"
5#5J +De8N&6*(X(<'|;'z.4?/.6>a@	;5*B2&+5Z,K\"*c/(+2"6
i@rB   r  c                   B    \ rS rSrSrS rS rS rS rS r	S r
S	 rS
rg)	TestOrderi  z%test usage of the `_order_` attributec                 "     " S S[         5      ng )Nc                   $    \ rS rSrSrSrSrSrSrg)*TestOrder.test_same_members.<locals>.Colori  red green bluerG   r)   r^   rT   N	r`   ra   rb   rc   _order_r  r  r  rg   rT   rB   r@   r  rU
    s    &GCEDrB   r  r   r  s     r@   test_same_membersTestOrder.test_same_members  s    	D 	rB   c                 "     " S S[         5      ng )Nc                   (    \ rS rSrSrSrSrSr\rSr	g)7TestOrder.test_same_members_with_aliases.<locals>.Colori  rV
  rG   r)   r^   rT   N
r`   ra   rb   rc   rX
  r  r  r  verderg   rT   rB   r@   r  r^
    s    &GCEDErB   r  rY
  r  s     r@   test_same_members_with_aliases(TestOrder.test_same_members_with_aliases  s    	D 	rB   c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)N#member order does not match _order_c                   $    \ rS rSrSrSrSrSrSrg)6TestOrder.test_same_members_wrong_order.<locals>.Colori  rV
  rG   r^   r)   rT   N)	r`   ra   rb   rc   rX
  r  r  r  rg   rT   rB   r@   r  rf
    s    *rB   r  r   r  r   r  s     r@   test_same_members_wrong_order'TestOrder.test_same_members_wrong_order  s,    ##I/TU  VUUr  c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nrd
  c                   $    \ rS rSrSrSrSrSrSrg)5TestOrder.test_order_has_extra_members.<locals>.Colori  red green blue purplerG   r)   r^   rT   NrW
  rT   rB   r@   r  rl
    s    1rB   r  rg
  r  s     r@   test_order_has_extra_members&TestOrder.test_order_has_extra_members  s,    ##I/TU  VUUr  c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nrd
  c                   (    \ rS rSrSrSrSrSr\rSr	g)BTestOrder.test_order_has_extra_members_with_aliases.<locals>.Colori  rm
  rG   r)   r^   rT   Nr_
  rT   rB   r@   r  rr
    s    1rB   r  rg
  r  s     r@   )test_order_has_extra_members_with_aliases3TestOrder.test_order_has_extra_members_with_aliases  s,    ##I/TU  VUUr  c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nrd
  c                   (    \ rS rSrSrSrSrSrSrSr	g)	4TestOrder.test_enum_has_extra_members.<locals>.Colori  rV
  rG   r)   r^   rr   rT   N)
r`   ra   rb   rc   rX
  r  r  r  purplerg   rT   rB   r@   r  rw
    s    *rB   r  rg
  r  s     r@   test_enum_has_extra_members%TestOrder.test_enum_has_extra_members  s,    ##I/TU  VUUr  c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nrd
  c                   ,    \ rS rSrSrSrSrSrSr\r	Sr
g)	ATestOrder.test_enum_has_extra_members_with_aliases.<locals>.Colori  rV
  rG   r)   r^   rr   rT   N)r`   ra   rb   rc   rX
  r  r  r  rx
  r`
  rg   rT   rB   r@   r  r}
    s     *rB   r  rg
  r  s     r@   (test_enum_has_extra_members_with_aliases2TestOrder.test_enum_has_extra_members_with_aliases  s,    ##I/TU  VUUr  rT   N)r`   ra   rb   rc   r  rZ
  ra
  rh
  rn
  rs
  ry
  r~
  rg   rT   rB   r@   rR
  rR
    s(    +rB   rR
  c                   L   \ rS rSrSr " S S\5      r " S S\5      r " S S\5      rS	 r	S
 r
S rS rS rS rS rS rS rS rS r\" \\\\5      S 5       rS rS rS rS rS rS rS r S r!S r"S r#\$RJ                  \$RL                  " 5       S 5       5       r'S  r(S!r)g")#OldTestFlagi  zTests of the Flags.c                        \ rS rSrSu  rrrSrg)OldTestFlag.Permi  )rr   r)   rG   rT   Nr`   ra   rb   rc   RWr  rg   rT   rB   r@   Permr
    s    1arB   r
  c                   (    \ rS rSrSrSrSrSrSrSr	g)	OldTestFlag.Openi  r   rG   r)   r^      rT   N
r`   ra   rb   rc   ROWORWACCErg   rT   rB   r@   Openr
        rB   r
  c                   R    \ rS rSrSrSrSrSrSr\\-  r	\\-  \-  r
\\-  \-  rSrg)OldTestFlag.Colori  r   rG   r)   rr   rT   Nr`   ra   rb   rc   BLACKr  r
  r  r  PURPLEWHITEBLANCOrg   rT   rB   r@   r  r
    >    TE	$U4rB   r  c           	         U R                   nU H  nU H  nU R                  X#-  U" UR                  UR                  -  5      5        U R                  X#-  R                  UR                  UR                  -  5        U R                  [	        X#-  5      U5        M     M     U H  nU R                  X"-  U5        M     U R
                  nU R                  UR                  UR                  -  UR                  5        g r  r
  r   r  r  r  r
  r
  r
  r   r
  r!  jr
  s        r@   test_orOldTestFlag.test_or  s    yyA  !%$qww/@*AB  !%!''0ABd15k40  
 AMM!%# yydgg'1rB   c                    U R                   nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  UR                  -  n[	        U5      X#XEU" S5      /-   nU H^  nU HU  nU R                  Xx-  R                  UR                  UR                  -  5        U R                  [        Xx-  5      U5        MW     M`     U H?  nU R                  Xw-  U5        U R                  Xu-  U5        U R                  XW-  U5        MA     U R                  n	U R                  U	R                  U	R                  -  U	R                  5        g Nr   )r
  r
  r
  r  r   r   r  r  r  r
  r
  r
  
r   r
  r
  RXWXRWXrp  r!  r
  r
  s
             r@   test_andOldTestFlag.test_and  s"   yyVVdff_VVdff_VVdff_fftvvo&drrQ88A  !%!''0ABd15k40   AMM!%#MM!'1%MM#'1%  yydgg'1rB   c                 D   U R                   nU H^  nU HU  nU R                  X#-  R                  UR                  UR                  -  5        U R                  [	        X#-  5      U5        MW     M`     U H8  nU R                  X!" S5      -  U5        U R                  U" S5      U-  U5        M:     U R
                  nU R                  UR                  UR                  -  UR                  5        U R                  UR                  UR                  -  UR                  5        g r
  r
  r
  s        r@   test_xorOldTestFlag.test_xor0  s    yyA  !%!''0ABd15k40   AMM!d1g+q)MM$q'A+q)  yydgg'1dgg'1rB   c                     U R                   nU H  nU R                  U5        M     U R                  nU H1  nU R                  [	        UR
                  5      [	        U5      5        M3     g r  r
  r   r
  r   r  r  r   r
  r"  r
  s       r@   r  OldTestFlag.test_bool=  P    yyAOOA yyAT!'']DG4 rB   c                     U R                  [        R                  R                  [        5         " S S[        [
        S9nU R                  UR                  [
        5         " S S[        [        S9nU R                  UR                  [        5         " S S[        [        S9nU R                  UR                  [        5         " S S	[        [        S9nU R                  [        S
US5        U R                  U" S5      UR                  UR                  -  5        U R                  U" S5      UR                  5        U R                  U" S5      S5        U R                  [        U" S5      5      [        L 5        U R                  [!        U5      UR"                  /5        U R                  U" S5      UR$                  5        U R                  U" S5      UR&                  5         " S S[        R                  5      nU R                  UR(                  UR*                  UR(                  -  ;   5        U R                  [        SUS5         " S S[        R,                  5      nU R                  UR(                  UR*                  UR(                  -  ;   5        U R                  U" S5      R.                  S5         " S S[        5      nU R                  [1        UR2                  UR4                  -  5      S5        g )Nc                        \ rS rSrSrSrSrSrg)'OldTestFlag.test_boundary.<locals>.IroniG  rG   r)   r  rT   Nr`   ra   rb   rc   r(  r)  EIGHTrg   rT   rB   r@   Ironr
  G  r  rB   r
  r  c                        \ rS rSrSrSrSrSrg)(OldTestFlag.test_boundary.<locals>.WateriM  rG   r)   r  rT   Nr
  rT   rB   r@   Waterr
  M  r  rB   r
  c                        \ rS rSrSrSrSrSrg)(OldTestFlag.test_boundary.<locals>.SpaceiS  rG   r)   r  rT   Nr
  rT   rB   r@   Spacer
  S  r  rB   r
  c                        \ rS rSrSrSrSrSrg)*OldTestFlag.test_boundary.<locals>.BizarreiY  r^   rr   r  rT   Nr`   ra   rb   rc   r,  r/  drg   rT   rB   r@   Bizarrer
  Y      AAArB   r
  zinvalid value 7r   r^   r  c                   &    \ rS rSrSrSrS\-  rSrg)+OldTestFlag.test_boundary.<locals>.SkipFlagij  rG   r)   rr   rT   Nr  rT   rB   r@   SkipFlagr
  j      AAAArB   r
  zSkipFlag.. invalid value 42*   c                   &    \ rS rSrSrSrS\-  rSrg).OldTestFlag.test_boundary.<locals>.SkipIntFlagir  rG   r)   rr   rT   Nr  rT   rB   r@   SkipIntFlagr
  r  r
  rB   r
  c                   $    \ rS rSrSrSrSrSrSrg)-OldTestFlag.test_boundary.<locals>.MethodHintiz     rG   r)   r}  rT   N)	r`   ra   rb   rc   
HiddenText
DigitsOnlyLettersOnlyOnlyMaskrg   rT   rB   r@   
MethodHintr
  z  s    JJKHrB   r
  z5MethodHint.HiddenText|DigitsOnly|LettersOnly|OnlyMask)r  r1   r   r(  r   r   r   r   r   r   r(  r)  r   r   r  rf  r   r/  r,  r
  r  r  r   r  r  r
  r
  )r   r
  r
  r
  r
  r
  r
  r
  s           r@   test_boundaryOldTestFlag.test_boundaryE  s%   dii**F3	4' 	 	doow/	D6 	 	e&&/	D5 	 	e&&.	dT 	
 	z+<eQGd1gtxx01d2h)q1%U1X#-.g4gaj')),gaj')),	tyy 	
 	

xzz(**'<=>z+H(TVW	$,, 	
 	+--*EFGR..3	 	 	Z22:3F3FFG  JA  	BrB   c                 $   U R                   nU R                  nU R                  [        U5      UR                  UR
                  UR                  /5        U R                  [        U5      UR                  UR                  UR                  /5        g r  
r  r
  r   r   r  r  r  r
  r
  r
  r   r  r
  s      r@   	test_iterOldTestFlag.test_iter  b    

yyeuyy%++uzz&JKddggtww%@ArB   c                    [        SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g Nr
  R W Xr^   rG   r   r   r   rJ   r
  r
  r  r  ry  r  r  rf  r   r  r  r   r
  r|  r!  nr"  rN   s          r@    test_programatic_function_string,OldTestFlag.test_programatic_function_string  s    FG$4jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0QVVQ'MM!"MM$q'4( /rB   c                    [        SSSS9n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g Nr
  r
  r  r  r^   r
  r
  s          r@   +test_programatic_function_string_with_start7OldTestFlag.test_programatic_function_string_with_start  s    FG1-4jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0QVVQ'MM!"MM$q'4( /rB   c                    [        S/ SQ5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g Nr
  )r
  r
  r  r^   r
  rG   r
  r
  s          r@   %test_programatic_function_string_list1OldTestFlag.test_programatic_function_string_list  s    FO,4jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0QVVQ'MM!"MM$q'4( /rB   c                    [        SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SSU-  S-   -  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g Nr
  ))r
  r)   )r
  r  )r  r  r^   r
  rG   r)   r
  r
  s          r@   "test_programatic_function_iterable.OldTestFlag.test_programatic_function_iterable  s    F;<4jS3t9-TAt,vvtvvtvv67gmmo.DAAaCE
AQAQWWa(T!'']C0QVVQ'MM!"MM$q'4( /rB   c                    [        S[        S5      5      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        U R                  X!R
                  UR                  UR                  /5        [        SR                  5       5       H  u  p4SSU-  S-   -  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  )r   r   r   r   rJ   r
  r
  r  r  ry  r  r  rf  r   r  r  r
  s          r@   #test_programatic_function_from_dict/OldTestFlag.test_programatic_function_from_dict  s    FK(GHI4jS3t9-TAt,vvtvvtvv67gmmo.DAAaCE
AQAQWWa(T!'']C0QVVQ'MM!"MM$q'4( /rB   c                    [        U R                  [        R                  5        [        U R                  [        R                  [        R
                  -  5        [        U R                  [        R                  [        R                  ) -  5        [        U R                  [        5        [        U R                  [        R                  5        [        U R                  [        R                  [        R                  -  5        [        U R                  [        R                  5        [        U R                  [        R                  [        R
                  -  5        [        U R                  [        R                  5        [        U R                  [        R                  5        [        U R                  [        R                  [        R                  -  5        [        U R                  [        R                  5        [        U R                  [        R                  [        R
                  -  5        [        U R                  [        R                  [        R
                  -  S-  5        [        U R                  [        S5      5        [        U R                  [        S5      5        [        U R                  [        5        [        U R                  [        R                  5        [        U R                  [        R                  S-  5        [        U R                  [        R                  [        R                  -  5        [        U R                  [        R                  5        [        U R                  [        R                  [        R
                  -  5        [        U R                  [        R                  5        [        U R                  [        R                  5        [        U R                  [        R                  S-  5        [        U R                  [        R                  [        R                  -  5        g )N0   r   rG   )r   r  rp   re   r   rf   ru   rx   r{   r~   r   r  s    r@   test_pickleOldTestFlag.test_pickle  s    	dmm[->->?d..#))+//9	;d..#));+<+<*<<	>dmm[9d..@d..#))+//9	; 	dmm-@-F-FGd..+112E2I2II	Kdmm-@-G-GHd..0C0G0GHd..+112E2I2II	K 	dmm^-A-ABd..&,,^-?-??	Ad..&,,^-?-??D	Fd..q0ABd..t0DEdmm^<d..0B0BCd..0B0B10DEd..&,,^-?-??	A 	dmm-C-I-IJd...445K5O5OO	Qdmm-C-J-JKd..0F0J0JKd..0F0J0J10LMd...445K5O5OO	QrB   c                    U R                   nU R                  nU R                  UR                  U;   5        U R                  UR                  U;   5        U R                  SU;   5        U R                  SU;   5        U R                  UR                  U;   5        U R                  UR                  U;   5        U R                  SU;   5        U R                  SU;   5        g )Nr
  r
  rG   )r
  r  r   r
  r
  r   r   r
  r  s      r@   r  OldTestFlag.test_contains_tf  s    yy

,-E)*E)*&u,-4(U
#T	"rB   c                    U R                   nUu  p#nX#-  nX$-  nX4-  nX#-  U-  nU R                  X%;   5        U R                  X&;   5        U R                  X(;   5        U R                  X5;   5        U R                  X7;   5        U R                  X8;   5        U R                  XF;   5        U R                  XG;   5        U R                  XH;   5        U R                  X';   5        U R                  X6;   5        U R                  XE;   5        g r  )r
  r   r   	r   r
  r
  r
  r  r
  r
  r
  r
  s	            r@   test_member_contains OldTestFlag.test_member_contains  s    yyaUUUeai  !  !  !!!!rB   c                    U R                   nU R                  [        UR                  5      / 5        U R                  [        UR                  5      UR
                  UR                  /5        U R                  [        UR                  5      UR                  /5        U R                  [        UR                  5      UR                  /5        U R                  [        UR                  5      UR
                  UR                  UR                  /5        U R                  [        UR                  5      UR
                  UR                  UR                  /5        g r  	r  r   r   r
  r
  r  r  r  r
  r  s     r@   test_member_iterOldTestFlag.test_member_iter#  s    

ekk*B/ell+eii-DEejj)EJJ<8ekk*U[[M:ekk*UYYUZZ,PQekk*UYYUZZ,PQrB   c                    U R                  U R                  R                  U R                  R                  5      S5        U R                  U R                  R                  U R                  R                  5      S5        U R                  U R                  R                  U R                  R
                  5      S5        U R                  U R                  R                  U R                  R                  5      S5        g Nr   rG   r)   r^   r   r  __len__r
  r  r
  r
  r  s    r@   test_member_lengthOldTestFlag.test_member_length,      ++DJJ,<,<=qA++DJJ,<,<=qA++DJJ,=,=>B++DJJ,=,=>BrB   c                     " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  UR                  UR                  /5        U R                  UR                  UR                  5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        g )Nc                   b    \ rS rSrSr\" 5       r\" 5       r\" 5       rSr	\" 5       r
\" 5       rSrg)AOldTestFlag.test_number_reset_and_order_cleanup.<locals>.Confusedi3  zONE TWO FOUR DOS EIGHT SIXTEENr)   rT   N)r`   ra   rb   rc   rX
  r   r(  r)  r	  DOSr
  SIXTEENrg   rT   rB   r@   Confusedr  3  s/    6G&C&C6DCFEfGrB   r  r)   r  r
  )r   r   r   r(  r)  r	  r
  r  r  r  r&  )r   r  s     r@   #test_number_reset_and_order_cleanup/OldTestFlag.test_number_reset_and_order_cleanup2  s    	t 	 	Xx||X]]HNNHL\L\]	_ 	hllHLL1--q1//3))1126rB   c                    U R                   nU R                  U" S5      R                  S5        U R                  US   R                  S5        U R                  U" S5      R                  S5        U R                  US   R                  S5        U R                  UR                  UR
                  5        U R                  nU R                  US   UR                  5        g NrG   r  r
  r   r
  r
  r
  r  r   r   r  r
  r
  r
  r
  r
  s      r@   test_aliasesOldTestFlag.test_aliasesC      

q.v++U3q0x--w7ellEKK0yyd4j$''*rB   c                 ~    " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        g )Nc                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg)+OldTestFlag.test_auto_number.<locals>.ColoriN  rT   N	r`   ra   rb   rc   r   r  r  r  rg   rT   rB   r@   r  r  N      &C6DFErB   r  rG   r)   rr   )r   r   r   r  r  r  r  r  s     r@   test_auto_numberOldTestFlag.test_auto_numberM      	D 	
 	euyy%**ekk&JK!,))1-**A.rB   c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nzinvalid flag value .not an int.c                   &    \ rS rSrSr\" 5       rSrg)3OldTestFlag.test_auto_number_garbage.<locals>.ColoriZ  z
not an intrT   Nr`   ra   rb   rc   r  r   r  rg   rT   rB   r@   r  r!  Z  s    "vrB   r  )r   r  r   r  s     r@   test_auto_number_garbage$OldTestFlag.test_auto_number_garbageX  s,    ##I/PQ  RQQr  c                      " S S[         5      nU R                  UR                  UR                  UR                  /[        U5      5        g )Nc                   B    \ rS rSr\" 5       =rr\" 5       r\" 5       rSr	g).OldTestFlag.test_duplicate_auto.<locals>.Dupesi_  rT   N
r`   ra   rb   rc   r   r4  primeror:  r;  rg   rT   rB   r@   Dupesr'  _      "f$EGVFFErB   r*  r   r   r4  r:  r;  r   r   r*  s     r@   test_duplicate_autoOldTestFlag.test_duplicate_auto^  7    	D 	 	%++u||U[[A4;OrB   c                   ^  " S S5      n " S S5      m " S SU[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5         " U4S jSUT[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5         " U4S jSTU[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5        g )Nc                   $    \ rS rSr\S 5       rSrg)1OldTestFlag.test_multiple_mixin.<locals>.AllMixinif  c                 d    [        U 5      nS nU(       a  US   nUSS   H  nX#-  nM	     X l        U$ r  r   rt  r  members	all_valuer   s       r@   rt  5OldTestFlag.test_multiple_mixin.<locals>.AllMixin.ALLg  ?    s) 	 '
I")!"+!+	 #.#  rB   rT   Nr`   ra   rb   rc   r  rt  rg   rT   rB   r@   AllMixinr3  f      ! !rB   r<  c                       \ rS rSrS rSrg)1OldTestFlag.test_multiple_mixin.<locals>.StrMixiniq  c                 6    U R                   R                  5       $ r  r  r  s    r@   rE  9OldTestFlag.test_multiple_mixin.<locals>.StrMixin.__str__r  r  rB   rT   Nr  rT   rB   r@   r  r?  q  r  rB   r  c                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg).OldTestFlag.test_multiple_mixin.<locals>.Colorit  rT   Nr2  rT   rB   r@   r  rC  t  r3  rB   r  rG   r)   rr   r   r4  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)rC  i}  rT   Nr6  r7  s   r@   r  rC  }  r8  rB   r  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)rC  i  rT   Nr6  r7  s   r@   r  rC    r8  rB   )r   r   r  r  r  r  rt  r  r   r<  r  r  s      @r@   rI  OldTestFlag.test_multiple_mixine  s   
	! 
	!	+ 	+	Hd 	 	!,**A.))1-!,UZZ,7	'Hh 	'
 	!,**A.))1-!,UZZ&1	'Hh 	'
 	!,**A.))1-!,UZZ&1rB   c                 r  ^^^  " S S[         5      m[        5       mSmUUU4S jn[        S5       Vs/ s H  n[        R                  " US9PM     nn[
        R                  " U5          S S S 5        U R                  TS5        U R                  S[        T5      S	5        g s  snf ! , (       d  f       NB= f)
Nc                       \ rS rSr\" 5       r\" 5       r\" 5       r\" 5       r\" 5       r	\" 5       r
\" 5       r\" 5       rS rS rSrg)3OldTestFlag.test_unique_composite.<locals>.TestFlagi  c                     XL $ r  rT   r-  s     r@   rj  :OldTestFlag.test_unique_composite.<locals>.TestFlag.__eq__  
    }$rB   c                 ,    [        U R                  5      $ r  hashr&  r  s    r@   __hash__<OldTestFlag.test_unique_composite.<locals>.TestFlag.__hash__  r  rB   rT   Nr`   ra   rb   rc   r   r  r  r  r  r  r  r  r  rj  rQ  rg   rT   rB   r@   TestFlagrJ    D    &C&CFE6D6D&CFEFE%*rB   rT  Fc                  ~   >  [        S5       H  n TR                  T" U 5      5        M     g ! [         a    Sm g f = fNr   Tr   addrI   r!  rT  r  seens    r@   
cycle_enum5OldTestFlag.test_unique_composite.<locals>.cycle_enum  :    sAHHXa[) $    )- <<r  r   ;at least one thread failed while creating composite membersr   "too many composite members created)
r   r  r   	threadingThreadr'   start_threadsr   r   rJ   r   r\  r   threadsrT  r  r[  s       @@@r@   test_unique_composite!OldTestFlag.test_unique_composite  s    	*t 	* u	 q!A   
3! 	  ++G4 5 	M	O 	c$i)MN 54   B#*B((
B6c                   ^ ^  " U 4S jS[         5      n " U4S jSU5      m " S ST5      n " S SU5      nT R                  TR                  S	   S5        T R                  UR                  S	   S5        T R                  UR                  S
   S5        T R                  UR                  R	                  S	S5      5        T R                  UR                  R	                  S
S5      5         " S SU5      n " S SU5      n " S SU5      nT R                  UR                  S	   S5        T R                  UR                  R	                  S	S5      5        T R                  UR                  S
   S5        T R                  UR                  R	                  S	S5      5        T R                  UR                  R	                  S
S5      5        g )Nc                   ,   >^  \ rS rSrU U4S jrSrU =r$ ).OldTestFlag.test_init_subclass.<locals>.MyEnumi  c                    > [         TU ]  " S0 UD6  TR                  U R                  R	                  SS5      5        SU l        g )N_testFr   rT   )r  __init_subclass__r   r8  get_test1)r  r(  r  r   s     r@   rp  @OldTestFlag.test_init_subclass.<locals>.MyEnum.__init_subclass__  s9    )1D1  !1!1'5!AB%
rB   rT   r`   ra   rb   rc   rp  rg   r  )r  r   s   @r@   r   rm    s    & &rB   r   c                   ,   >^  \ rS rSrUU 4S jrSrU =r$ )1OldTestFlag.test_init_subclass.<locals>.TheirEnumi  c                 4   > [         TU ]  " S0 UD6  SU l        g )N	TheirEnumrT   )r  rp  _test2)r  r(  rx  r  s     r@   rp  COldTestFlag.test_init_subclass.<locals>.TheirEnum.__init_subclass__  s    i7?$?(
rB   rT   rt  )r  rx  s   @r@   rx  rv    s    ) )rB   rx  c                       \ rS rSrS rSrg)1OldTestFlag.test_init_subclass.<locals>.WhoseEnumi  c                     g r  rT   r  r(  s     r@   rp  COldTestFlag.test_init_subclass.<locals>.WhoseEnum.__init_subclass__  r  rB   rT   Nr`   ra   rb   rc   rp  rg   rT   rB   r@   	WhoseEnumr|    rj  rB   r  c                       \ rS rSrSrSrg).OldTestFlag.test_init_subclass.<locals>.NoEnumi  rG   rT   Nr`   ra   rb   rc   r(  rg   rT   rB   r@   NoEnumr        CrB   r  rr  ry  Fc                       \ rS rSrS rSrg)/OldTestFlag.test_init_subclass.<locals>.OurEnumi  c                     SU l         g )NOurEnum)ry  r~  s     r@   rp  AOldTestFlag.test_init_subclass.<locals>.OurEnum.__init_subclass__  s	    &
rB   rT   Nr  rT   rB   r@   r  r    r  rB   r  c                       \ rS rSrS rSrg)1OldTestFlag.test_init_subclass.<locals>.WhereEnumi  c                     g r  rT   r~  s     r@   rp  COldTestFlag.test_init_subclass.<locals>.WhereEnum.__init_subclass__  r  rB   rT   Nr  rT   rB   r@   	WhereEnumr    rj  rB   r  c                       \ rS rSrSrSrg)1OldTestFlag.test_init_subclass.<locals>.NeverEnumi  rG   rT   Nr  rT   rB   r@   	NeverEnumr    r  rB   r  )r   r   r8  r   rq  )r   r   r  r  r  r  r  rx  s   `      @r@   test_init_subclassOldTestFlag.test_init_subclass  s   	&T 	&	) 	)		 		Y 	++H5x@++H5x@++H5{C,,Xu=>,,Xu=>	'f 	'	 			 	))(3X>++//%@A++H5yA++//%@A++//%@ArB   rT   N)*r`   ra   rb   rc   r  r   r
  r
  r  r
  r
  r
  r  r
  r
  r
  r
  r
  r
  r
  rX   rp   rx   r~   r   r
  r  r
  r   r  r  r  r  r#  r.  rI  r'   reap_threadsrequires_working_threadingrh  r  rg   rT   rB   r@   r
  r
    s    t t    
22$25;B|B))))) 	'Q'QR
#"(RC7"+	/P+2Z ""002#O 3 ##OJ"BrB   r
  c                      \ rS rSrSr " S S\5      r " S S\5      r " S S\5      r " S	 S
\5      r	S r
\" \5      S 5       r\" \5      S 5       r\" \5      S 5       rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S r!S r"S  r#S! r$S" r%S# r&\'RP                  \'RR                  " 5       S$ 5       5       r*S%r+g&)'OldTestIntFlagi  zTests of the IntFlags.c                        \ rS rSrSrSrSrSrg)OldTestIntFlag.Permi  rr   r)   rG   rT   Nr
  rT   rB   r@   r
  r    s    rB   r
  c                   (    \ rS rSrSrSrSrSrSrSr	g)	OldTestIntFlag.Openi  r   rG   r)   r^   r
  rT   Nr
  rT   rB   r@   r
  r    r
  rB   r
  c                   R    \ rS rSrSrSrSrSrSr\\-  r	\\-  \-  r
\\-  \-  rSrg)OldTestIntFlag.Colori  r   rG   r)   rr   rT   Nr
  rT   rB   r@   r  r    r
  rB   r  c                        \ rS rSrSrSrSrSrg)OldTestIntFlag.Skipi  rG   r)   r  rT   N)r`   ra   rb   rc   r  SECONDEIGHTHrg   rT   rB   r@   Skipr    s    rB   r  c                    U R                   nU R                  UR                  [        L 5        U R                  nU H8  nU R                  [        X15      5        U R                  X3R                  5        M:     U R                  [        UR                  UR                  -  U5      5        U R                  UR                  UR                  -  S5        U H8  nU R                  [        X25      5        U R                  X3R                  5        M:     U R                  [        UR                  UR                  -  U5      5        U R                  UR                  UR                  -  S5        g Nr^   )r
  r   r  rf  r
  rH   r   r  r
  r  r
  r
  )r   r
  r
  r"  s       r@   	test_typeOldTestIntFlag.test_type  s   yy**c12yyAOOJq/0Q(  	
466DFF?D9:$&&!,AOOJq/0Q(  	
477TWW#4d;<477*A.rB   c                    U R                  [        [        S5      5      S[        -  5        U R                  [        [        S5      5      SS[        0-  5        U R                  [        [        S5      5      SS[        0-  5        g )Nr   z%s.OFF_Kr?  z%(m)s.LOW_BEAM_K|%(m)s.FOG_K|8r  r  z%(m)s.HeadlightsK(8))r   r  r  SHORT_MODULEr  s    r@   test_global_repr_keep$OldTestIntFlag.test_global_repr_keep  sy    [^$\)	 	[!3450C3FF	 	[&'&#|)<<	rB   c                    U R                  [        [        S5      5      S[        -  5        U R                  [        [        S5      5      SS[        0-  5        U R                  [        [        S5      5      SS[        0-  5        g )Nr   z%s.OFF_Cr?  z%(m)s.LOW_BEAM_C|%(m)s.FOG_Cr  r  z%(m)s.OFF_C)r   r  r  r  r  s    r@   test_global_repr_conform1(OldTestIntFlag.test_global_repr_conform1  sy    [^$\)	 	[!345.#|1DD	 	[&'l 33	rB   c                 Z   U R                  [        [        R                  5      S5        U R                  [        [        S5      5      S5        U R                  [	        [        R                  [        R
                  -  5      S5        U R                  [	        [        S5      5      S5        g )Nztest_enum.ONEr   ztest_enum.NoName(0)z	NoName(0))r   r  r&  r(  r  r)  r  s    r@   test_global_enum_str#OldTestIntFlag.test_global_enum_str)  sn    fjj)?;fQi*?@VZZ&**45{CVAY5rB   c                    U R                   nU R                  [        UR                  S5      S5        U R                  [        UR                  UR                  -  S5      S5         " S S[
        5      nU R                  [        UR                  S5      S5        U R                  [        UR                  UR                  -  S5      S5        g )NrZ  4r  c                   &    \ rS rSrSrSrSrS rSrg)+OldTestIntFlag.test_format.<locals>.NewPermi5  rr   r)   rG   c                     U R                   $ r  r\  r  s    r@   rE  3OldTestIntFlag.test_format.<locals>.NewPerm.__str__9  s    {{"rB   rT   N)	r`   ra   rb   rc   r
  r
  r  rE  rg   rT   rB   r@   NewPermr  5  s    AAA#rB   r  r
  zR|X)r
  r   r  r
  r  r   )r   r
  r  s      r@   r  OldTestIntFlag.test_format0  s    yy+S14c:	#g 	# 			2.4		DFF 2B7?rB   c                    U R                   nU GHl  nU H  nU R                  X#-  UR                  UR                  -  5        U R                  X#-  R                  UR                  UR                  -  5        U R                  [	        X#-  5      U5        M     [        S5       H  nU R                  X#-  UR                  U-  5        U R                  X#-  R                  UR                  U-  5        U R                  [	        X#-  5      U5        U R                  X2-  X2R                  -  5        U R                  X2-  R                  X2R                  -  5        U R                  [	        X2-  5      U5        M     GMo     U HA  nU R                  X"-  U5        U R                  US-  U5        U R                  SU-  U5        MC     U R                  nU R                  UR                  UR                  -  UR                  5        g Nr  r   	r
  r   r  r  r  r   r
  r
  r
  r
  s        r@   r
  OldTestIntFlag.test_or>  s   yyA  !''(9:  !%!''0ABd15k40  1X  !4  !%!<d15k40  GG4  !%GG<d15k40   AMM!%#MM!a%#MM!a%#  yydgg'1rB   c           
      T   U R                   nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  UR                  -  n[	        U5      X#XEU" S5      /-   nU GH  nU H  nU R                  Xx-  UR                  UR                  -  SU< SU< 35        U R                  Xx-  R                  UR                  UR                  -  SU< SU< 35        U R                  [        Xx-  5      USU< SU< 35        M     [        S5       H  nU R                  Xx-  UR                  U-  5        U R                  Xx-  R                  UR                  U-  5        U R                  [        Xx-  5      U5        U R                  X-  XR                  -  5        U R                  X-  R                  XR                  -  5        U R                  [        X-  5      U5        M     GM     U HA  nU R                  Xw-  U5        U R                  US-  U5        U R                  SU-  U5        MC     U R                  n	U R                  U	R                  U	R                  -  U	R                  5        g )Nr   zi is z, j is r  r   )r
  r
  r
  r  r   r   r  r  r  r   r
  r
  r
  r
  s
             r@   r
  OldTestIntFlag.test_andS  s   yyVVdff_VVdff_VVdff_fftvvo&drrQ88A  !''(9QRTU;VW  !%!''0AYZ\]C^_d15k4q!1LM  1X  !4  !%!<d15k40  GG4  !%GG<d15k40   AMM!%#MM!a%#MM!a%#  yydgg'1rB   c                 L   U R                   nU GHl  nU H  nU R                  X#-  UR                  UR                  -  5        U R                  X#-  R                  UR                  UR                  -  5        U R                  [	        X#-  5      U5        M     [        S5       H  nU R                  X#-  UR                  U-  5        U R                  X#-  R                  UR                  U-  5        U R                  [	        X#-  5      U5        U R                  X2-  X2R                  -  5        U R                  X2-  R                  X2R                  -  5        U R                  [	        X2-  5      U5        M     GMo     U H-  nU R                  US-  U5        U R                  SU-  U5        M/     U R                  nU R                  UR                  UR                  -  UR                  5        U R                  UR                  UR                  -  UR                  5        g r  r  r
  s        r@   r
  OldTestIntFlag.test_xorm  s   yyA  !''(9:  !%!''0ABd15k40  1X  !4  !%!<d15k40  GG4  !%GG<d15k40   AMM!a%#MM!a%#  yydgg'1dgg'1rB   c                    U R                   nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  nUR                  UR                  -  UR                  -  n[	        U5      X#XEU" S5      /-   nU HQ  nU R                  U) U) R                  5        U R                  [        U) 5      U5        U R                  U) ) U5        MS     U H  nU R                  U) ) U5        M     U R                  nU R                  UR                  UR                  ) -  UR                  5        U R                  UR                  UR                  -  UR                  ) -  UR                  5        g r
  )r
  r
  r
  r  r   r   r  r  r  r
  r
  r
  r
  )	r   r
  r
  r
  r
  r
  rp  r!  r
  s	            r@   test_invertOldTestIntFlag.test_invert  s,   yyVVdff_VVdff_VVdff_fftvvo&drrQ88AaR1",MM$r(D)qbS!$  AMMA2#q! yydgg($''2twwtww477(2DGG<rB   c                    U R                  [        R                  R                  [        5         " S S[        [        S9n " S S[        [
        S9nU R                  UR                  [
        5         " S S[        [        S9nU R                  UR                  [        5         " S S	[        [        S9nU R                  UR                  [        5         " S
 S[        [        S9nU R                  [        SUS5        U R                  U" S5      UR                  UR                  -  5        U R                  U" S5      UR                  5        U R                  U" S5      S5        U R                  [        U" S5      5      [        L 5        U R                  [!        U5      UR"                  /5        U R                  U" S5      UR$                  5        U R                  U" S5      UR&                  5        UR(                  UR                  -  nU R                  US5        U R+                  Xa5        U R                  [-        U5      S5        U R                  [/        U5      S5        g )Nc                       \ rS rSrSrSrg),OldTestIntFlag.test_boundary.<locals>.Simplei  rG   rT   N)r`   ra   rb   rc   SINGLErg   rT   rB   r@   Simpler    r`	  rB   r  r  c                        \ rS rSrSrSrSrSrg)*OldTestIntFlag.test_boundary.<locals>.Ironi  rG   r)   r  rT   Nr
  rT   rB   r@   r
  r    r  rB   r
  c                        \ rS rSrSrSrSrSrg)+OldTestIntFlag.test_boundary.<locals>.Wateri  rG   r)   r  rT   Nr
  rT   rB   r@   r
  r    r  rB   r
  c                        \ rS rSrSrSrSrSrg)+OldTestIntFlag.test_boundary.<locals>.Spacei  rG   r)   r  rT   Nr
  rT   rB   r@   r
  r    r  rB   r
  c                        \ rS rSrSrSrSrSrg)-OldTestIntFlag.test_boundary.<locals>.Bizarrei  r^   rr   r  rT   Nr
  rT   rB   r@   r
  r    r
  rB   r
  zinvalid value 5r  r   r
  r^   r  z <Simple.SINGLE|<Iron.TWO: 2>: 3>r~  )r  r1   r   r(  r   r   r   r   r   r   r(  r)  r   r   r  rf  r   r/  r,  r
  r  r  r  r  )r   r  r
  r
  r
  r
  simples          r@   r
  OldTestIntFlag.test_boundary  s   dll--t4	Wt 		7V 	 	doov.	Gg 	 	e&&0	Ge 	 	e&&.	g 	
 	z+<dAFeAh		%)) 34eBi+q1%U1X#-.g4gaj')),gaj')),)#f-f'IJVc*rB   c                 $   U R                   nU R                  nU R                  [        U5      UR                  UR
                  UR                  /5        U R                  [        U5      UR                  UR                  UR                  /5        g r  r
  r
  s      r@   r
  OldTestIntFlag.test_iter  r
  rB   c                    [        SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  Xe5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  r   r   r   rJ   r
  r
  r  r  ry  r  r  rf  r   r  r  r
  s          r@   r
  /OldTestIntFlag.test_programatic_function_string  s    vw'4jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0Q"QVVQ'MM!"MM$q'4( /rB   c                    [        SSSS9n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  Xe5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  r  r
  s          r@   r
  :OldTestIntFlag.test_programatic_function_string_with_start  s    vwa04jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0Q"QVVQ'MM!"MM$q'4( /rB   c                    [        S/ SQ5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SU-  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  Xe5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  r  r
  s          r@   r
  4OldTestIntFlag.test_programatic_function_string_list  s    v/4jS3t9-TAt,vvtvvtvv67gmmo.DA1AQAQWWa(T!'']C0Q"QVVQ'MM!"MM$q'4( /rB   c                    [        SS5      n[        U5      nU R                  [        U5      [        U5      5        U R                  [        U5      SU5        U R                  X!R                  UR
                  UR                  /5        [        SR                  5       5       H  u  p4SSU-  S-   -  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  Xe5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  r  r
  s          r@   r
  1OldTestIntFlag.test_programatic_function_iterable  s   v>?4jS3t9-TAt,vvtvvtvv67gmmo.DAAaCE
AQAQWWa(T!'']C0Q"QVVQ'MM!"MM$q'4( /rB   c                    [        S[        S5      5      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        U R                  X!R
                  UR                  UR                  /5        [        SR                  5       5       H  u  p4SSU-  S-   -  nU" U5      nU R                  UR                  U5        U R                  [        UR                  5      [        5        U R                  Xe5        U R                  UR                  U5        U R                  Xa5        U R                  [        U5      U5        M     g r
  )r   r   r   r   rJ   r
  r
  r  r  ry  r  r  rf  r   r  r  r
  s          r@   r
  2OldTestIntFlag.test_programatic_function_from_dict  s	   v{+JKL4jS3t9-TAt,vvtvvtvv67gmmo.DAAaCE
AQAQWWa(T!'']C0Q"QVVQ'MM!"MM$q'4( /rB   c                    [         R                  " S/ 5      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        [         R
                  " S/ 5      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        g )Nr
  r   Thingr1   r   r   r   rJ   r   r   r
  r|  r  s       r@   )test_programatic_function_from_empty_list8OldTestIntFlag.test_programatic_function_from_empty_list  s    ||FB'4jS3t9-TAt,		'2&5kS3u:.UQ.rB   c                 v   [         R                  " SS5      n[        U5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        [         R
                  " SS5      nU R                  [	        U5      [	        U5      5        U R                  [	        U5      SU5        g )Nr
  rT   r   r  r  r  s       r@   *test_programatic_function_from_empty_tuple9OldTestIntFlag.test_programatic_function_from_empty_tuple#  s    ||FB'4jS3t9-TAt,		'2&S3u:.UQ.rB   c                 L   U R                   nU R                  nU R                  UR                  U;   5        U R                  UR                  U;   5        U R                  SU;   5        U R                  SU;   5        U R                  SU;   5        U R                  SU;   5        g )Nr  r
  r)   )r
  r  r   r  r
  r   r
  s      r@   r  OldTestIntFlag.test_contains_tf,  s    yy

u,-4(E)*&U
#T	"rB   c                    U R                   nUu  p#nX#-  nX$-  nX4-  nX#-  U-  nU R                  X%;   5        U R                  X&;   5        U R                  X(;   5        U R                  X5;   5        U R                  X7;   5        U R                  X8;   5        U R                  XF;   5        U R                  XG;   5        U R                  XH;   5        U R                  X';   5        U R                  X6;   5        U R                  XE;   5        U R                  [        5         U R                  SU;   5        S S S 5        g ! , (       d  f       g = f)Nrn  )r
  r   r   r  r  r
  s	            r@   r
  #OldTestIntFlag.test_member_contains6  s   yyaUUUeai  !  !  !!!!y)Vr\* *))s   D<<
E
c                 (   U R                   nU R                  [        UR                  5      / 5        U R                  [        UR                  5      UR
                  UR                  /5        U R                  [        UR                  5      UR                  /5        U R                  [        UR                  5      UR                  /5        U R                  [        UR                  5      UR
                  UR                  UR                  /5        g r  r
  r  s     r@   r   OldTestIntFlag.test_member_iterL  s    

ekk*B/ell+eii-DEejj)EJJ<8ekk*U[[M:ekk*UYYUZZ,PQrB   c                    U R                  U R                  R                  U R                  R                  5      S5        U R                  U R                  R                  U R                  R                  5      S5        U R                  U R                  R                  U R                  R
                  5      S5        U R                  U R                  R                  U R                  R                  5      S5        g r  r  r  s    r@   r  !OldTestIntFlag.test_member_lengthT  r  rB   c                    U R                   nU R                  U" S5      R                  S5        U R                  US   R                  S5        U R                  U" S5      R                  S5        U R                  US   R                  S5        U R                  UR                  UR
                  5        U R                  nU R                  US   UR                  5        g r  r  r
  s      r@   r  OldTestIntFlag.test_aliasesZ  r  rB   c                     U R                   nU H  nU R                  U5        M     U R                  nU H1  nU R                  [	        UR
                  5      [	        U5      5        M3     g r  r
  r
  s       r@   r  OldTestIntFlag.test_boold  r
  rB   c                   ^  " S S5      n " S S5      m " S SU[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5         " U4S jSUT[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5         " U4S jSTU[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S	5        U R                  UR                  R                  S
5        U R                  [        UR
                  5      S5        g )Nc                   $    \ rS rSr\S 5       rSrg)4OldTestIntFlag.test_multiple_mixin.<locals>.AllMixinin  c                 d    [        U 5      nS nU(       a  US   nUSS   H  nX#-  nM	     X l        U$ r  r5  r6  s       r@   rt  8OldTestIntFlag.test_multiple_mixin.<locals>.AllMixin.ALLo  r:  rB   rT   Nr;  rT   rB   r@   r<  r  n  r=  rB   r<  c                       \ rS rSrS rSrg)4OldTestIntFlag.test_multiple_mixin.<locals>.StrMixiniy  c                 6    U R                   R                  5       $ r  r  r  s    r@   rE  <OldTestIntFlag.test_multiple_mixin.<locals>.StrMixin.__str__z  r  rB   rT   Nr  rT   rB   r@   r  r  y  r  rB   r  c                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg)1OldTestIntFlag.test_multiple_mixin.<locals>.Colori|  rT   Nr2  rT   rB   r@   r  r  |  r3  rB   r  rG   r)   rr   r   r  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)r  i  rT   Nr6  r7  s   r@   r  r    r8  rB   r  c                   Z   > \ rS rSr\" 5       r\" 5       r\" 5       r Y R                  rSr	g)r  i  rT   Nr6  r7  s   r@   r  r    r8  rB   )r   r   r  r  r  r  rt  r  rF  s      @r@   rI  "OldTestIntFlag.test_multiple_mixinm  s   
	! 
	!	+ 	+	Hg 	 	!,**A.))1-!,UZZ#.	'Hh 	'
 	!,**A.))1-!,UZZ&1	'Hh 	'
 	!,**A.))1-!,UZZ&1rB   c                 r  ^^^  " S S[         5      m[        5       mSmUUU4S jn[        S5       Vs/ s H  n[        R                  " US9PM     nn[
        R                  " U5          S S S 5        U R                  TS5        U R                  S[        T5      S	5        g s  snf ! , (       d  f       NB= f)
Nc                       \ rS rSr\" 5       r\" 5       r\" 5       r\" 5       r\" 5       r	\" 5       r
\" 5       r\" 5       rS rS rSrg)6OldTestIntFlag.test_unique_composite.<locals>.TestFlagi  c                     XL $ r  rT   r-  s     r@   rj  =OldTestIntFlag.test_unique_composite.<locals>.TestFlag.__eq__  rM  rB   c                 ,    [        U R                  5      $ r  rO  r  s    r@   rQ  ?OldTestIntFlag.test_unique_composite.<locals>.TestFlag.__hash__  r  rB   rT   NrS  rT   rB   r@   rT  r    rU  rB   rT  Fc                  ~   >  [        S5       H  n TR                  T" U 5      5        M     g ! [         a    Sm g f = frW  rX  rZ  s    r@   r\  8OldTestIntFlag.test_unique_composite.<locals>.cycle_enum  r^  r_  r  r`  ra  r   rb  )
r   r  r   rc  rd  r'   re  r   r   rJ   rf  s       @@@r@   rh  $OldTestIntFlag.test_unique_composite  s    	*w 	* u	 q!A   
3! 	  ++G4 5 	M	O 	c$i)MN 54rj  rT   N),r`   ra   rb   rc   r  r   r
  r
  r  r  r  rX   r  r  r  r  r&  r  r  r
  r
  r
  r  r
  r
  r
  r
  r
  r
  r
  r  r  r  r
  r   r  r  r  rI  r'   r  r  rh  rg   rT   rB   r@   r  r    s!    w 
w    w 
/ % & % &  6 !6@2*242*=",+\B) ) ) ) )"//#+,RC+5+2Z ""002#O 3 ##OrB   r  c                   &    \ rS rSrS rS rS rSrg)TestEmptyAndNonLatinStringsi  c                 z    U R                  [        5         [        SS5      nS S S 5        g ! , (       d  f       g = f)N	empty_abc)rZ  r  r  )r  r   r   )r   r  s     r@   test_empty_string-TestEmptyAndNonLatinStrings.test_empty_string  s(    z*[.9I +**s   ,
:c                 l    [        SS5      n[        US5      nU R                  UR                  S5        g )N	greek_abc)   αr  r  r  rG   r   r  r   r  )r   r  r`  s      r@   test_non_latin_character_string;TestEmptyAndNonLatinStrings.test_non_latin_character_string  s/    &:;	y(+Q'rB   c                 l    [        SS5      n[        US5      nU R                  UR                  S5        g )N
hebrew_123)   אr}  r~  r  rG   r  )r   r  r`  s      r@   test_non_latin_number_string8TestEmptyAndNonLatinStrings.test_non_latin_number_string  s/    ,(<=
z8,Q'rB   rT   N)r`   ra   rb   rc   r  r  r  rg   rT   rB   r@   r  r    s    :(
(rB   r  c                   &    \ rS rSrS rS rS rSrg)
TestUniquei  c                 d    [          " S S[        5      5       n[          " S S[        5      5       ng )Nc                        \ rS rSrSrSrSrSrg)+TestUnique.test_unique_clean.<locals>.Cleani  rG   r        @rT   Nr`   ra   rb   rc   r  r  r  rg   rT   rB   r@   Cleanr$        CCDrB   r'  c                        \ rS rSrSrSrSrSrg)-TestUnique.test_unique_clean.<locals>.Cleaneri  rG   r)   r^   rT   Nr`   ra   rb   rc   singledoubletriplerg   rT   rB   r@   Cleanerr*        FFFrB   r/  )r   r   r	   r   r'  r/  s      r@   test_unique_cleanTestUnique.test_unique_clean  s6    		D 	 
	
 
	g 	 
	rB   c                 $   U R                  [        S5         [         " S S[        5      5       nS S S 5        U R                  [        S5         [         " S S[        5      5       nS S S 5        g ! , (       d  f       NF= f! , (       d  f       g = f)N	tres.*onec                        \ rS rSrSrSrSrSrg)+TestUnique.test_unique_dirty.<locals>.Dirtyi  rG   r  rT   Nr&  rT   rB   r@   Dirtyr7        rB   r8  double.*single.*turkey.*triplec                   $    \ rS rSrSrSrSrSrSrg)-TestUnique.test_unique_dirty.<locals>.Dirtieri  rG   r^   rT   N	r`   ra   rb   rc   r,  r-  r.  turkeyrg   rT   rB   r@   Dirtierr<        rB   r?  )r   r   r   r   r	   r   r8  r?  s      r@   test_unique_dirtyTestUnique.test_unique_dirty  s    ##J<   = ##0 '    =< s   A0B0
A>
Bc                     [        [        5       " S S[        5      5       n[        [        5       " S S[        5      5       ng )Nc                        \ rS rSrSrSrSrSrg)/TestUnique.test_unique_with_name.<locals>.Sillyi  rG   r  r^   rT   Nr`   ra   rb   rc   r  r  r   rg   rT   rB   r@   SillyrF        CCDrB   rH  c                   $    \ rS rSrSrSrSrSrSrg)1TestUnique.test_unique_with_name.<locals>.Sillieri  rG   r)   r^   rr   rT   N	r`   ra   rb   rc   r,  r   r.  r  rg   rT   rB   r@   SillierrK        FDFErB   rM  r   r   r   r	   r   rH  rM  s      r@   test_unique_with_name TestUnique.test_unique_with_name  >    		D 	 
	
 
	g 	 
	rB   rT   N)r`   ra   rb   rc   r2  rB  rQ  rg   rT   rB   r@   r!  r!    s    $rB   r!  c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)

TestVerifyi  c                 n   [        [        5       " S S[        5      5       n[        [        5       " S S[        5      5       nU R                  [        S5         [        [        5       " S S[        5      5       nS S S 5        U R                  [        S5         [        [        5       " S	 S
[
        5      5       nS S S 5        U R                  [        S5         [        [        5       " S S[
        5      5       nS S S 5        g ! , (       d  f       N= f! , (       d  f       N`= f! , (       d  f       g = f)Nc                   L    \ rS rSr\" 5       r\" 5       r\" 5       r\" 5       rSr	g)(TestVerify.test_continuous.<locals>.Autoi  rT   N)
r`   ra   rb   rc   r   r  r  THIRDFORTHrg   rT   rB   r@   AutorX    s    FEVFFEFErB   r[  c                   $    \ rS rSrSrSrSrSrSrg)*TestVerify.test_continuous.<locals>.Manuali  r^   rr   r  r  rT   N	r`   ra   rb   rc   r  r  rY  rZ  rg   rT   rB   r@   Manualr]    s    EFEErB   r_  z<invalid enum .Missing.: missing values 5, 6, 7, 8, 9, 10, 12c                   $    \ rS rSrSrSrSrSrSrg)+TestVerify.test_continuous.<locals>.Missingi  r^   rr   rL  r?  rT   Nr^  rT   rB   r@   Missingra        rB   rb  z,invalid flag .Incomplete.: missing values 32c                   $    \ rS rSrSrSrSrSrSrg).TestVerify.test_continuous.<locals>.Incompletei  rr   r  r
  @   rT   Nr^  rT   rB   r@   
Incompletere    rc  rB   rg  z1invalid flag .StillIncomplete.: missing values 16c                   $    \ rS rSrSrSrSrSrSrg)3TestVerify.test_continuous.<locals>.StillIncompletei$  rr   r  rL  r  rT   Nr^  rT   rB   r@   StillIncompleteri  $  rc  rB   rj  )r   r   r   r   r   r   )r   r[  r_  rb  rg  rj  s         r@   test_continuousTestVerify.test_continuous  s   	
		4 	 
	 

		T 	 
	 ##J0noJ$    p ##J0^_JT    ` ##J0cdJ$    ed! po `_ eds$   "D"D"D&
D
D#&
D4c                     " S S[         5      nU R                  [        U5      UR                  /5        U R                  UR                  R
                  S5        U R                  UR                  R
                  S5        U R                  UR                  R
                  S5        U R                  [        S5         [        [        5       " S S[         5      5       nS S S 5        U R                  [        R                  " S5      SS	/5         " S
 S[        5      nU R                  [        U5      UR                  /5        U R                  UR                  R
                  S5        U R                  UR                  R
                  S5        U R                  UR                  R
                  S5        U R                  [        S5         [        [        5       " S S[        5      5       nS S S 5        U R                  [        R                  " S	5      S	/5        g ! , (       d  f       GNF= f! , (       d  f       NH= f)Nc                        \ rS rSrSrSrSrSrg)*TestVerify.test_composite.<locals>.Bizarrei-  r^   rr   r  rT   Nr
  rT   rB   r@   r
  ro  -  r
  rB   r
  r^   rr   r  zyinvalid Flag 'Bizarre': aliases b and d are missing combined values of 0x3 .use enum.show_flag_values.value. for details.c                        \ rS rSrSrSrSrSrg)ro  i9  r^   rr   r  rT   Nr
  rT   rB   r@   r
  ro  9  s    rB   rG   r)   c                        \ rS rSrSrSrSrSrg)ro  i@  r^   rr   r  rT   Nr
  rT   rB   r@   r
  ro  @  r
  rB   zcinvalid Flag 'Bizarre': alias d is missing value 0x2 .use enum.show_flag_values.value. for details.c                       \ rS rSrSrSrSrg)ro  iL  rr   r  rT   N)r`   ra   rb   rc   r/  r
  rg   rT   rB   r@   r
  ro  L  s    rB   )r   r   r   r/  r,  r  r
  r   r   r   r   r1   show_flag_valuesr   )r   r
  s     r@   test_compositeTestVerify.test_composite,  s   	d 	 	g4!,!,!,## L K $  ! 	..q1Aq6:	g 	 	g4!,!,!,##u K '  ! 	..q1A377 & s   >"H"H1
H.1
H?c                     [        [        5       " S S[        5      5       n[        [        5       " S S[        5      5       ng )Nc                        \ rS rSrSrSrSrSrg)+TestVerify.test_unique_clean.<locals>.CleaniS  rG   r  r%  rT   Nr&  rT   rB   r@   r'  rx  S  r(  rB   r'  c                        \ rS rSrSrSrSrSrg)-TestVerify.test_unique_clean.<locals>.CleaneriY  rG   r)   r^   rT   Nr+  rT   rB   r@   r/  rz  Y  r0  rB   r/  rO  r1  s      r@   r2  TestVerify.test_unique_cleanR  s>    		D 	 
	
 
	g 	 
	rB   c                 H   U R                  [        S5         [        [        5       " S S[        5      5       nS S S 5        U R                  [        S5         [        [        5       " S S[
        5      5       nS S S 5        g ! , (       d  f       NO= f! , (       d  f       g = f)Nr5  c                        \ rS rSrSrSrSrSrg)+TestVerify.test_unique_dirty.<locals>.Dirtyia  rG   r  rT   Nr&  rT   rB   r@   r8  r~  a  r9  rB   r8  r:  c                   $    \ rS rSrSrSrSrSrSrg)-TestVerify.test_unique_dirty.<locals>.Dirtierij  rG   r^   rT   Nr=  rT   rB   r@   r?  r  j  r@  rB   r?  )r   r   r   r   r   r	   rA  s      r@   rB  TestVerify.test_unique_dirty_  s    ##J<F^   = ##0 F^'    =< s   "B"B
B
B!c                     [        [        5       " S S[        5      5       n[        [        5       " S S[        5      5       ng )Nc                        \ rS rSrSrSrSrSrg)/TestVerify.test_unique_with_name.<locals>.Sillyir  rG   r  r^   rT   NrG  rT   rB   r@   rH  r  r  rI  rB   rH  c                   $    \ rS rSrSrSrSrSrSrg)1TestVerify.test_unique_with_name.<locals>.Sillierix  rG   r)   r^   rr   rT   NrL  rT   rB   r@   rM  r  x  rN  rB   rM  rO  rP  s      r@   rQ   TestVerify.test_unique_with_nameq  rS  rB   c                 F    [        [        5       " S S[        5      5       ng )Nc                   $    \ rS rSrSrSrSrSrSrg)-TestVerify.test_negative_alias.<locals>.Colori  rG   r)   rr   rZ   rT   N)	r`   ra   rb   rc   r  r  r  r
  rg   rT   rB   r@   r  r    s    CEDErB   r  )r   r   r   r  s     r@   test_negative_aliasTestVerify.test_negative_alias  s     			D 	 
	rB   rT   N)r`   ra   rb   rc   rk  rt  r2  rB  rQ  r  rg   rT   rB   r@   rU  rU    s"    %P$8L$rB   rU  c                   |   \ rS rSrSrSrSrSrSrS r	S r
S	 rS
 rS rS r\R                   " \S:  S5      S 5       r\R                   " \S:  S5      S 5       r\R                   " \S:  S5      S 5       r\R                   " \S:  S5      S 5       rS rS r\R                   " \S:  S5      S 5       rS rS rSrg)TestInternalsi  r   r   )r   r   r   r   c                 B   U R                   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     U R
                  U R                  -   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     g )Nr   r   r   r   s     r@   r   TestInternals.test_sunder  s    %%(E(EEDOODOOD13MPT3TU F%%(:(::T=N=NNDT__T24JT4QR OrB   c                 B   U R                    H,  nU R                  [        R                  " U5      SU-  5        M.     U R                  U R
                  -   U R                  -   U R                  -    H,  nU R                  [        R                  " U5      SU-  5        M.     g )Nr   r   r   r   s     r@   r   TestInternals.test_dunder  s    %%DOODOOD13MPT3TU &%%(:(::T=Z=ZZ]a]n]nnDT__T24JT4QR orB   c                 :   U R                   U R                  -    H*  nU R                  [        R                  " SU5      S5        M,     U R
                  U R                  -   U R                  -    H*  nU R                  [        R                  " SU5      S5        M,     g r   r   r   s     r@   r   TestInternals.test_is_private  r   rB   c                 ~    " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        g )Nc                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg)-TestInternals.test_auto_number.<locals>.Colori  rT   Nr  rT   rB   r@   r  r    r  rB   r  rG   r)   r^   r   r   r   r  r  r  r  r  s     r@   r  TestInternals.test_auto_number  r  rB   c                 ~    " S S[         5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        g )Nc                   D    \ rS rSrS r\" 5       r\" 5       r\" 5       rSr	g)+TestInternals.test_auto_name.<locals>.Colori  c                     U $ r  rT   r   rn  r  ro  s       r@   rq  ATestInternals.test_auto_name.<locals>.Color._generate_next_value_      rB   rT   N)
r`   ra   rb   rc   rq  r   r  r  r  rg   rT   rB   r@   r  r    s    &C6DFErB   r  r  r  r  r  r  s     r@   test_auto_nameTestInternals.test_auto_name  s    	D 	 	euyy%**ekk&JK%0))62**G4rB   c                     " S S[         5      n " S SU5      nU R                  [        U5      UR                  UR                  UR
                  /5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        g )Nc                       \ rS rSrS rSrg):TestInternals.test_auto_name_inherit.<locals>.AutoNameEnumi  c                     U $ r  rT   r  s       r@   rq  PTestInternals.test_auto_name_inherit.<locals>.AutoNameEnum._generate_next_value_  r  rB   rT   Nrs  rT   rB   r@   AutoNameEnumr    s    rB   r  c                   >    \ rS rSr\" 5       r\" 5       r\" 5       rSrg)3TestInternals.test_auto_name_inherit.<locals>.Colori  rT   Nr  rT   rB   r@   r  r    r  rB   r  r  r  r  r  )r   r  r  s      r@   test_auto_name_inherit$TestInternals.test_auto_name_inherit  s    	4 		L 	
 	euyy%**ekk&JK%0))62**G4rB   r>  z+mixed types with auto() no longer supportedc                     U R                  [        S5          " S S[        5      nS S S 5        U R                  WR                  R
                  S5        g ! , (       d  f       N5= f)N&will require all values to be sortablec                   &    \ rS rSrSr\" 5       rSrg)1TestInternals.test_auto_garbage_ok.<locals>.Colori  r  rT   Nr"  rT   rB   r@   r  r        vrB   r  rG   )rK  rL  r   r   r  r  r  s     r@   test_auto_garbage_ok"TestInternals.test_auto_garbage_ok  sN    
 ""#57_`  a 	))1-	 a`s   A
A$c                    U R                  [        S5          " S S[        5      nS S S 5        U R                  [	        W5      UR
                  UR                  UR                  /5        U R                  UR
                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        g ! , (       d  f       N= f)Nr  c                   *    \ rS rSrSrSr\" 5       rSrg);TestInternals.test_auto_garbage_corrected_ok.<locals>.Colori  r  r)   rT   N	r`   ra   rb   rc   r  r  r   r  rg   rT   rB   r@   r  r        rB   r  r  r)   r^   )	rK  rL  r   r   r   r  r  r  r  r  s     r@   test_auto_garbage_corrected_ok,TestInternals.test_auto_garbage_corrected_ok  s    
 ""#57_`  a 	euyy%**ekk&JK%0))1-**A. a`s   C
C,z*mixed types with auto() will raise in 3.13c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nzunable to increment 'red'c                   &    \ rS rSrSr\" 5       rSrg)3TestInternals.test_auto_garbage_fail.<locals>.Colori  r  rT   Nr"  rT   rB   r@   r  r    r  rB   r  rg
  r  s     r@   test_auto_garbage_fail$TestInternals.test_auto_garbage_fail  s.    
 ##I/JK  LKKr  c                     U R                  [        S5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nz!unable to sort non-numeric valuesc                   *    \ rS rSrSrSr\" 5       rSrg)=TestInternals.test_auto_garbage_corrected_fail.<locals>.Colori  r  r)   rT   Nr  rT   rB   r@   r  r    r  rB   r  rg
  r  s     r@    test_auto_garbage_corrected_fail.TestInternals.test_auto_garbage_corrected_fail  s.    
 ##I/RS  TSSr  c                     U R                  [        5          " S S[        5      nS S S 5        g ! , (       d  f       g = f)Nc                   D    \ rS rSr\" 5       r\" 5       r\" 5       rS rSr	g),TestInternals.test_auto_order.<locals>.Colori  c                     U $ r  rT   r  s       r@   rq  BTestInternals.test_auto_order.<locals>.Color._generate_next_value_  s    KrB   rT   N)
r`   ra   rb   rc   r   r  r  r  rq  rg   rT   rB   r@   r  r    s    fv rB   r  r  r  s     r@   test_auto_orderTestInternals.test_auto_order  s(    y)    *))s   /
=c                 F  ^ [        5       mSTl         " U4S jS[        5      nU R                  [	        U5      UR
                  UR                  /5        U R                  UR
                  R                  S5        U R                  UR                  R                  S5        g )Nzpathological casec                   0   > \ rS rSr Y rS r\" 5       rSrg)2TestInternals.test_auto_order_wierd.<locals>.Colori  c                     U $ r  rT   r  s       r@   rq  HTestInternals.test_auto_order_wierd.<locals>.Color._generate_next_value_  r  rB   rT   N)	r`   ra   rb   rc   r  rq  r   r  rg   )
weird_autos   r@   r  r    s    C6DrB   r  r  )r   r  r   r   r   r  r  )r   r  r  s     @r@   test_auto_order_wierd#TestInternals.test_auto_order_wierd  st    V
.
	D 	
 	euyy%**&=>*=>))62rB   z,auto() will return highest value + 1 in 3.13c                 R    " S S[         5      nU R                  UR                  UR                  5        U R                  UR                  UR
                  5        U R                  UR                  UR                  5        U R                  UR                  UR
                  5        g )Nc                   F    \ rS rSr\" 5       r\" 5       r\r\r\" 5       r	Sr
g)3TestInternals.test_auto_with_aliases.<locals>.Colori  rT   N)r`   ra   rb   rc   r   r  r  oxfordcrimsonr  rg   rT   rB   r@   r  r    s!    &C6DFGFErB   r  )r   r  r  r  r  r  r  r  r  s     r@   test_auto_with_aliases$TestInternals.test_auto_with_aliases  sl    
	D 	 	emmUYY/ellEJJ/eii0ejj1rB   c                      " S S[         5      nU R                  UR                  UR                  UR                  /[        U5      5        g )Nc                   B    \ rS rSr\" 5       =rr\" 5       r\" 5       rSr	g)0TestInternals.test_duplicate_auto.<locals>.Dupesi  rT   Nr(  rT   rB   r@   r*  r    r+  rB   r*  r,  r-  s     r@   r.  !TestInternals.test_duplicate_auto  r0  rB   c                     " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5         " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S	5        U R                  UR                  R                  S
5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR                  R                  S5         " S S[         5      nU R                  UR                  R                  S5        U R                  UR                  R                  S5        U R                  UR
                  R                  S5        g )Nc                   f    \ rS rSr\" 5       r\" 5       \" 5       4r\" 5       \" 5       \" 5       4rSrg)5TestInternals.test_multiple_auto_on_line.<locals>.Huhi&  rT   N)	r`   ra   rb   rc   r   r(  r)  r  rg   rT   rB   r@   r  r  &  s(    &C&$&.CFDFDF*ErB   r  rG   )r)   r^   )rr   r  r  c                   r    \ rS rSrSS jrS r\" 5       r\" 5       r\" 5       S4r	\" 5       S4r
\" 5       rSrg)	5TestInternals.test_multiple_auto_on_line.<locals>.Hahi.  Nc                 ~    [         R                  U 5      nXl        U=(       d    US S R                  5       Ul        U$ r  )r  r  r&  r  abbr)r  r  r  r   s       r@   r  =TestInternals.test_multiple_auto_on_line.<locals>.Hah.__new__/  s3    ,!&"7eBQioo&7rB   c                     U $ r  rT   r  s       r@   rq  KTestInternals.test_multiple_auto_on_line.<locals>.Hah._generate_next_value_4  r  rB   WEDThurT   r  )r`   ra   rb   rc   r  rq  r   MONDAYTUESDAY	WEDNESDAYTHURSDAYFRIDAYrg   rT   rB   r@   Hahr  .  s9    
 VFfGIvu}HVFrB   r  r  monr  tuer  r  r  r  r  fric                   l    \ rS rSrS r\" 5       r\" 5       \" 5       4r\" 5       \" 5       \" 5       4rSr	g)r  iG  c                     US-   $ r  rT   r  s       r@   rq  KTestInternals.test_multiple_auto_on_line.<locals>.Huh._generate_next_value_H  s    QwrB   rT   N)
r`   ra   rb   rc   rq  r   r(  r)  r  rg   rT   rB   r@   r  r  G  s-    &C&$&.CFDFDF*ErB   )r)   r)   )r^   r^   r^   )r   r   r(  r  r)  r  r  r  r  r  r  r  )r   r  r  s      r@   test_multiple_auto_on_line(TestInternals.test_multiple_auto_on_line%  s   	+$ 	+ 	*/)4	$ 	 	))84%0**I6))51,,k:++U3++Z8**E2))84%0	+$ 	+ 	*/)4rB   rT   N)r`   ra   rb   rc   r   r   r   r   r   r   r   r   r  r  r  rM
  rO
  rP
  r  r  r  r  r  r  r  r.  r  rg   rT   rB   r@   r  r    s   1L7L@MLCLSSX	/55 __g%9.	. __g%9
/	
/ __W$8	 __W$8	 
3 __W$:
2	
2P*5rB   r  a  Help on class Color in module %s:

class Color(enum.Enum)
 |  Color(*values)
 |
 |  Method resolution order:
 |      Color
 |      enum.Enum
 |      builtins.object
 |
 |  Data and other attributes defined here:
 |
 |  CYAN = <Color.CYAN: 1>
 |
 |  MAGENTA = <Color.MAGENTA: 2>
 |
 |  YELLOW = <Color.YELLOW: 3>
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from enum.Enum:
 |
 |  name
 |      The name of the Enum member.
 |
 |  value
 |      The value of the Enum member.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from enum.EnumType:
 |
 |  __contains__(value)
 |      Return True if `value` is in `cls`.
 |
 |      `value` is in `cls` if:
 |      1) `value` is a member of `cls`, or
 |      2) `value` is the value of one of the `cls`'s members.
 |      3) `value` is a pseudo-member (flags)
 |
 |  __getitem__(name)
 |      Return the member matching `name`.
 |
 |  __iter__()
 |      Return members in definition order.
 |
 |  __len__()
 |      Return the number of members (no aliases)
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from enum.EnumType:
 |
 |  __members__
 |      Returns a mapping of member name->value.
 |
 |      This mapping lists all enum members, including aliases. Note that this
 |      is a read-only view of the internal mapping.a:  Help on class Color in module %s:

class Color(enum.Enum)
 |  Color(*values)
 |
 |  Method resolution order:
 |      Color
 |      enum.Enum
 |      builtins.object
 |
 |  Data and other attributes defined here:
 |
 |  CYAN = <Color.CYAN: 1>
 |
 |  MAGENTA = <Color.MAGENTA: 2>
 |
 |  YELLOW = <Color.YELLOW: 3>
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from enum.Enum:
 |
 |  name
 |
 |  value
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from enum.EnumType:
 |
 |  __contains__(value)
 |
 |  __getitem__(name)
 |
 |  __iter__()
 |
 |  __len__()
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from enum.EnumType:
 |
 |  __members__c                   L    \ rS rSrSr " S S\5      rS rS rS r	S r
S	 rS
rg)
TestStdLibi  Nc                        \ rS rSrSrSrSrSrg)TestStdLib.Colori  rG   r)   r^   rT   N)r`   ra   rb   rc   CYANMAGENTAYELLOWrg   rT   rB   r@   r  r    s    rB   r  c                    [         R                  c  [        [        -  nO[        [        -  n[        5       n[        R                  " US9nU" U R                  5        UR                  5       R                  5       nU R                  XAU5        g )N)output)r
   r  !expected_help_output_without_docsr`   expected_help_output_with_docsr   pydocHelperr  getvaluer	  r   )r   expected_textr  helperresults        r@   
test_pydocTestStdLib.test_pydoc  sf    ??"=HM:XEMV,tzz"((*7rB   c                    [        S[        4SSU R                  R                  4S[        4SU R                  R
                  4SU R                  R                  4SU R                  R                  4S[        R                  S   4S	[        R                  S	   4S
U R                  R                  4SU R                  R                  4SSU R                  R                  4SS[        U R                  S5      4SU R                  R                  445      n[        [        R                   " U R                  5      5      nU R#                  [%        UR'                  5       5      [%        UR'                  5       5      5        SnUR'                  5        HF  nUS:X  a  M  X$   X   :w  d  M  [)        5         [)        SS< SU< SX$   < SX   < SS< S3SS9  SnMH     U(       a  U R+                  S5        g g )Nr  )r  ...r  ra   r  r  r  r   r  r  __contains__)r`   r  __getitem__)rb   r  rp  __iter__Fr  
K===========================================================================z
     key: z
  result: z
expected: rZ  sepT/result does not equal expected, see print above)r  r   r  r  r`   r  r  r  r   r8  r  r  r  r  r  inspect
getmembersr   r  keysrI  fail)r   rp  r	  r  r!  s        r@   test_inspect_getmembers"TestStdLib.test_inspect_getmembers  s   h'"

 6 67x(4::,,-DJJ../)v./$--01DJJ../!8!89%

 6 674$gdjj:M&NOTZZ001! $ g((45V[[]+S-?@AI~yFI%!1fiHFKMO  IIGH rB   c                    SSK Jn  U" SS[        [        S9U" SS[        U R                  R
                  S9U" SSU R                  S	S9U" S
S[        U R                  R                  S9U" SS[        U R                  R                  S9U" SS[        [        U R                  S5      S9U" SS[        U R                  R                  S9U" SS[        [        R                  S9U" SSU R                  [        S9U" SSU R                  SS9U" SSU R                  SS9U" SSU R                  U R                  R                  S9U" SSU R                  U R                  R                  S9U" SSU R                  U R                  R                  S9U" SS[        [        R                   S   S9U" SS[        [        R                   S   S9/nU H  n UR"                    M     UR)                  S S9  [+        [         R,                  " U R                  5      5      nUR)                  S S9  U R/                  [1        U5      [1        U5      U Vs/ s H  oUR"                  PM     sn< SU Vs/ s H  oUR"                  PM     sn< 35        Sn[3        X$5       H{  u  p7UR"                  S ;   aB  S! H:  n[        X85      [        Xx5      :w  d  M  ['        S"S#< S"U< S"U< S"S#< S"3	S$S%9  S&nM<     MW  Xs:w  d  M^  ['        S"S#< S"U< S"U< S"S#< S"3	S$S%9  S&nM}     U(       a  U R5                  S'5        g g ! [$         a    ['        U5         GM|  f = fs  snf s  snf )(Nr   )	Attributer  data)r   kinddefining_classr  r  methodr  r  r  r  rp  zclass methodr  r  r6  ra   r`   r  rb   r  r  r  r  r   r  c                     U R                   $ r  r3  r`  s    r@   <lambda>>TestStdLib.test_inspect_classify_class_attrs.<locals>.<lambda>      TYYrB   )keyc                     U R                   $ r  r3  r#  s    r@   r$  r%    r&  rB   z != F)rp  r  )r   r  r   r  r  rZ  r  Tr  )r  r  r  r   r  r  r  r  r  r  r  r`   r  r  r  r   r8  r   r  rI  sortr   classify_class_attrsr   rJ   r  r  )	r   r  rp  r"  r	  r   r  r  r   s	            r@   !test_inspect_classify_class_attrs,TestStdLib.test_inspect_classify_class_attrs  s   %{#)(<~H#+DJJ4K4KMyv#'::e=}8#+DJJ4J4JLz#+DJJ4G4GI2#)'$**FY2Z\yx#+DJJ4F4FH}:#+H4H4HJ|&#'::h@z#'::g?~F#'::6HJxf#'::djj6G6GIyv#'::djj6H6HJvF#'::djjooGvF#'f0EGwV#'g0FH?!D A 
 	./g224::>?./FS[/56v!vvv68PA8PQ	 'DAvv99 =Dq'71+;;h1hOUWX!% = h1hGRP ( IIGH - " a 78Ps   L0M+M0M
	M
c                    SSK JnJnJn  U R	                  U" [
        5      U" U" SUR                  5      U" SUR                  5      U" SUR                  S S9U" SUR                  S S9U" SUR                  S S9U" S	UR                  S
S9U" SUR                  S S9/5      5        U R	                  U" [        R                  5      U" U" SUR                  5      /5      5        g )Nr   )	signature	Signature	Parameternew_class_namer  r   )rg	  r   r  rn  rG   r  rp  )r  r.  r/  r0  r   r   POSITIONAL_ONLYPOSITIONAL_OR_KEYWORDKEYWORD_ONLYr1   FlagBoundaryVAR_POSITIONAL)r   r.  r/  r0  s       r@   test_inspect_signatures"TestStdLib.test_inspect_signatures-  s    ;;$.	0I0IJgy'F'FGh	(>(>Mj)*@*@$Ofi&<&<dKgy'='=qIj)*@*@$O 	 	$++,h	(@(@A 	rB   c                    [        [        5       " S S5      5       n " S S[        5      n[        X!5        SUR                  l        U R                  [        S[        X!5         " S S[        [        S	9nUnU R                  [        U5      UR                  UR                  UR                  /5        [        [        [        S	9 " S
 S5      5       nUnU R                  [        U5      UR                  UR                  UR                  /5        [        X55         " S S[        5      nU R                  [        5       U5        U R                  SU5        U R                  UR                   R"                  S5        U R                  UR                   R                   S5        [        5        " S S5      5       nU R                  [        5       U5        U R                  SU5        U R                  UR                   R"                  S5        U R                  UR                   R                   S5        [        Xx5         " S S[$        5      n	[        [$        5       " S S5      5       n
[        X5         " S S[        5      nU R'                  UR(                  UR*                  5        [        [        5       " S S5      5       n[        X5        g )Nc                   D    \ rS rSrSrSrSr\R                  S 5       r	Sr
g)5TestStdLib.test_test_simple_enum.<locals>.SimpleColoriC  rG   r)   r^   c                      SU R                   -  $ Nz	zeroed %sr3  r  s    r@   zeroth<TestStdLib.test_test_simple_enum.<locals>.SimpleColor.zerothH      "TYY..rB   rT   Nr`   ra   rb   rc   r  r  r  rb  r6  r>  rg   rT   rB   r@   SimpleColorr;  C  s'    DGF^^/ /rB   rB  c                   D    \ rS rSrSrSrSr\R                  S 5       r	Sr
g)6TestStdLib.test_test_simple_enum.<locals>.CheckedColoriK  rG   r)   r^   c                      SU R                   -  $ r=  r3  r  s    r@   r>  =TestStdLib.test_test_simple_enum.<locals>.CheckedColor.zerothO  r@  rB   rT   NrA  rT   rB   r@   CheckedColorrD  K  s'    DGF^^/ /rB   rG  rG  zenum mismatchc                   $    \ rS rSrSrSrSrSrSrg)8TestStdLib.test_test_simple_enum.<locals>.CheckedMissingiZ  rf          rT   N	r`   ra   rb   rc   
SIXTY_FOURONE_TWENTY_EIGHTTWENTY_FORTY_EIGHTrt  rg   rT   rB   r@   CheckedMissingrI  Z  s    J"!%&CrB   rQ  r  c                   $    \ rS rSrSrSrSrSrSrg)1TestStdLib.test_test_simple_enum.<locals>.Missingib  rf  rJ  rK  rL  rT   NrM  rT   rB   r@   rb  rS  b  s    J"!%&CrB   rb  c                   4    \ rS rSr\" 5       r\" 5       rSrSr	g);TestStdLib.test_test_simple_enum.<locals>.CheckedUnhashableim  pythonrT   N
r`   ra   rb   rc   r  r(  r  r)  r   rg   rT   rB   r@   CheckedUnhashablerU  m  s    &C%CDrB   rX  rV  r   c                   4    \ rS rSr\" 5       r\" 5       rSrSr	g)4TestStdLib.test_test_simple_enum.<locals>.Unhashableiv  rV  rT   NrW  rT   rB   r@   
UnhashablerZ  v  s    &C%CDrB   r[  c                   .    \ rS rSrS	S jrSrSrSrSrSr	g)
>TestStdLib.test_test_simple_enum.<locals>.CheckedComplexStatusi  c                 T    [         R                  X5      nXl        X$l        X4l        U$ r  rf  r  r&  phraser'  r  r  r`  r'  r   s        r@   r  FTestStdLib.test_test_simple_enum.<locals>.CheckedComplexStatus.__new__  $    kk#-##
"-
rB   r  Continuez!Request received, please continuef   
Processingg   zEarly Hintsrj  zSome Early HintsrT   NrZ  
r`   ra   rb   rc   r  CONTINUE
PROCESSINGEARLY_HINTS
SOME_HINTSrg   rT   rB   r@   CheckedComplexStatusr]    s     LH*J,K0JrB   rr  c                   .    \ rS rSrS	S jrSrSrSrSrSr	g)
7TestStdLib.test_test_simple_enum.<locals>.ComplexStatusi  c                 T    [         R                  X5      nXl        X$l        X4l        U$ r  r_  ra  s        r@   r  ?TestStdLib.test_test_simple_enum.<locals>.ComplexStatus.__new__  rc  rB   rd  rf  ri  rk  rT   Nrl  rm  rT   rB   r@   ComplexStatusrt    s     LH*J,K0JrB   rw  c                   &    \ rS rSrS rSrSrSrSrg)<TestStdLib.test_test_simple_enum.<locals>.CheckedComplexFlagi  c                 H    [         R                  X5      nXl        X#l        U$ r  rf  r  r&  r  r  r  r  r   s       r@   r  DTestStdLib.test_test_simple_enum.<locals>.CheckedComplexFlag.__new__      kk#-#!	
rB   rG   z
upper half)rG   zouter upper halfr)   z
lower halfrT   N	r`   ra   rb   rc   r  SHIRTVESTPANTSrg   rT   rB   r@   CheckedComplexFlagry    s    
 $E(D#ErB   r  c                   &    \ rS rSrS rSrSrSrSrg)5TestStdLib.test_test_simple_enum.<locals>.ComplexFlagi  c                 H    [         R                  X5      nXl        X#l        U$ r  r{  r|  s       r@   r  =TestStdLib.test_test_simple_enum.<locals>.ComplexFlag.__new__  r~  rB   r  )rG   zuppert halfr  rT   Nr  rT   rB   r@   ComplexFlagr    s    
 $E#D#ErB   r  )r   r   r   r  r&  r   r  r   r   r   r   rN  rO  rP  r  r  r   r  r	   r  r  r  )r   rB  rG  rQ  CMrb  MrX  r[  rr  rw  r  r  s                r@   test_test_simple_enum TestStdLib.test_test_simple_enumB  sZ   	d		/ 	/ 
	/	/4 	/ 	,4&'#?!<		'Wt 	'
 n-r?R?RTVTiTi/jk	g	-	' 	' 
.	'
 n-a>P>PRSRfRf/gh.2	 	 	df/0h 12*//55x@*//44f=		 	 
	 	dfj)h
+..9--v6+8
	17 
	1 
g	
	1 
	1 

	1 	.>	$ 	$ 	(..0B0G0GH	g		$ 	$ 
	$ 	,:rB   rT   )r`   ra   rb   rc   maxDiffr   r  r
  r  r+  r7  r  rg   rT   rB   r@   r  r    s1    G 

8 ID?IB*o;rB   r  c                   2    \ rS rSrS rS rS rS rS rSr	g)	MiscTestCasei  c                 <    [         R                  " U [        SS1S9  g )Nbinrs  )not_exported)r$   check__all__r1   r  s    r@   test__all__MiscTestCase.test__all__  s    T4u>P6QRrB   c                 Z     " S S[         5      nU R                  UR                  S 5        g )Nc                       \ rS rSrSrSrg)'MiscTestCase.test_doc_1.<locals>.Singlei  rG   rT   Nr  rT   rB   r@   Singler    r  rB   r  r   r   r  )r   r  s     r@   
test_doc_1MiscTestCase.test_doc_1  s"    	T 	.rB   c                 Z     " S S[         5      nU R                  UR                  S 5        g )Nc                       \ rS rSrSrSrSrg)'MiscTestCase.test_doc_2.<locals>.Doublei  rG   r)   rT   Nr'  rT   rB   r@   Doubler    rH  rB   r  r  )r   r  s     r@   
test_doc_2MiscTestCase.test_doc_2  s$    	T 	 	.rB   c                 Z     " S S[         5      nU R                  UR                  S 5        g )Nc                        \ rS rSrSrSrSrSrg)'MiscTestCase.test_doc_3.<locals>.Triplei  rG   r)   r^   rT   Nr  rT   rB   r@   Tripler    r  rB   r  r  )r   r  s     r@   
test_doc_3MiscTestCase.test_doc_3  s$    	T 	 	.rB   c                 Z     " S S[         5      nU R                  UR                  S 5        g )Nc                   $    \ rS rSrSrSrSrSrSrg)*MiscTestCase.test_doc_4.<locals>.Quadruplei  rG   r)   r^   rr   rT   N)	r`   ra   rb   rc   r(  r)  r  r	  rg   rT   rB   r@   	Quadrupler    s    CCEDrB   r  r  )r   r  s     r@   
test_doc_4MiscTestCase.test_doc_4  s&    	 	
 	**D1rB   rT   N)
r`   ra   rb   rc   r  r  r  r  r  rg   rT   rB   r@   r  r    s    S/
//2rB   r  r  r  r  rG  rG   r                ?               @              @c                   D    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)TestConverti  c                     [        5       nS H  nSUSU-  '   SUSU-  '   M     S H  u  p#X1SU-  '   M     S H  u  p#X1SU-  '   M     S	 H  u  p#X1S
U-  '   M     g )N)r  r  r  r  r  r  r  zCONVERT_TEST_NAME_%szCONVERT_STRING_TEST_NAME_%s))r  r  )r  r  )r  r  zUNCOMPARABLE_%s))r  r  )r  r  )r  r  z
COMPLEX_%s))r|  r  )r}  r  zCONVERT_STR_TEST_%s)r  )r   r  suffixr  s       r@   tearDownTestConvert.tearDown  s     I4F12A$v-.89A+f45 5 GMF,1&() G>MF',lV#$ ??MF05#f,- @rB   c                     [         R                  R                  S[        S S9nU R	                  U" S5      R
                  S5        g )NUnittestConvertc                 $    U R                  S5      $ NCONVERT_TEST_rH	  rj  s    r@   r$  @TestConvert.test_convert_value_lookup_priority.<locals>.<lambda>      o!>rB   filterr  CONVERT_TEST_NAME_A)r1   r	   	_convert_MODULEr   r   r   r  s     r@   "test_convert_value_lookup_priority.TestConvert.test_convert_value_lookup_priority  sB    LL**!> + @	 	1**,ABrB   c                 n   [         R                  R                  S[        S S9nU R	                  UR
                  UR                  5        U R	                  UR                  S5        U R	                  UR                  S5        U R	                  UR                  S5        U R	                  UR                  S5        [        U5       Vs/ s H  o"[        U5      ;  d  M  UPM     nn[        U5       Vs/ s H  o"[        U5      ;  d  M  UPM     nnU R	                  X4-   / SU< SU< 3S9  g s  snf s  snf )Nr  c                 $    U R                  S5      $ r  r  r  s    r@   r$  .TestConvert.test_convert_int.<locals>.<lambda>  r  rB   r  r  extra names: ;  missing names: msg)r1   r	   r  r  r   CONVERT_TEST_NAME_Fr  CONVERT_TEST_NAME_BCONVERT_TEST_NAME_CCONVERT_TEST_NAME_DCONVERT_TEST_NAME_Er  r   r   r  r   extrar  s        r@   test_convert_intTestConvert.test_convert_int  s   LL**!> + @	
 	66"66	866:66:66:66:"%i.T.$@S4S.T$,Y$7V$7Ds9~;U4$7V=BGL 	 	 UVs   D-D-3D2	D2c                     [         R                  R                  S[        S S9nU R	                  [        U5      UR                  UR                  UR                  /5        g )NUncomparablec                 $    U R                  S5      $ )NUNCOMPARABLE_r  r  s    r@   r$  7TestConvert.test_convert_uncomparable.<locals>.<lambda>%  r  rB   r  )	r1   r   r  r  r   r   UNCOMPARABLE_AUNCOMPARABLE_BUNCOMPARABLE_Cr   uncomps     r@   test_convert_uncomparable%TestConvert.test_convert_uncomparable!  sX    $$> % @
 	L""F$9$96;P;PQ	rB   c                     [         R                  R                  S[        S S9nU R	                  [        U5      UR                  UR                  UR                  /5        g )Nr  c                 $    U R                  S5      $ )NCOMPLEX_r  r  s    r@   r$  2TestConvert.test_convert_complex.<locals>.<lambda>0  s    Q\\*5rB   r  )	r1   r   r  r  r   r   	COMPLEX_A	COMPLEX_B	COMPLEX_Cr  s     r@   test_convert_complex TestConvert.test_convert_complex,  sW    $$5 % 7
 	Lv//1A1AB	rB   c                    [         R                  R                  S[        S SS9nU R	                  UR
                  S5        U R	                  UR                  S5        [        U5       Vs/ s H  o"[        U5      ;  d  M  UPM     nn[        U5       Vs/ s H  o"[        U5      ;  d  M  UPM     nnU R	                  X4-   / SU< SU< 3S	9  U R	                  [        UR
                  5      S
[        -  5        U R	                  [        UR                  5      S5        U R	                  [        UR
                  5      S5        g s  snf s  snf )Nr  c                 $    U R                  S5      $ )NCONVERT_STR_r  r  s    r@   r$  .TestConvert.test_convert_str.<locals>.<lambda>;  s    n!=rB   Tr  	as_globalr  r  r  r  r  z%s.CONVERT_STR_TEST_1)r1   r
   r  r  r   CONVERT_STR_TEST_1CONVERT_STR_TEST_2r  r   r  r  r  r  r  s        r@   test_convert_strTestConvert.test_convert_str7  s!   LL**!=	 +  	 	55w?55yA"%i.T.$@S4S.T$,Y$7V$7Ds9~;U4$7V=BGL 	 	
 	i::;=TWc=cdY99:IF	 < <=wG UVs   +EEE,Ec                     U R                  [        5         [        R                  R	                  S[
        S S9  S S S 5        g ! , (       d  f       g = f)Nr  c                 $    U R                  S5      $ r  r  r  s    r@   r$  0TestConvert.test_convert_raise.<locals>.<lambda>Q  r  rB   r  )r  r  r1   r	   _convertr  r  s    r@   test_convert_raiseTestConvert.test_convert_raiseL  s=    ~.LL!!!> " @ /..s   %A
Ac                 :   [         R                  R                  S[        S SS9nU R	                  [        UR                  5      S[        -  5        U R	                  [        UR                  5      S5        U R	                  [        UR                  5      S5        g )Nr  c                 $    U R                  S5      $ )NCONVERT_STRING_TEST_r  r  s    r@   r$  7TestConvert.test_convert_repr_and_str.<locals>.<lambda>W  s    .D!ErB   Tr  z%s.CONVERT_STRING_TEST_NAME_Ar  )
r1   r	   r  r  r   r  CONVERT_STRING_TEST_NAME_Ar  r  r  r  s     r@   test_convert_repr_and_str%TestConvert.test_convert_repr_and_strS  s    LL**!E	 +  	
 	iBBCEdgsEstYAABCH	 D DEsKrB   rT   N)r`   ra   rb   rc   r  r  r  r  r  r  r  r  rg   rT   rB   r@   r  r    s.    6C,		H*@LrB   r  c                        \ rS rSrS rS rSrg)TestEnumDicti^  c                 <   ^   " S S[         5      n " U 4S jSUS9ng)z1Test that EnumDict is usable as a class namespacec                   $    \ rS rSr\S 5       rSrg)6TestEnumDict.test_enum_dict_in_metaclass.<locals>.Metaia  c                     [        U5      $ r  )r   )r  r  r  r(  s       r@   __prepare__BTestEnumDict.test_enum_dict_in_metaclass.<locals>.Meta.__prepare__b  s    }$rB   rT   N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   Metar  a  s    % %rB   r  c                      > \ rS rSrSr Y R                  \5         SrSSS5         Y R                  \5         SrSSS5        Sr	g! , (       d  f       N.= f! , (       d  f       Sr	g= f)9TestEnumDict.test_enum_dict_in_metaclass.<locals>.MyClassif  rG   r)   Nr^   rT   )
r`   ra   rb   rc   r   r  r  r   
_a_sunder_rg   r  s   r@   MyClassr  f  sO    A""9- . "":.
 /. .- /.s   AA
A
A(r  r  Nrj  )r   r  r  s   `  r@   test_enum_dict_in_metaclass(TestEnumDict.test_enum_dict_in_metaclass_  s    	%4 	%
	 	rB   c                     [        5       nSUS'   U R                  [        5         SUS'   SSS5        USS0-  nU R                  US   S5        g! , (       d  f       N+= f)z'Test that EnumDict is usable on its ownrG   r   zother valueN)r   r  r  r   )r   enumdicts     r@   test_enum_dict_standalone&TestEnumDict.test_enum_dict_standaloneo  s\    :y))HSM *
 	S-((#6 *)s   A
ArT   N)r`   ra   rb   rc   r  r  rg   rT   rB   r@   r	  r	  ^  s     7rB   r	  c                 ~   [        / SQU R                  -   5      nU R                  [        R                  La  UR                  S5        U R                  [        R                  La  UR                  S5        U R                  [        L a  [        U5      $ [        [        [        U R                  5      5      U-  5      $ )N)
r  r  r  r  r  r  r  ra   r`   rb   r  rp  )
r  _member_names__new_member_r  r  rY  rp  r  sortedr  )r  interestings     r@   r   r     s     
   ! K v~~-	"
F$<$<<+,
F"k"" c#c//01K?@@rB   c                 :   U R                   R                  [        L a  [        / SQ5      nO[        [	        U 5      5      nU R                   R                  5        H  nUR                  R                  5        H  u  p4US   S:X  a  M  [        U[        R                  5      (       aB  UR                  c  X0R                  ;  a  UR                  U5        M^  UR                  U5        Mq  X0R                  ;  d  M  UR                  U5        M     M     [        U5      $ )N)r  r  rj  rQ  ra   r   r  r   r   )r  r  r  r  r  rH  r8  r  rH   r1   r6  r	  rx  rY  discardr  )r   allowedr  r   r   s        r@   r  r    s    %%/cdc&k"##%++-IDAw#~#t}}--88'47J7J+JKK%OOD)000D! . & '?rB   __main__r  )r  r1   r/   r  r2   r  r9   rM
  rc  r:  builtinsrb  r  r   r  r   rW   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   ior   pickler    r!   r"   r#   rn  r$   test.supportr%   r&   r'   r(   version_inforP
  rA   rX   r`   r  ry  r  r\   rI   r  rf  rj   r  rm   rp   rx   r~   r   r   r   r   r   r   r   r   TestCaser   r  global_enumr  r  r&  r+  r  r  r  r  r,  r0  r2  r:  r<  rI  r  r  r\  r`  rb  ri  rm  rq  rs  rw  ry  r  r  r  r  r  r  r  r  rR
  r
  r  r  r!  rU  r  r  r  r  r  r  r  r  r  r  r  CONVERT_STRING_TEST_NAME_DCONVERT_STRING_TEST_NAME_CCONVERT_STRING_TEST_NAME_Br  CONVERT_STRING_TEST_NAME_ECONVERT_STRING_TEST_NAME_Fr  r  r  r  r  r  r  r  r  r	  r   r  mainrT   rB   r@   <module>r1     s~       	  
     #   X X X N N B B < <  @ @  - ) !!"1%&& 
||C $$ S$ ud d d  ! w J 9(KH(9:F(2=RSF
	 C*
1e(## 1el% %	g		  	g  	  Y Yv$4 $4N#3 #3L6& 6&pZ2 Z2z%68I8I J(98;L;L "%6
HDUDU "(J(9:xGXGX 	@z#68I8I 	@@*&98;L;L @
6z#68I8I 
66*&98;L;L 6z#6
HDUDU *&9:xGXGX %
$5x7H7H %,:'8(:K:K ,%
$5x7H7H %,:'8(:K:K ,%J(9:xGXGX %,z+<j(J[J[ ,	!%68I8I 	!
^J(98;L;L 
^	!:':H<M<M 	!
bj*=x?P?P 
b!*&79J9J !_Z):H<M<M _!J(;X=N=N !cz+>@Q@Q c]#@(## ]#@@G<!! <~`B(## `BFaOX&& aOH(("3"3 ("-"" -^C"" CNF5H%% F5R7"8 r(% !T|;"" |;~28$$ 2D                 			jL(## jLZ78$$ 7BA$& zMMO sj  G  J  L  K    N  ! !  D
  H
  F
  F  		t  K  K  Fsb  V #V( 0V> =W 	W* X  !X -X, 9Y 	Y Y. Z #Z ,#Z' Z= V%V  V%(V;.V66V;>WWWW'W""W'*W=0W88W= XXXX)X$$X),X?2X::X?YYYY+Y&&Y+.Z4Y<<ZZZZ$ZZ$'Z:-Z55Z:=[[[