
    5\h4                     v    d dl Z d dlmZ d dlZ G d de j                  Zedk    r e j                     dS dS )    N)	os_helperc                       e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z dS ) BoolTestc                     	  G d dt                     }|                     d           n# t          $ r Y nw xY w|                     t          t          j        t           d           d S )Nc                       e Zd ZdS )!BoolTest.test_subclass.<locals>.CN)__name__
__module____qualname__     8/opt/python-3.11.14/usr/lib/python3.11/test/test_bool.pyCr      s        r   r   zbool should not be subclassabler   )boolfail	TypeErrorassertRaisesint__new__)selfr   s     r   test_subclasszBoolTest.test_subclass
   s    	9    D   
 II78888  	 	 	D	
 	)S[$:::::s   + 
88c                 R   |                      t          d          d           |                      t          d          d           |                     t          t          d                    d           |                     t          t          d                    d           d S NFFalseTTrue)assertEqualreprassertIsevalr   s    r   	test_reprzBoolTest.test_repr   s    eg...dV,,,d4;;''///d4::&&-----r   c                     |                      t          d          d           |                      t          d          d           d S r   )r   strr    s    r   test_strzBoolTest.test_str   s@    UW---TF+++++r   c                    |                      t          d          d           |                     t          d          d           |                      t          d          d           |                     t          d          d           d S )NFr   T   )r   r   assertIsNotr    s    r   test_intzBoolTest.test_int   sx    UQ'''UU+++TA&&&TD)))))r   c                    |                      t          d          d           |                     t          d          d           |                      t          d          d           |                     t          d          d           d S )NF        T      ?)r   floatr'   r    s    r   
test_floatzBoolTest.test_float%   sx    us+++uu---tc***td+++++r   c                    |                      t          d          d           |                      t          d          d           |                      t          d          d           |                      t          d          d           d S )NFy                Ty      ?        )r   complexr    s    r   test_complexzBoolTest.test_complex+   sx    ,,,///--------r   c                 x   |                      dd           |                     dd           |                      dd           |                     dd           |                      t          d          d           |                     t          d          d           |                      dd           |                     dd           |                      dd           |                      t          d          d           |                     t          d          d           |                      dd           |                      dd           |                      dd           |                      dd           |                      dd           |                      dd           |                      dd           |                     dd           |                      dd           |                     dd           |                      dd           |                     dd           |                      dd           |                      dd           |                     dd           |                      dd           |                     dd           |                      dd           |                     dd           |                      dd           |                      dd           |                      dd           |                     dd           |                      d	d           |                     d	d           |                      d
d           |                     d
d           |                      dd           |                     dd           |                      dd           |                     dd           |                      dd           |                     dd           dD ]f}dD ]a}|                      ||z  t          |          |z             |                     ||z  t	          t          |          |z                       bgdD ]E}dD ]>}|                     ||z  t	          t          |          t          |          z                       |                     ||z  t	          t          |          t          |          z                       |                     ||z  t	          t          |          t          |          z                       |                      |t          |          z  t          |          t          |          z             |                     |t          |          z  t	          t          |          t          |          z                       |                      |t          |          z  t          |          t          |          z             |                     |t          |          z  t	          t          |          t          |          z                       |                      |t          |          z  t          |          t          |          z             |                     |t          |          z  t	          t          |          t          |          z                       |                      t          |          |z  t          |          t          |          z             |                     t          |          |z  t	          t          |          t          |          z                       |                      t          |          |z  t          |          t          |          z             |                     t          |          |z  t	          t          |          t          |          z                       |                      t          |          |z  t          |          t          |          z             |                     t          |          |z  t	          t          |          t          |          z                       @G|                     ddk    d           |                     ddk    d           |                     ddk     d           |                     ddk     d           |                     ddk    d           |                     ddk    d           |                     ddk    d           |                     ddk    d           |                     ddk    d           |                     ddk    d           |                     ddk    d           |                     ddk    d           dg}|                     ||u d           |                     ||ud           |                     d|v d           |                     d|v d           |                     d|vd           |                     d|vd           ddi}|                     ||u d           |                     ||ud           |                     d|v d           |                     d|v d           |                     d|vd           |                     d|vd           |                     dd           |                     dd           d S )Nr   Fr&   T      r+   r*   )FT)r   r&   r4   )r   r'   absr   r   r   )r   biaxs        r   	test_mathzBoolTest.test_math1   s
   ###'''###'''UQ'''UU+++"""%%%###TA&&&TD)))$$$###!$$$###!$$$###a(((e,,,Q'''T***Q'''T***A&&&A&&&E***a(((e,,,Q'''T***R(((###!$$$%(((###&&&!$$$%(((###'''###&&&!$$$%((( 	8 	8A 8 8  As1vvqy111  AtCFFAI77778  	@ 	@A  @ @ac4As1vv#6#6777ac4As1vv#6#6777ac4As1vv#6#6777  3q663q66#a&&=999  3q664As1vv+>+>???  3q663q66#a&&=999  3q664As1vv+>+>???  3q663q66#a&&=999  3q664As1vv+>+>???  Q3q66#a&&=999  Q4As1vv+>+>???  Q3q66#a&&=999  Q4As1vv+>+>???  Q3q66#a&&=999  Q4As1vv+>+>????@" 	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a1fd###aqj%(((a1fd###a1fe$$$aqj%(((aqj$'''Fa1fd###aqj%(((a1fd###a1fe$$$aqj%(((aqj$'''h&&&i&&&&&r   c                 2   |                      t          t          dd           |                     t          d          d           |                     t          d          d           |                     t          d          d           |                     t          d          d           |                     t          d          d           |                     t          d	          d           |                     t                      d           d S )
