
    2hhE,                         S SK r S SKJr  \R                  " S5      r\R                  " S5      rS SKJrJr  Sr " S S\	5      r
 " S S	5      r " S
 S\ R                  5      r\S:X  a  \ R                  " 5         gg)    N)import_helper_testlimitedcapi	_testcapi)PY_SSIZE_T_MINPY_SSIZE_T_MAXc                       \ rS rSrSrg)BytesSubclass
    N)__name__
__module____qualname____firstlineno____static_attributes__r       B/opt/python-3.13.8/usr/lib/python3.13/test/test_capi/test_bytes.pyr	   r	   
   s    r   r	   c                        \ rS rSrS rS rSrg)	BytesLike   c                     Xl         g Nvalue)selfr   s     r   __init__BytesLike.__init__   s    
r   c                     U R                   $ r   r   r   s    r   	__bytes__BytesLike.__bytes__   s    zzr   r   N)r   r   r   r   r   r   r   r   r   r   r   r      s    r   r   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S jrS rS rS rSrg)CAPITest   c                    [         R                  nU R                  U" S5      5        U R                  U" S5      5        U R                  U" S5      5        U R                  U" [	        S5      5      5        U R                  U" [        S5      5      5        U R                  U" [        S5      5      5        U R                  U" S5      5        U R                  U" / 5      5        U R                  U" [        5       5      5        g N   abcr   abc   )r   bytes_check
assertTrueassertFalse	bytearrayr	   r   objectr   checks     r   
test_checkCAPITest.test_check   s     ,,f&c
#u&y012mF345y012q"r#vx)r   c                    [         R                  nU R                  U" S5      5        U R                  U" S5      5        U R                  U" S5      5        U R                  U" [	        S5      5      5        U R                  U" [        S5      5      5        U R                  U" [        S5      5      5        U R                  U" S5      5        U R                  U" / 5      5        U R                  U" [        5       5      5        g r%   )r   bytes_checkexactr*   r+   r,   r	   r   r-   r.   s     r   test_checkexactCAPITest.test_checkexact$   s     11f&c
#u&y012}V456y012q"r#vx)r   c                    [         R                  nU R                  U" S5      S5        U R                  U" SS5      S5        U R                  U" S5      S5        U R                  U" S5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" [        S5      S5        U R                  [	        U" [        S	5      5      S	5        U R                  [        [        4U[        [        5        U R                  [        USS
5        U R                  [        US[        5        U R                  [        U[        S
5        U R                  [        U[        [        5        g )Nr&         ab   abc def   a   r   r   r(   )r   bytes_fromstringandsizeassertEqualNULLlenassertRaisesMemoryErrorOverflowErrorr   SystemErrorr   )r   fromstringandsizes     r   test_fromstringandsizeCAPITest.test_fromstringandsize3   s@   ,DD*62F;*615u=*;7E*40$7*43T:*32C8*43S9.tQ78!<;6+T>	C 	+'8&"E+'8&.Q+'8$C+'8$Or   c                     [         R                  nU R                  U" S5      S5        U R                  U" S5      S5        g )Nr9   r&   r   )r   bytes_fromstringr>   )r   
fromstrings     r   test_fromstringCAPITest.test_fromstringG   s6    %66
K0&9C#.r   c                 L   [         R                  nU R                  U" S5      S5        U R                  U" S5      S5        U R                  U" [        S5      5      S5        U R                  U" [	        S5      5      S5        U R                  U" / SQ5      S5        U R                  [        US5        U R                  [        U[        S5      5        U R                  [        US5        U R                  [        U[        5       5        U R                  [        U[        5        g )Nr   r&   )a   b   c   r(   r'   )r   bytes_fromobjectr>   r,   r	   rA   	TypeErrorr   r-   rD   r?   )r   
fromobjects     r   test_fromobjectCAPITest.test_fromobjectP   s    %66
C#.F+V4If$56?M&$9:FCL16:)Z3)Z61BC)Z7)Z:+z48r   c                 r   [         R                  nU R                  U" S5      S5        U R                  U" S5      S5        U R                  U" [        S5      5      S5        U R	                  [
        U[        S5      5        U R	                  [
        US5        U R	                  [
        U[        5       5        g )Nr   r   r&   r(   r'   )r   
bytes_sizer>   r	   rA   rR   r,   r-   )r   sizes     r   	test_sizeCAPITest.test_size_   s    **cA&fq)mF34a8)T9V+<=)T51)T684r   c                 *   [         R                  nU R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S	5        U R                  [        US
S5        U R                  [        U[        5       S5        g)zTest PyBytes_AsString()r&         abc r9         abc def r   r;       r'   r   N)r   bytes_asstringr>   rA   rR   r-   )r   asstrings     r   test_asstringCAPITest.test_asstringl   s|    #22&!,h7+q1=A#q)51)Xua8)Xvx;r   c                    [         R                  n[         R                  nU R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S	5        U R                  U" SS5      S
5        U R	                  [
        USS5        U R	                  [        USS5        U R	                  [        USS5        U R	                  [        U[        5       S5        U R	                  [        U[        5       S5        g)zTest PyBytes_AsStringAndSize()r&   r\   )r]   r(   r9   r^   )r_      r   r;   )r`   r   r]   r'   r   N)r   bytes_asstringandsizebytes_asstringandsize_nullr>   rA   
ValueErrorrR   r-   )r   asstringandsizeasstringandsize_nulls      r   test_asstringandsizeCAPITest.test_asstringandsizex   s    *@@/JJ3]Ca8:LMa0*=-fa8(C*&:KK)_eQ?)%95!D)_fhB)%968QGr   c                    [         R                  nU R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" S	S5      S
5        U R                  U" S	S5      S
5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" [        S5      S5      S5        g )Nr   r   zb''r&   zb'abc'r;   s   a'b"c"dzb'a\'b"c"d's   a'b"cz	b'a\'b"c's   a'b'c"dzb'a\'b\'c"d's   a'b'c'dzb'a\'b\'c\'d'z
b"a'b'c'd")r   
bytes_reprr>   r	   )r   ro   s     r   	test_reprCAPITest.test_repr   s.   %00
C+Z8J2MBJ2MBNA68JKNA68JKL!46FGL!46FGNA68KLNA68KLNA68LMNA68IJM&$91=}Mr   Nc           	      L   Uc  [         R                  nU R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" [        S5      S5      S5        U R                  U" S[        S5      5      S5        U R                  U" [        S5      S5      S5        U R                  U" S[        S5      5      S5        U R                  U" [	        S	5      S
S S5      S5        U R                  U" S[	        S5      S
S 5      S5        U R                  U" SS5      S5        U R                  U" SSS5      S5        U R                  U" S[        S5      S5      S5        U R                  U" [        5       SS5      S5        U R                  [        [        5       5      S5        U R                  [        U[	        S5      SSS2   S5        U R                  [        US[	        S5      SSS2   5        U R                  [        USS5        U R                  [        USS5        U R                  [        USS5        U R                  [        U/ S5        U R                  [        US/ 5        U R                  [        U/ / 5        U R                  U" [        S5      [        5        U R                  U" S[        5      [        5        U R                  U" [        [        5       5      [        5        U R                  U" [        5       [        5      [        5        g)zTest PyBytes_Concat()Nr&   s   defs   abcdefs   a bs   c ds   a bc dr   s   xabcyr;   r\   s   xdefyTr   s   axbyczr7   s   dxeyfzdefr'   )r   bytes_concatr>   r,   
memoryviewbytesr@   rA   rR   r?   r-   )r   concats     r   test_concatCAPITest.test_concat   s   >%22F/;1;?	& 16:IF	&(9:IF	& 137@Yv%67@
8 4Qq 96BIN
8(<Qq(ABINS)3/5yA	&(94@)L6?UWq))VZ	-B3Q3-GP)VVZ	5J3Q35OP)VVU;)VUF;)VUE:)VR8)VVR8)VR4f-t4-t4fh/6$/6r   c                 B    U R                  [        R                  5        g)zTest PyBytes_ConcatAndDel()N)rx   r   bytes_concatanddelr   s    r   test_concatanddelCAPITest.test_concatanddel   s    )<<=r   c                 L   [         R                  nU R                  U" S5      S5        U R                  U" S5      S5        U R                  U" S5      S5        U R                  U" S5      S5        U R                  U" S5      S5        U R                  U" S5      S	5        U R                  U" S5      S5        U R                  [        5         U R                  U" S
5      S
5        SSS5        U R                  [        5         U R                  U" S5      S5        SSS5        U R                  [        5         U R                  U" S5      S5        SSS5        S H0  nU R                  [        X5        U R                  [        XS5        M2     U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  U" SS5      S5        U R                  [        USS5        U R                  U" [        5      S5        U R                  [        US[        [        5        U R                  [        U[        [        [        5        g! , (       d  f       GN= f! , (       d  f       GNl= f! , (       d  f       GNH= f)zTest PyBytes_DecodeEscape()r   r&   s   \t\n\r\x0b\x0c\x00\\\'\"s	   	
 \'"s   	
 s   \xa1\xa2s   s	   \2\24\241s   s   \u4f60Ns   \zs   \541r:   )   \s   \xs   \xas   \xzs   \xazstricts   x\xareplaces   x?s   x\xays   x?ys   x\xa\xys   x??yignores   xyr   spam)
r   bytes_decodeescaper>   assertWarnsDeprecationWarningrA   ri   r?   rC   r   )r   decodeescapebs      r   test_decodeescapeCAPITest.test_decodeescape   s   '::c*C0f-v6&BC0	2&;<oNl3[Am4oFk2K@01\*5zB 201\&16: 201\(3T: 2 ;Aj,:j,8D ; 	h	:EBi;VDk9=wGk8<eD*lE6Bd+S1-vt^T-tT>R# 211111s$   I0J:J0
I?
J
J#c           
         [         R                  nS GHt  nU R                  U" SSU5      S5        U R                  U" SSU5      S5        U R                  U" SSU5      S5        U R                  U" SS	U5      S5        U" SS
U5      nU R                  [        U5      S
5        U R                  USS	 S5        U R                  U" SSU5      S5        U R                  U" SSU5      S5        U" SSU5      nU R                  [        U5      S5        U R                  USS S5        U R                  U" SSU5      S5        U R                  [        U" SSU5      5      S5        U R                  [        U" SSU5      5      S5        GMw     U R	                  [
        USSS5        U R	                  [
        U[        S5      S	S5        g)zTest _PyBytes_Resize())TFr&   r   r   r;   r:   r7   r8   r(   r\   Nr<   F)r   bytes_resizer>   r@   rA   rD   r,   )r   resizenewr   s       r   test_resizeCAPITest.test_resize   s   ''CVFAs3S9VFAs3T:VFAs3U;VFAs3V<vq#&ASVQ'QrUF+VD!S137VD!S148tQ$ASVQ'QrUD)VCC0#6SQ!45q9SQ!45q9# & 	+vvr5A+vy/@!UKr   r   r   )r   r   r   r   r0   r4   rF   rK   rT   rY   rc   rl   rp   rx   r|   r   r   r   r   r   r   r"   r"      sJ    **P(/9	5<H$N*!7F>SDLr   r"   __main__)unittesttest.supportr   import_moduler   r   r   r   r?   rv   r	   r   TestCaser"   r   mainr   r   r   <module>r      sz     & ../AB ''4	 4	E 	 lLx   lLd zMMO r   