
    daf
                         d dl Z d dlmZ d dlmZ  G d dej
                  ej                  e j                        Ze	dk(  r e j                          yy)    N)string_tests)
UserStringc                   :    e Zd ZeZd ZdddZd Zd Zd Z	d Z
y)	UserStringTestc                     | j                  |      }| j                  |      } t        ||      |i |}| j                  ||       y N)fixtypegetattrassertEqual)selfresultobject
methodnameargskwargs
realresults          //root/Python-3.12.4/Lib/test/test_userstring.py
checkequalzUserStringTest.checkequal   sJ    f%f%0WVZ0$A&A
	
    N)expected_msgc                *   | j                  |      }| j                  |      5 } t        ||      |  d d d        | j                  t	        j
                        d       |&| j                  t	        |j
                        |       y y # 1 sw Y   WxY w)N )r	   assertRaisesr
   assertNotEqualstr	exceptionr   )r   excobjr   r   r   cms          r   checkraiseszUserStringTest.checkraises   s    ll3s# 	,r$GC$d+	,C-r2#S.= $	, 	,s   B		Bc                 D    | j                  |      } t        ||      |  y r   )r	   r
   )r   r   r   r   s       r   	checkcallzUserStringTest.checkcall'   s!    f%#
#T*r   c                      G d dt               } G d d|      } |d      } |d      }| j                  ||z  d       y )Nc                       e Zd Zy)'UserStringTest.test_rmod.<locals>.ustr2N)__name__
__module____qualname__ r   r   ustr2r%   -   s    r   r*   c                        e Zd Z fdZ xZS )'UserStringTest.test_rmod.<locals>.ustr3c                 "    t         |   |      S r   )super__rmod__)r   other	__class__s     r   r/   z0UserStringTest.test_rmod.<locals>.ustr3.__rmod__1   s    w'..r   )r&   r'   r(   r/   __classcell__)r1   s   @r   ustr3r,   0   s    / /r   r3   zvalue is %sTESTzvalue is TEST)r   r   )r   r*   r3   fmt2str3s        r   	test_rmodzUserStringTest.test_rmod,   sC    	J 		/E 	/ ]#V}o6r   c                 ~    | j                  ddd       | j                  ddd       | j                  t        dd       y Ns   hellohelloencodes   𣑖u   𣑖u   r   r    UnicodeErrorr   s    r   test_encode_default_argsz'UserStringTest.test_encode_default_args8   s5    '84+\8Dx:r   c                     | j                  dddd d        | j                  dddd d        | j                  t        ddd d        y r9   r<   r>   s    r   test_encode_explicit_none_argsz-UserStringTest.test_encode_explicit_none_args?   sA    '8T4@+\8T4Px4Fr   )r&   r'   r(   r   	type2testr   r    r"   r7   r?   rA   r)   r   r   r   r   	   s/     I

 EI >+

7;Gr   r   __main__)unittesttestr   collectionsr   
CommonTestMixinStrUnicodeUserStringTestTestCaser   r&   mainr)   r   r   <module>rK      sR      ";G..;G| zHMMO r   