N*   
   Tr&   r2   r   Fhello )r   r   r   r   r    s    r   test_convertzBoolTest.test_convert   s    )T2r222d2hh%%%d1ggt$$$d2hh%%%d1ggu%%%d7mmT***d2hh&&&dffe$$$$$r   c                     |                      t          d          5  t          d           d d d            d S # 1 swxY w Y   d S )Nzkeyword argumentr>   r:   )assertRaisesRegexr   r   r    s    r   test_keyword_argszBoolTest.test_keyword_args   s    ##I/ABB 	 	2JJJJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   :>>c                     |                      ddz  d           |                      ddz  d           |                      ddz  d           |                      ddz  d           d S )Nz%dF0T1z%x)r   r    s    r   test_formatzBoolTest.test_format   sp    s+++c***s+++c*****r   c                     |                      t          g d          d           |                      t          g d          d           d S )NappendTwobbleF)r   hasattrr    s    r   test_hasattrzBoolTest.test_hasattr   sD    gb(++T222gb(++U33333r   c                     |                      t          t                    d           |                      t          d          d           d S )NTr&   F)r   callablelenr    s    r   test_callablezBoolTest.test_callable   s<    hsmmT***hqkk5)))))r   c                    |                      t          dt                    d           |                      t          dt                    d           |                      t          dt                    d           |                      t          dt                    d           |                      t          dt                    d           |                      t          dt                    d           d S )NTFr&   r   )r   
