
    /hh8                     z    S SK r S SKJr  S SKr " S S\ R                  5      r\S:X  a  \ R                  " 5         gg)    N)	os_helperc                       \ 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")#BoolTest   c                       " S S[         5      nU R                  S5        U R                  [        [        R
                  [         S5        g ! [         a     N7f = f)Nc                       \ rS rSrSrg)!BoolTest.test_subclass.<locals>.C    N)__name__
__module____qualname____firstlineno____static_attributes__r       7/opt/python-3.13.8/usr/lib/python3.13/test/test_bool.pyCr	      s    r   r   zbool should not be subclassabler   )boolfail	TypeErrorassertRaisesint__new__)selfr   s     r   test_subclassBoolTest.test_subclass
   sN    	9D 
 II78)S[[$:  		s   A 
AAc                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        S5      5      S5        U R                  [        [        S5      5      S5        g NFFalseTTrue)assertEqualreprassertIsevalr   s    r   	test_reprBoolTest.test_repr   sX    eg.dV,d4;'/d4:&-r   c                 p    U R                  [        S5      S5        U R                  [        S5      S5        g r   )r!   strr%   s    r   test_strBoolTest.test_str   s*    UW-TF+r   c                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        g )NFr   T   )r!   r   assertIsNotr%   s    r   test_intBoolTest.test_int   sR    UQ'UU+TA&TD)r   c                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        g )NF        T      ?)r!   floatr.   r%   s    r   
test_floatBoolTest.test_float%   sR    us+uu-tc*td+r   c                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        g )NFy                Ty      ?        )r!   complexr%   s    r   test_complexBoolTest.test_complex+   sR    ,/--r   c                    U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        5         SnU R                  U) S5        S S S 5        U R                  [        5         U R                  [        S5      S5        S S S 5        U R                  [        5         SnU R                  U) S5        S S S 5        U R                  [        5         U R                  [        S5      S5        S S S 5        U R                  S	S	5        U R                  S
S
5        U R                  S	S	5        U R                  S
S
5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  S	S	5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        S HU  nS HL  nU R                  X4-  [        U5      U-  5        U R                  X4-  [        [        U5      U-  5      5        MN     MW     S GH?  nS GH4  nU R                  XS-  [        [        U5      [        U5      -  5      5        U R                  XS-  [        [        U5      [        U5      -  5      5        U R                  XS-  [        [        U5      [        U5      -  5      5        U R                  U[        U5      -  [        U5      [        U5      -  5        U R                  U[        U5      -  [        [        U5      [        U5      -  5      5        U R                  U[        U5      -  [        U5      [        U5      -  5        U R                  U[        U5      -  [        [        U5      [        U5      -  5      5        U R                  U[        U5      -  [        U5      [        U5      -  5        U R                  U[        U5      -  [        [        U5      [        U5      -  5      5        U R                  [        U5      U-  [        U5      [        U5      -  5        U R                  [        U5      U-  [        [        U5      [        U5      -  5      5        U R                  [        U5      U-  [        U5      [        U5      -  5        U R                  [        U5      U-  [        [        U5      [        U5      -  5      5        U R                  [        U5      U-  [        U5      [        U5      -  5        U R                  [        U5      U-  [        [        U5      [        U5      -  5      5        GM7     GMB     U R                  SS:H  S5        U R                  SS:H  S5        U R                  SS:  S5        U R                  SS:  S5        U R                  SS:*  S5        U R                  SS:*  S5        U R                  SS:  S5        U R                  SS:  S5        U R                  SS:  S5        U R                  SS:  S5        U R                  SS:g  S5        U R                  SS:g  S5        S/nU R                  XfL S5        U R                  XfLS5        U R                  SU;   S5        U R                  SU;   S5        U R                  SU;  S5        U R                  SU;  S5        SS	0nU R                  XfL S5        U R                  XfLS5        U R                  SU;   S5        U R                  SU;   S5        U R                  SU;  S5        U R                  SU;  S5        U R                  SS5        U R                  SS5        g ! , (       d  f       GN= f! , (       d  f       GNx= f! , (       d  f       GNW= f! , (       d  f       GN0= f)Nr   Fr-   Tz~Falsez~True      r3   r2   )FT)r   r-   r>   )	r!   r.   absassertWarnsDeprecationWarningr$   r   r   r#   )r   falsetruebiaxs          r   	test_mathBoolTest.test_math1   s   #'#'UQ'UU+"%#TA&TD)01
 EeVR( 2 01 T(^R0 2 01DdUB' 2 01T']B/ 2 	!$#!$#a(e,Q'T*Q'T*A&A&E*a(e,Q'T*R(#!$%(#&!$%(#'#&!$%(A  s1vqy1  tCFAI7  
 A ac4As1v#67ac4As1v#67ac4As1v#67  3q63q6#a&=9  3q64As1v+>?  3q63q6#a&=9  3q64As1v+>?  3q63q6#a&=9  3q64As1v+>?  Q3q6#a&=9  Q4As1v+>?  Q3q6#a&=9  Q4As1v+>?  Q3q6#a&=9  Q4As1v+>? ! $ 	adD!adE"ac4 ac5!adD!adE"ac4 ac5!adD!adE"adD!adE"Cafd#aj%(a1fd#a1fe$aqj%(aqj$'Fafd#aj%(a1fd#a1fe$aqj%(aqj$'h&i&[ 21 21 21 21s0    f.3g ,gg$.
f= 
g
g!$
g3c                    U R                  [        [        SS5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S	5      S5        U R                  [        5       S5        g )
N*   
   Tr-   r<   r   Fhello )r   r   r   r#   r%   s    r   test_convertBoolTest.test_convert   s    )T2r2d2h%d1gt$d2h%d1gu%d7mT*d2h&dfe$r   c                 v    U R                  [        S5         [        SS9  S S S 5        g ! , (       d  f       g = f)Nzkeyword argumentrM   rH   )assertRaisesRegexr   r   r%   s    r   test_keyword_argsBoolTest.test_keyword_args   s'    ##I/AB2J CBBs   
*
8c                     U R                  SS-  S5        U R                  SS-  S5        U R                  SS-  S5        U R                  SS-  S5        g )Nz%dF0T1z%x)r!   r%   s    r   test_formatBoolTest.test_format   sR    s+c*s+c*r   c                 t    U R                  [        / S5      S5        U R                  [        / S5      S5        g )NappendTwobbleF)r#   hasattrr%   s    r   test_hasattrBoolTest.test_hasattr   s,    gb(+T2gb(+U3r   c                 x    U R                  [        [        5      S5        U R                  [        S5      S5        g )NTr-   F)r#   callablelenr%   s    r   test_callableBoolTest.test_callable   s&    hsmT*hqk5)r   c                    U R                  [        S[        5      S5        U R                  [        S[        5      S5        U R                  [        S[        5      S5        U R                  [        S[        5      S5        U R                  [        S[        5      S5        U R                  [        S[        5      S5        g )NTFr-   r   )r#   
isinstancer   r   r%   s    r   test_isinstanceBoolTest.test_isinstance   s    jt,d3j-t4js+T2j,d3jD)51jD)51r   c                     U R                  [        [        [        5      S5        U R                  [        [        [        5      S5        g )NTF)r#   
issubclassr   r   r%   s    r   test_issubclassBoolTest.test_issubclass   s,    js+T2jd+U3r   c                 \    U R                  S0 ;   S5        U R                  SSS0;   S5        g )Nr-   FT)r#   r%   s    r   test_containsBoolTest.test_contains   s*    a2gu%aAa5j$'r   c                    U R                  SR                  S5      S5        U R                  SR                  S5      S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  SR	                  5       S5        U R                  SR	                  5       S5        U R                  SR                  5       S5        U R                  S	R                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  S
R                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  S	R                  5       S5        U R                  SR                  5       S5        U R                  SR                  5       S5        U R                  S	R                  5       S5        U R                  SR                  5       S5        U R                  SR                  S5      S5        U R                  SR                  S5      S5        g )NxyzzTrH   Fxyz0123z@#$%0123XYZ     u   　X)r#   endswithisalnumisalphaisdigitislower	isdecimal	isnumericisspaceistitleisupper
startswithr%   s    r   test_stringBoolTest.test_string   s   ennS)40ennS)51i'')40fnn&.emmot,fnn&.fnn&-emmou-emmot,emmou-f&&($/eoo'/f&&($/eoo'/ckkmT*fnn&-h&&($/emmou-ckkmT*ckkmU+emmot,emmou-e&&s+T2e&&s+U3r   c                 `   U R                  SS5        U R                  S[        5        U R                  SS5        U R                  SS5        U R                  S[        5        U R                  SS5        U R                  SS5        U R                  S[        5        U R                  SS5        g )Nr-   Tr   F)r!   assertNotIsInstancer   r#   r%   s    r   test_booleanBoolTest.test_boolean   s    1%  40k4(1%  40k4(1%  40k5)r   c                 v    [        [        R                  SSS9 nU R                  UR                  S5        S S S 5        U R                  WR                  S5        [
        R                  " [        R                  5        g ! , (       d  f       NO= f! [
        R                  " [        R                  5        f = f)Nwzutf-8)encodingFT)openr   TESTFNr#   closedosremove)r   fs     r   test_fileclosedBoolTest.test_fileclosed   st    	(i&&g>!ahh. ?MM!((D)IIi&&'	 ?> IIi&&'s!   B B$B 
BB &B8c                     [         [        [        [        [        [
        [        [        [        [        [        4 H  nU R                  [        U5      S5        M      g )NT)r   r8   dictr4   r   listobjectsetr)   tupletyper#   )r   ts     r   
test_typesBoolTest.test_types  s8    uc4sE4)AMM$q'4()r   c                 6   SS K nU R                  UR                  S5      S5        U R                  UR                  S5      S5        U R                  UR                  S5      S5        U R                  UR                  S5      S5        U R                  UR	                  / S5      S5        U R                  UR	                  S/S5      S5        U R                  UR                  SS5      S5        U R                  UR                  SS5      S5        U R                  UR                  SS5      S5        U R                  UR                  SS5      S5        U R                  UR                  SS5      S5        U R                  UR                  SS5      S5        g )Nr   Fr-   T)operatorr#   truthnot_containsltis_is_not)r   r   s     r   test_operatorBoolTest.test_operator  s/   hnnQ'/hnnQ'.hmmA&.hmmA&-h''A.6h''Q/6hkk!Q'/hkk!Q'.hll4.5hll4/7hoodD159hoodE2D9r   c                     SS K nU R                  UR                  UR                  S5      5      S5        U R                  UR                  UR                  S5      5      S5        g )Nr   TF)marshalr#   loadsdumps)r   r   s     r   test_marshalBoolTest.test_marshal  sE    gmmGMM$$78$?gmmGMM%$895Ar   c           	         SS K n[        UR                  S-   5       He  nU R                  UR	                  UR                  SU5      5      S5        U R                  UR	                  UR                  SU5      5      S5        Mg     g )Nr   r-   TF)picklerangeHIGHEST_PROTOCOLr#   r   r   )r   r   protos      r   test_pickleBoolTest.test_pickle!  sc    622Q67EMM&,,v||D%'@A4HMM&,,v||E5'ABEJ 8r   c                    SS K nU R                  UR                  SSS9S5        U R                  UR                  SSS9S5        U R                  UR                  SSS9S5        U R                  UR                  SSS9S5        U R                  UR                  SSS9S	5        U R                  UR                  SSS9S
5        g )Nr   T)protocols   I01
.Fs   I00
.r-   r>   s   .s   .)r   r!   r   )r   r   s     r   test_picklevaluesBoolTest.test_picklevalues'  s    dQ7Cea8)DdQ7Cea8)DdQ79IJea8:JKr   c                 F  ^  U 4S jn " S S[         5      nU" U" 5       5         " S S[         5      nU" U" 5       5         " S S[        5      nU" U" 5       5         " S S	[        5      nU" U" 5       5         " S
 S5      nT R                  [        [        U" 5       5        g )Nc                 :   > TR                  [        [        U 5      $ Nr   r   r   )or   s    r   <lambda>/BoolTest.test_convert_to_bool.<locals>.<lambda>5  s    $++ItQ?r   c                       \ rS rSrS rSrg)*BoolTest.test_convert_to_bool.<locals>.Fooi6  c                     U $ r   r   r%   s    r   __bool__3BoolTest.test_convert_to_bool.<locals>.Foo.__bool__7      r   r   Nr   r   r   r   r   r   r   r   r   Foor   6      r   r   c                       \ rS rSrS rSrg)*BoolTest.test_convert_to_bool.<locals>.Bari;  c                     g)NYesr   r%   s    r   r   3BoolTest.test_convert_to_bool.<locals>.Bar.__bool__<  s    r   r   Nr   r   r   r   Barr   ;  s    r   r   c                       \ rS rSrS rSrg)*BoolTest.test_convert_to_bool.<locals>.Bazi@  c                     U $ r   r   r%   s    r   r   3BoolTest.test_convert_to_bool.<locals>.Baz.__bool__A  r   r   r   Nr   r   r   r   Bazr   @  r   r   r   c                       \ rS rSrS rSrg)+BoolTest.test_convert_to_bool.<locals>.SpamiF  c                     g)Nr-   r   r%   s    r   r   4BoolTest.test_convert_to_bool.<locals>.Spam.__bool__G  s    r   r   Nr   r   r   r   Spamr   F  s    r   r   c                       \ rS rSrS rSrg)+BoolTest.test_convert_to_bool.<locals>.EggsiK  c                     g)Nr<   r   r%   s    r   __len__3BoolTest.test_convert_to_bool.<locals>.Eggs.__len__L      r   r   Nr   r   r   r   r   r   r   r   r   Eggsr   K  s    r   r   )r   r   r   
ValueErrorr   )r   checkr   r   r   r   r   s   `      r   test_convert_to_boolBoolTest.test_convert_to_bool1  s     @	& 	 	ce	& 	 	ce	# 	 	ce	3 	 	df	 	 	*dDF3r   c                    ^  " S S5      m " U4S jS5      nU" 5       nU R                  [        5         US:  a  SnOSnS S S 5        Ag ! , (       d  f       Ag = f)Nc                       \ rS rSrS rSrg)FBoolTest.test_interpreter_convert_to_bool_raises.<locals>.SymbolicBooliQ  c                     [         er   )r   r%   s    r   r   OBoolTest.test_interpreter_convert_to_bool_raises.<locals>.SymbolicBool.__bool__R  s    r   r   Nr   r   r   r   SymbolicBoolr   Q  s     r   r   c                   "   > \ rS rSrU 4S jrSrg)@BoolTest.test_interpreter_convert_to_bool_raises.<locals>.SymboliU  c                    > T" 5       $ r   r   )r   otherr   s     r   __gt__GBoolTest.test_interpreter_convert_to_bool_raises.<locals>.Symbol.__gt__V  s    #~%r   r   N)r   r   r   r   r   r   )r   s   r   Symbolr   U  s    & &r   r   r   zx > 0 was truezx > 0 was false)r   r   )r   r   rH   msgr   s       @r   'test_interpreter_convert_to_bool_raises0BoolTest.test_interpreter_convert_to_bool_raisesP  sW    	  	 	& 	& Hy)1u&'	 *  *) s   A
Ac                     U R                  [        R                  SS5      S5        U R                  [        R                  SS5      S5        g )Ns           bigFs   abcdlittleT)r#   r   
from_bytesr%   s    r   test_from_bytesBoolTest.test_from_bytesd  s4    dooi7?doogx8$?r   c           	      &  ^ S H!  m " U4S jS5      n [        U" 5       5        M#     g ! [         a\  n [        U" 5       5         S nAMG  ! [         a3  nU R                  [	        U5      [	        U5      5         S nA S nAM  S nAff = fS nAff = f)N)illegalr<   l        c                   "   > \ rS rSrU 4S jrSrg)!BoolTest.test_sane_len.<locals>.Ail  c                    > T$ r   r   )r   badvals    r   r   )BoolTest.test_sane_len.<locals>.A.__len__m  s    !Mr   r   Nr   )r  s   r   Ar  l  s    " "r   r  )r   	Exceptionrd   r!   r)   )r   r  e_boole_lenr  s       @r   test_sane_lenBoolTest.test_sane_lenh  ss     /F" ">QS	 /  >>HH! >$$S[#e*==>>s2   *
BA
B$B9BBBBc                      " S S5      nU R                  [        [        U" 5       5         " S S5      nU R                  [        [        U" 5       5        g )Nc                       \ rS rSrSrSrg) BoolTest.test_blocked.<locals>.Aix  Nr   r   r   r   r   r  r  x  s    Hr   r  c                       \ rS rSrS rSrSrg) BoolTest.test_blocked.<locals>.Bi|  c                     g)NrM   r   r%   s    r   r   (BoolTest.test_blocked.<locals>.B.__len__}  r   r   Nr   )r   r   r   r   r   r   r   r   r   r   Br  |  s    Hr   r  r   )r   r  r  s      r   test_blockedBoolTest.test_blockedw  s@    	 	)T13/	 	 	)T13/r   c                 ,   U R                  SR                  S5        U R                  SR                  S5        U R                  [	        SR                  5      [
        5        U R                  [	        SR                  5      [
        5        U R                  SR                  S5        U R                  SR                  S5        U R                  [	        SR                  5      [
        5        U R                  [	        SR                  5      [
        5        g )NTr-   r   F)r!   realimagr#   r   r   r%   s    r   test_real_and_imagBoolTest.test_real_and_imag  s    A&A&d499os+d499os+Q'Q'd5::&,d5::&,r   c                 t     " S S5      nS nU" 5       nU" U5        U R                  UR                  S5        g )Nc                        \ rS rSrS rS rSrg)2BoolTest.test_bool_called_at_least_once.<locals>.Xi  c                     SU l         g )Nr   countr%   s    r   __init__;BoolTest.test_bool_called_at_least_once.<locals>.X.__init__  s	    
r   c                 .    U =R                   S-  sl         g)Nr-   Tr  r%   s    r   r   ;BoolTest.test_bool_called_at_least_once.<locals>.X.__bool__  s    

a
r   r  N)r   r   r   r   r   r   r   r   r   r   rz   r    s    r   rz   c                     U (       d   g r   r   rS   s    r   r   2BoolTest.test_bool_called_at_least_once.<locals>.f  s
    Dr   r-   )assertGreaterEqualr  )r   rz   r   rH   s       r   test_bool_called_at_least_once'BoolTest.test_bool_called_at_least_once  s5    	 		 C	!+r   c                    U R                  [        R                  [        5      S5        U R                  [        R                  [        S5      S5        U R                  [        R                  [        S5      S5        U R                  [        R                  [        S5      S5        U R                  [        R                  [        S5      S5        g )NFr-   Tr   )r#   r   r   r%   s    r   test_bool_newBoolTest.test_bool_new  s}    dll4(%0dll4+T2dll4+U3dll4/7dll4.5r   r   N)$r   r   r   r   r   r&   r*   r/   r5   r9   rI   rP   rU   rZ   r`   re   ri   rm   rp   r   r   r   r   r   r   r   r   r   r   r   r	  r  r  r'  r*  r   r   r   r   r   r      s    	;.,*,.y'v%+4*24(44*():B
KL4>(@>	0-, 6r   r   __main__)unittesttest.supportr   r   TestCaser   r   mainr   r   r   <module>r1     s=     " 	Y6x   Y6x zMMO r   