isinstancer   r   r    s    r   test_isinstancezBoolTest.test_isinstance   s    jt,,d333j--t444js++T222j,,d333jD))5111jD))511111r   c                     |                      t          t          t                    d           |                      t          t          t                    d           d S )NTF)r   
issubclassr   r   r    s    r   test_issubclasszBoolTest.test_issubclass   sD    js++T222jd++U33333r   c                 j    |                      di v d           |                      dddiv d           d S )Nr&   FT)r   r    s    r   test_containszBoolTest.test_contains   s<    a2gu%%%aAa5j$'''''r   c                    |                      d                    d          d           |                      d                    d          d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d	                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d                                d           |                      d
                                d           |                      d                                d           |                      d                                d           |                      d	                                d           |                      d	                                d           |                      d	                                d           |                      d	
                                d           |                      d
                                d           |                      d                    d          d           |                      d                    d          d           d S )NxyzzTr:   Fxyz0123z@#$%0123XYZ     u   　X)r   endswithisalnumisalphaisdigitislower	isdecimal	isnumericisspaceistitleisupper
startswithr    s    r   test_stringzBoolTest.test_string   s   ennS))4000ennS))5111i''))4000fnn&&...emmoot,,,fnn&&...fnn&&---emmoou---emmoot,,,emmoou---f&&(($///eoo''///f&&(($///eoo''///ckkmmT***fnn&&---h&&(($///emmoou---ckkmmT***ckkmmU+++emmoot,,,emmoou---e&&s++T222e&&s++U33333r   c                    |                      dd           |                     dt                     |                     dd           |                      dd           |                     dt                     |                     dd           |                      dd           |                     dt                     |                     dd           d S )Nr&   Tr   F)r   assertNotIsInstancer   r   r    s    r   test_booleanzBoolTest.test_boolean   s    1%%%  4000k4(((1%%%  4000k4(((1%%%  4000k5)))))r   c                 ^   	 t          t          j        dd          5 }|                     |j        d           d d d            n# 1 swxY w Y   |                     |j        d           t          j        t          j                   d S # t          j        t          j                   w xY w)Nwzutf-8)encodingFT)openr   TESTFNr   closedosremove)r   fs     r   test_fileclosedzBoolTest.test_fileclosed   s    	(i&g>>> /!ah.../ / / / / / / / / / / / / / /MM!(D)))Ii&'''''BIi&''''s-   B AB A

B A
B  B,c                     t           t          t          t          t          t
          t          t          t          t          t          fD ]%}|                     t          |          d           &d S )NT)r   r/   dictr,   r   listobjectsetr#   tupletyper   )r   ts     r   
test_typeszBoolTest.test_types   sR    uc4sE4) 	) 	)AMM$q''4((((	) 	)r   c                    dd l }|                     |                    d          d           |                     |                    d          d           |                     |                    d          d           |                     |                    d          d           |                     |                    g d          d           |                     |                    dgd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           d S )Nr   Fr&   T)operatorr   truthnot_containsltis_is_not)r   r   s     r   test_operatorzBoolTest.test_operator   s   hnnQ''///hnnQ''...hmmA&&...hmmA&&---h''A..666h''Q//666hkk!Q''///hkk!Q''...hll4..555hll4//777hoodD115999hoodE22D99999r   c                     dd l }|                     |                    |                    d                    d           |                     |                    |                    d                    d           d S )Nr   TF)marshalr   loadsdumps)r   r   s     r   test_marshalzBoolTest.test_marshal  si    gmmGMM$$7$788$???gmmGMM%$8$8995AAAAAr   c           	      6   dd l }t          |j        dz             D ]|}|                     |                    |                    d|                    d           |                     |                    |                    d|                    d           }d S )Nr   r&   TF)picklerangeHIGHEST_PROTOCOLr   r   r   )r   r   protos      r   test_picklezBoolTest.test_pickle  s    62Q677 	K 	KEMM&,,v||D%'@'@AA4HHHMM&,,v||E5'A'ABBEJJJJ	K 	Kr   c                    dd l }|                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d           |                     |                    dd          d	           |                     |                    dd          d
           d S )Nr   T)protocols   I01
.Fs   I00
.r&   r4   s   .s   .)r   r   r   )r   r   s     r   test_picklevalueszBoolTest.test_picklevalues  s    dQ77CCCea88)DDDdQ77CCCea88)DDDdQ779IJJJea88:JKKKKKr   c                      fd} G d dt                     } | |                        G d dt                     } | |                        G d dt                    } | |                        G d d	t                    } | |                        G d
 d          }                     t          t           |                       d S )Nc                 F                         t          t          |           S Nr   r   r   )or   s    r   <lambda>z/BoolTest.test_convert_to_bool.<locals>.<lambda>'  s    $++ItQ?? r   c                       e Zd Zd ZdS )*BoolTest.test_convert_to_bool.<locals>.Fooc                     | S r   r   r    s    r   __bool__z3BoolTest.test_convert_to_bool.<locals>.Foo.__bool__)      r   Nr	   r
   r   r   r   r   r   Foor   (  #            r   r   c                       e Zd Zd ZdS )*BoolTest.test_convert_to_bool.<locals>.Barc                     dS )NYesr   r    s    r   r   z3BoolTest.test_convert_to_bool.<locals>.Bar.__bool__.  s    ur   Nr   r   r   r   Barr   -  s#            r   r   c                       e Zd Zd ZdS )*BoolTest.test_convert_to_bool.<locals>.Bazc                     | S r   r   r    s    r   r   z3BoolTest.test_convert_to_bool.<locals>.Baz.__bool__3  r   r   Nr   r   r   r   Bazr   2  r   r   r   c                       e Zd Zd ZdS )+BoolTest.test_convert_to_bool.<locals>.Spamc                     dS )Nr&   r   r    s    r   r   z4BoolTest.test_convert_to_bool.<locals>.Spam.__bool__9  s    qr   Nr   r   r   r   Spamr   8  s#            r   r   c                       e Zd Zd ZdS )+BoolTest.test_convert_to_bool.<locals>.Eggsc                     dS )Nr2   r   r    s    r   __len__z3BoolTest.test_convert_to_bool.<locals>.Eggs.__len__>      rr   Nr	   r
   r   r   r   r   r   Eggsr   =  s#            r   r   )r   r   r   
ValueErrorr   )r   checkr   r   r   r   r   s   `      r   test_convert_to_boolzBoolTest.test_convert_to_bool#  s^    @???	 	 	 	 	& 	 	 	 	ccee	 	 	 	 	& 	 	 	 	ccee	 	 	 	 	# 	 	 	 	ccee	 	 	 	 	3 	 	 	 	ddff	 	 	 	 	 	 	 	 	*dDDFF33333r   c                     |                      t                              dd          d           |                      t                              dd          d           d S )Ns           bigFs   abcdlittleT)r   r   
from_bytesr    s    r   test_from_byteszBoolTest.test_from_bytesB  sL    dooi77???doogx88$?????r   c           	      N   dD ] G fdd          }	 t           |                       *# t          $ rj}	 t           |                       nG# t          $ r:}|                     t	          |          t	          |                     Y d }~nd }~ww xY wY d }~d }~ww xY wd S )N)illegalr2   l        c                       e Zd Z fdZdS )!BoolTest.test_sane_len.<locals>.Ac                     S r   r   )r   badvals    r   r   z)BoolTest.test_sane_len.<locals>.A.__len__K  s    !Mr   Nr   )r   s   r   Ar   J  s.        " " " " " " "r   r   )r   	ExceptionrQ   r   r#   )r   r   e_boole_lenr   s       @r   test_sane_lenzBoolTest.test_sane_lenF  s     / 
	> 
	>F" " " " " " " " " ">QQSS				 > > >>HHHH! > > >$$S[[#e**========>>
	> 
	>s8   .
B"AB
B0BBBBB"c                      G d d          }|                      t          t           |                        G d d          }|                      t          t           |                       d S )Nc                       e Zd ZdZdS ) BoolTest.test_blocked.<locals>.ANr   r   r   r   r   r   V  s        HHHr   r   c                       e Zd Zd ZdZdS ) BoolTest.test_blocked.<locals>.Bc                     dS )Nr>   r   r    s    r   r   z(BoolTest.test_blocked.<locals>.B.__len__[  r   r   N)r	   r
   r   r   r   r   r   r   Br   Z  s"          HHHr   r   r   )r   r   r   s      r   test_blockedzBoolTest.test_blockedU  s    	 	 	 	 	 	 	 	)T1133///	 	 	 	 	 	 	 	 	)T1133/////r   c                 F   |                      dj        d           |                      dj        d           |                     t	          dj                  t
                     |                     t	          dj                  t
                     |                      dj        d           |                      dj        d           |                     t	          dj                  t
                     |                     t	          dj                  t
                     d S )NTr&   r   F)r   realimagr   r   r   r    s    r   test_real_and_imagzBoolTest.test_real_and_imag`  s    A&&&A&&&d49oos+++d49oos+++Q'''Q'''d5:&&,,,d5:&&,,,,,r   c                      G d d          }d } |            } ||           |                      |j        d           d S )Nc                       e Zd Zd Zd ZdS )2BoolTest.test_bool_called_at_least_once.<locals>.Xc                     d| _         d S )Nr   countr    s    r   __init__z;BoolTest.test_bool_called_at_least_once.<locals>.X.__init__l  s    


r   c                 &    | xj         dz  c_         dS )Nr&   Tr   r    s    r   r   z;BoolTest.test_bool_called_at_least_once.<locals>.X.__bool__n  s    

a

tr   N)r	   r
   r   r   r   r   r   r   rc   r   k  s2              r   rc   c                     | s	 d S r   r   rC   s    r   r{   z2BoolTest.test_bool_called_at_least_once.<locals>.fr  s      r   r&   )assertGreaterEqualr   )r   rc   r{   r:   s       r   test_bool_called_at_least_oncez'BoolTest.test_bool_called_at_least_oncej  sq    	 	 	 	 	 	 	 		 	 	 ACC	!+++++r   c                    |                      t                              t                    d           |                      t                              t          d          d           |                      t                              t          d          d           |                      t                              t          d          d           |                      t                              t          d          d           d S )NFr&   Tr   )r   r   r   r    s    r   test_bool_newzBoolTest.test_bool_newz  s    dll4((%000dll4++T222dll4++U333dll4//777dll4..55555r   N)!r	   r
   r   r   r!   r$   r(   r-   r0   r;   rA   rE   rI   rN   rR   rU   rX   rZ   ro   rr   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s       	; 	; 	;. . ., , ,* * *, , ,. . .k' k' k'Z% % %  + + +4 4 4* * *2 2 24 4 4( ( (4 4 44* * *( ( () ) ): : :B B B
K K KL L L4 4 4>@ @ @> > >	0 	0 	0- - -, , , 6 6 6 6 6r   r   __main__)unittesttest.supportr   ry   TestCaser   r	   mainr   r   r   <module>r      s     " " " " " " 				w6 w6 w6 w6 w6x  w6 w6 w6t zHMOOOOO r   