Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 52.14.24.177
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : string_tests.cpython-310.pyc
o

`b!�@s�dZddlZddlZddlZddlZddlmZddlmZddl	Z	Gdd�d�Z
Gdd�de
�ZGd	d
�d
e
�ZGdd�d�Z
Gd
d�de
�ZGdd�d�ZGdd�d�ZdS)zF
Common tests shared by test_unicode, test_userstring and test_bytes.
�N)�support)�UserListc@s&eZdZd	dd�Zdd�Zdd�ZdS)
�Sequence�wxyzcCs
||_dS�N��seq)�selfr�r
�:/usr/local/python-3.10/lib/python3.10/test/string_tests.py�__init__�
zSequence.__init__cCs
t|j�Sr)�lenr�r	r
r
r�__len__r
zSequence.__len__cCs
|j|Srr)r	�ir
r
r�__getitem__
r
zSequence.__getitem__N)r)�__name__�
__module__�__qualname__rrrr
r
r
rr
s
rc@�eZdZdd�Zdd�ZdS)�BadSeq1cC�gd�|_dS)N)��hello�{rrr
r
rr�zBadSeq1.__init__cCsdj|j�S)Nz{0} {1} {2})�formatrrr
r
r�__str__�zBadSeq1.__str__N)rrrrrr
r
r
rr�rc@r)�BadSeq2cCr)N��a�b�crrr
r
rrrzBadSeq2.__init__cCsdS)N�r
rr
r
rrszBadSeq2.__len__N)rrrrrr
r
r
rr!r r!c@s|eZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Ze�ejd'kp]e�d(�d)kd*�d+d,��Zd-d.�Zd/d0�Zd1d2�Z d3d4�Z!d5d6�Z"d7d8�Z#d9d:�Z$d;d<�Z%d=d>�Z&d?d@�Z'dAdB�Z(dCdD�Z)dEdF�Z*dGdH�Z+dIdJ�Z,dKdL�Z-dMdN�Z.dOdP�Z/dQdR�Z0dSdT�Z1dUdV�Z2dWdX�Z3dS)Y�BaseTestNFcszt|t�r�j�|�St|t�r�fdd�|D�St|t�r)t�fdd�|D��St|t�r;t�fdd�|��D��S|S)Nc�g|]}��|��qSr
��fixtype��.0�xrr
r�
<listcomp>,�z$BaseTest.fixtype.<locals>.<listcomp>cr(r
r)r+rr
rr..r/cs$g|]\}}��|���|�f�qSr
r))r,�key�valuerr
rr.0s��)�
isinstance�str�	__class__�	type2test�list�tuple�dict�items)r	�objr
rrr*(s



�zBaseTest.fixtypecCs|�t|�d��|j�dS)N�123)�assertIs�typer*r5rr
r
r�test_fixtype7szBaseTest.test_fixtypecs���|�}��|�}��|�}�fdd�|��D�}t||�|i|��}��||�||urXzGdd�d�jj�}Wn
tyDYdSw||�}t||�|�}��||�dSdS)Ncsi|]
\}}|��|��qSr
r))r,�k�vrr
r�
<dictcomp>?sz'BaseTest.checkequal.<locals>.<dictcomp>c@�eZdZdS)z$BaseTest.checkequal.<locals>.subtypeN�rrrr
r
r
r�subtypeI�rD)r*r9�getattr�assertEqualr4r5�	TypeError�assertIsNot)r	�resultr:�
methodname�args�kwargsZ
realresultrDr
rr�
checkequal;s&


���zBaseTest.checkequalcGsb|�|�}|�|�}|�|��}t||�|�Wd�n1s!wY|�t|j�d�dS)N�)r*�assertRaisesrFZassertNotEqualr3�	exception)r	�excr:rKrL�cmr
r
r�checkraisesSs

�zBaseTest.checkraisescGs&|�|�}|�|�}t||�|�dSr)r*rF)r	r:rKrLr
r
r�	checkcall[s

zBaseTest.checkcallc
s:��dddd���dddd���dddd���dddd���dddd���dddd���dddd���ddddd���ddddd	���ddddd
���ddddd���dddddd���dddddd	���dddddd
���dddddd���ddddd���ddddd���ddddd	���ddddd
���d
dddd���dddd���dddddd���ddddtjd���dddd���dddddd���ddddtjd���tdd��jr���dddd�n��tddd�gd�}d}t|�}t�}t||�D]#}g}t|�D]}t	||�\}}|�
||��q!|�d�|���q�fdd�|D�}|D]R}t|�}	|D]H}|�
|�}
|�rot	|	t|�|��d���t|��\}}n	t|�dd}}|�s�|
|k�r���|dd||f���|
|d|
||f��qP�qHdS)N��aaa�countr#rr$���
������rO��xxr�*)rOr#r$rcr(r
r)�r,�tsrr
rr.�r/z'BaseTest.test_count.<locals>.<listcomp>z%s != 0 for %sz%s != %s for %s)rN�sys�maxsizerTrH�contains_bytesr�set�range�divmod�append�add�joinrX�replacer*rG)
r	�charset�digits�base�teststringsr�entry�j�m�n�r1�r2�remr
rr�
test_count`sp

����zBaseTest.test_countc	sp��dddd���ddddd���ddddd	���dddd
d���dddd
d���dddd
d	���dd
dd���dd
ddd	���dd
ddd	d���dd
ddd	d���dd
dddd���tdd��jrw��dddd�n��tddd���dd
dd
���dd
dd
dd���dd
dd
tjd���dd
dd���dd
dddd���dd
ddtjd���ddddtjdd�gd�}d}t|�}t�}t||�D]!}g}t|�D]}t	||�\}}|�
||�q�|�d
�|��qهfdd�|D�}|D]/}|D])}|�
|�}	|	dk}
||v}��|
|�|	dk�r2��||	|	t|��|��q
�qdS)Nr�abcdefghiabc�find�abc�	rZr\�defr^rOrVrY�
rrarrrrrrrrrar#��rr`r_�ab�xxx�rOr#r$r%�cr(r
r)rarr
rr.�r/z&BaseTest.test_find.<locals>.<listcomp>)rNrTrHrercrdrrfrgrhrirjrkrzrG�r	rmrnrorprrqrrrs�locrurvr
rr�	test_find�sX

���zBaseTest.test_findc	s��dddd���dddd���dddd���d	ddd
���ddddd���ddddd���d	dddd���dd
dd���dd
ddd���d	d
dddd���dd
dddd���dd
dddd���tdd��jr}��d	ddd�n��tddd�gd�}d}t|�}t�}t||�D]!}g}t|�D]}t||�\}}|�||�q�|�	d�
|��q��fdd�|D�}|D],}|D]'}|�|�}	|	d	k}
||v}��|
|�|	d	kr��||	|	t|��|�q�qň�d	dddt
jdd���dddd�dS)Nr|ry�rfindr{rrOr�abcdr\ZabczrVr^r~r#r�rYrr`r�r�cr(r
r)rarr
rr.�r/z'BaseTest.test_rfind.<locals>.<listcomp>r�r�rZu<......м...�<)rNrTrHrerrfrgrhrirjrkr�rGrcrdr�r
rr�
test_rfind�sN
��	zBaseTest.test_rfindcCs"|�dddd�|�dddd�|�dddd�|�ddddd	�|�tddd
�|�tdddd	�|�tddd
d�|�tddd
d�|�dddd�|�ddddd�|�tddddd�|�dddddd�|�dddddd�|�tdd�|jr�|�tddd�dS|�tddd�dS)Nrry�indexrOrVr}r{r|rZ�hibZabcdefghiab�	abcdefghi�ghir&r\rYr~r#rr^r�rr`�rNrT�
ValueErrorrHrerr
r
r�
test_indexs"zBaseTest.test_indexcCs<|�dddd�|�dddd�|�dddd�|�d	dddd	d
�|�tddd�|�tdddd
�|�tdddd	d
�|�tdddd	d�|�tdddd	d
�|�dddd�|�ddddd�|�tddddd�|�dddddd�|�dddddd�|�tdd�|jr�|�tddd�dS|�tddd�dS)Nrry�rindexrOrVr}r|r{rr\r�Z	defghiabcrZr�r�r&r~r#r^r�rYrr`r�rr
r
r�test_rindex's$zBaseTest.test_rindexc
	Cs�dd�}tj}tj}td�D]\}d�|d|d�d��|dd�}|d	t|�|d��}d�|d
|d�d��}d�|d
|d�d��}|||}	|j||	d��|�|||	�|	d
|�Wd	�n1sewYqd	S)z-Cover the special path for periodic patterns.cSs*tt|��D]}|�||�r|SqdS)Nr\)rgr�
startswith)�p�srr
r
r�reference_findCs
�z;BaseTest.test_find_periodic_pattern.<locals>.reference_find��rO�abcder[)r?�NZabcdef��)r��textrz)�random�	randrange�choicesrgrkrZsubTestrN)
r	r�Zrrr��_Zp0r��left�rightr�r
r
r�test_find_periodic_patternAs  ����z#BaseTest.test_find_periodic_patterncCs�d}d|dd|}d||}|�t|�t|�|d|�dd|d}|d	d
�d||d|}|�t|�|td�t|�|d|�d	S)
z)When the table of 8-bit shifts overflows.idr#r$ZbabbaarzZdddr{ZeeeNr\Zddeededdeede�de)rNr)r	�NZpattern1Ztext1Zpattern2Ztext2r
r
r�test_find_shift_table_overflowUs� �z'BaseTest.test_find_shift_table_overflowcCs0|�ddd�|�ddd�|�tddd�dS)Nr�HeLLo�lowerr`�rNrTrHrr
r
r�
test_lowerg�zBaseTest.test_lowercCs0|�ddd�|�ddd�|�tddd�dS)NZHELLOr��upperrr`r�rr
r
r�
test_upperlr�zBaseTest.test_uppercCs�|�ddd�|�dddd�|�dddd�|�ddd�|�dddd�|�d	ddd�|�d
d
dd�|jddddd�|jddddd�|�dd
dd�|�tdddd�tjdkrpt�d�dkrr|�tddtj�dSdSdS)Nzabc
ab      def
g       hizabc
ab	def
g	hi�
expandtabsr&zabc
ab  def
g   hir^zabc
ab      def
g       hizabc
ab	def
g	hizabc
ab  def
g   hizabc
ab
def
g
hi)�tabsizez  a
 bz 	a
	brZrr`��Pz	a
	b)rNrTrHrcrd�struct�calcsize�
OverflowErrorrr
r
r�test_expandtabsqsD�����������zBaseTest.test_expandtabscCs.|�gd�ddd�|�dgdddd�|�ddgdddd�|�gd	�dddd
�|�gd�dddd�|�gd�dddd�|�gd�dddtjd
�|�dgdddd�|�gd
�dddd
�|�dgddd�|�dgddd�|�ddgddd�|�ddgddd�|�gd�ddd�|�gd�dddd
�|�dgdddd�dd�|�dgddgddd�ddd�|�gd�ddd �|�dd!gddd d�|�gd"�ddd d
�|�gd�ddd d�|�gd�ddd d�|�gd�ddd tjd#�|�dgddd d�|�gd$�d%dd d
�|�ddgd&dd'�|�dd(gd)dd'�|�gd*�d+dd'�|�dd,gd-dd.�|�ddgd/dd/�|�d/gd/dd/d�|�d0d0gd1dd2�|�d3gd3dd4�|�dgddd/�|�d5gd5dd/�|�d6d7gd8dd9�|�gd:�d;dd9�|�dgdd<dd=�dd>�|�dgdd<dd=�dd>d?�|�dgd@dAgd<dd=�dd>d@�|jgd�ddddB�|jddgdddddC�|jddgdddddD�|jddgdddddE�|jddFgdGdddC�|�tdHddIdIdI�|�tdHdd�|�tdHddd�dS)JN�r#r$r%�d�a|b|c|d�split�|rr#zb|c|drZ)r#r$zc|drYrVr^)r#rOzb||c||d�
a||b||c||dr�rO�endcase �	endcase |z
 startcasez| startcase�rOZbothcaserO�
|bothcase|)r#rOzbcd�abcd�r��(a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|r\��	a|a|a|a|a�
a//b//c//d�//zb//c//d)r#r$zc//dr[)r#rOzb////c////d�a////b////c////d�endcase test�test�
 begincase�test begincase�rOz
 bothcase rO�test bothcase test�bc�abbbc�bbrWr��abbaab�ba�aaaa�aab�aa�AZbobbZ
Abbobbbobb�bbobb)r��BrOZAbbobbBbbobb�daBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAH����BLAH���aBLAHa��sep��maxsplit�r�r��r�r��b c d�a b c drr`�rNrcrdrTrHr�rr
r
r�
test_split�s����� �
�
�
�
�zBaseTest.test_splitcCs|�gd�ddd�|�ddgdddd�|�gd�dddd	�|�gd�dddd
�|�gd�dddd�|�gd�dddtjd�|�dgdddd
�|�gd�dddd	�|�dgddd�|�dgddd�|�ddgddd�|�ddgddd�|�gd�ddd�|�gd�dddd	�|�dgdddd�dd�|�dgdgd ddd�ddd �|�gd�d!dd"�|�d#dgd!dd"d�|�gd$�d!dd"d	�|�gd�d!dd"d
�|�gd�d!dd"d�|�gd�d!dd"tjd%�|�d!gd!dd"d
�|�gd&�d'dd"d	�|�ddgd(dd)�|�ddgd*dd)�|�gd+�d,dd)�|�d-d.gd/dd0�|�ddgd1dd1�|�d1gd1dd1d
�|�d-d-gd2dd3�|�d4gd4dd5�|�dgddd1�|�d6gd6dd1�|�d7d8gd9dd:�|�gd;�d<dd:�|�dgdd=dd>�dd?�|�dgdd=dd>�dd?d@�|�dAgdgdBd=dd>�dd?dB�|jgd�ddddC�|jddgdddddD�|jddgdddddE�|jddgdddddF�|jdGdgdHdddD�|�tdIddJdJdJ�|�tdIdd�|�tdIddd
�dS)KNr�r��rsplitr�za|b|cr�rZ)za|br%r�rYrVr^�dr)za||b||crOr�r�r�rOr�z| begincaser�r�r�r�)zabr%r�r�r�r#r�r�r\r�r�r�r�za//b//c)za//br%r�r�)za////b////crOr�r�r�r�r�r�r�r�r%r�r�rWr�r�r�r�r�Zbbobr�Z
bbobbbobbAr�)rOr�r�ZbbobbBbbobbAr�r�r�r�r�r�r�r�r�r��a b cr�rr`r�rr
r
r�test_rsplit�s����� �
�
�
�
�zBaseTest.test_rsplitcCs�|j}|ddddd�|ddddd�|ddddd�|ddddd�|dddddd�|dddddd�|dddddtj�|ddddd�|ddddd�|ddddd�|d	dddd
�|ddddd
�|ddddd
d�|ddddd
tj�|ddddd
d�|ddddd
d�|ddddd
d�|ddddd
d�|ddddd
d�|ddddd�|ddddd�|dddddd�|dddddtj�|dddddd�|dddddd�|dddddd�|dddddd�|dddddd�|ddddd�|ddddd�|dddddd�|dddddtj�|dddddd�|dddddd�|dddddd�|dddddd�|dddddd�|dddddd�|ddddd�|ddddd�|ddddd�|d d ddd�|d!d"dddd#�|dd$dd$d�|d%d&dd$d�|dd'dd$d�|dd(dd$d�|d)d*dd$d�|d+d+dd$d�|d,d,dd$d�|d-d.dd$d�|d/d0dd$dtj�|d/d0dd$dd�|d/d0dd$dd�|d/d0dd$dd�|d1d0dd$dd�|d0d0dd$dd�|d/d0dd$d�|d2d2dd$d�|d3d3dd$d�|d4d5dd4d�|d6d7dd4d�|d8d9dd4d�|d8d8dd4d�|d:d:dd;d;�|d<d:dd;d=�|d<d:dd;d=tj�|d<d:dd;d=d�|d<d:dd;d=d�|d<d:dd;d=d�|d>d:dd;d=d�|d:d:dd;d=d�|d:d:dd?d@�|dAd:ddBdC�|dDdEddBdC�|dFd:ddGdH�|dIdJddGdH�|d:d:ddKdH�|dLdMddNdO�|dLdMddNdOtj�|dLdMddNdOd�|dLdMddNdOd�|dLdMddNdOd�|dPdMddNdOd�|dQdMddNdOd�|dMdMddNdOd�|dRdSdd4dT�|dUdVdd4dT�|dSdSddWdW�|dXdYddZd[�|dXdYddZd[d�|dXdYddZd[tj�|dXdYddZd[d�|d\dYddZd[d�|dYdYddZd[d�|d]d^ddKd_�|d`daddbdc�|dYdYdd@d[�|dddeddfdg�|dddeddfdgtj�|dddeddfdgd�|dddeddfdgd�|dddeddfdgd�|dhdeddfdgd�|dideddfdgd�|dededdfdgd�|dSdjddSd4�|dkdlddSd4�|dmdmdd4dn�|�dodpddHdqd�|�drdpddHd�|�dsdpddHdqd�|�dtdpddHdqd�|�dtdpddHdqd�|�dpdpddHdqd�|�dtdpddHdq�|�dpdpddudq�|�dpdpddudqd�|�dvd2dddw�|�dxd2dddwd�|�d2d2dddwd�|�ddddd�|�d2d2ddydzd�|�d2d2dd{dz�|�dd|dd|d�|�dd}dd|d�|�dud~dd|d�|�tdd�|�tddd��|�tddd�d��|�tddd�d��dS)�NrOrlr�r�z*A*�*z*1A*1z*1z*-#A*-#z*-#z*-A*-A*-�AAz*-r\r^rVz*-A*-ArYz*-AArZrZAAAZ
AAAAAAAAAAZBCDZABACADAr�ZBCDAZBCADAZBACADAZABCADZABCADAAz
*************z^A^a�^AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA^i��theZaterZtheaterZthetheZthethethether�Ztheatheatheathea�thatZthaetzhere and rezhere and therezhere and re and rezhere and there and therezhere and re and therer{ZabcdefgZbobZbbobobZbobXbobZ
bbobobXbbobobZaaaaaaaZ
aaaaaaabobzWho goes there?�ozWhO gOes there?�OzWhO goes there?r#�qzwho goes there?�W�wzwwho goes there?wwzWWho goes there?WWzWho goes there!�?�!zWho goes there!!zWho goes there??�.zTh** ** a t**suezThis is a tissue�isz**zTh** ** a tissuezTh** is a tissueZcobobZbobobZcobZ
cobobXcobocobZ
bobobXbobobobZbotZReyKKjaviKKZ	Reykjavikr?ZKKZ
ReyKKjavikzA----B----C----zA.B.C.z----u...м......&lt;�...м......<r�z&lt;zham, ham, eggs and hamzspam, spam, eggs and spam�spamZhamzham, ham, eggs and spamzham, spam, eggs and spamZbobobobZbobobXbobobZbobobobXbobobobZBOBOBOBZbobbyzone@two!three!zone!two!three!�@Zonetwothreezone@two@three!zone@two@three@r-z-a-b-c-�-z-a-b-cr�z--Zxyr;Z123123Z123x123rr`�h)rNrcrdrTrH)r	ZEQr
r
r�test_replaces@
�������
�������zBaseTest.test_replacer�r�r^z only applies to 32-bit platformscCsFdd}|�t|dd|�|�t|dd|�|�t|dd||�dS)Nr�irlrOr�)rTr�)r	ZA2_16r
r
r�test_replace_overflow�szBaseTest.test_replace_overflowcC��|�dddd�|�dddd�|�dddd�|�dddd�|�dddd	�|�d
d
dd
�|�d
d
dd�|�dddd
�|�d
ddd�|�tdd�|�tddd
�|�tddd
d�|�tdddd
�|�tddd�dS)N�amr��removeprefix�sp�spamspam�spamspamspam�pythonZspiderz
spam and eggsrOr�rr`r�)�he�lr�rr
r
r�test_removeprefix��zBaseTest.test_removeprefixcCr)Nrr��removesuffixrrrrZblamz
eggs and spamrOr�rr`r�)�lor
r�rr
r
r�test_removesuffix�rzBaseTest.test_removesuffixcCsZ|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�tddd	�dS)
N� hello �
capitalize�Hello �hello ZAaaar�ZAaAarr`r�rr
r
r�test_capitalize��zBaseTest.test_capitalizecCs&|�gd�dd�|�gd�dd�|�ddgdddd	�|�gd
�dddd�|�gd�dddd�|�gd�dddd
�|�gd�dddtjd	�|�dgdddd�|�dgdddd�|�gd�dddd�|�gdd�|�dgdd�|�ddgdd�|�ddgdddd	�|�dgdddd�|�ddgdddd	�|�gd�dddd�|�gd�dddd�|�ddgdd�d}|�dgd|d�|�dg|d
d�g|ddd	�|�dgdd g|ddd�d!D] }|�d"d#g|d�|�d"d#g|dd�|�d"d#g|ddd�q�dS)$N)�thisr�r�r��functionzthis is the split functionr�r��a b c d r#r�r�rZ)r#r$zc drYrVr^rz	  a b c d)r#r$zc  d�
a  b  c  d�	         �  a    r$�  a    b   zb   z
a    b   c   �  a    b   c   zb   c   )r#r$zc   r"�
	a 	
 b  �< a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a r�r�za �zarf	barfzarf
barfzarf
barfzarfbarfzarfbarf�arf�barf�rNrcrd�r	rWr$r
r
r�test_additional_splits@
��"�zBaseTest.test_additional_splitcCs*|�gd�dd�|�gd�dd�|�ddgdddd	�|�gd
�dddd�|�gd�dddd�|�gd�dddd
�|�gd�dddtjd�|�dgdddd�|�dgdddd�|�gd�dddd�|�gdd�|�dgdd�|�ddgdd�|�ddgdddd	�|�dgdddd�|�ddgdddd	�|�gd�dddd�|�gd�dddd�|�ddgdddd �d!}|�dgd|d�|�|dd"�gdg|ddd	�|�d#gdgd$|ddd$�d%D] }|�d&d'g|d�|�d&d'g|dd�|�d&d'g|ddd�q�dS)(N)rr�r�r�rzthis is the rsplit functionr�r�rr�r�r�rZ)za br%r�rYrVr^r�rz	a b c d  )za  br%r�rrr#rr$r�  az  a    b   crz  a    br%)r&r$r%r"r�Xrr�z a  ar�r r!r"r#r$r
r
r�test_additional_rsplit%sP
������"�zBaseTest.test_additional_rsplitcCs�|�ddd�|�ddd�|�ddd�|�ddd�d}|�d	|d�|�d
|d�|�d|d�|�dddd�|�dddd�|�dddd�|�dddd�dS)Nrz   hello   �stripzhello   �lstripz   hello�rstripz 	

abc 	

r{z	abc 	

z	 	

abc�rN)r	r$r
r
r�test_strip_whitespaceMszBaseTest.test_strip_whitespacecCs�|�dddd�|�dddd�|�dddd�|�dddd�|�d	d
dd
�|�dd
dd�|�tddd
d
�|�tddd
d
�|�tddd
d
�dS)NrZxyzzyhelloxyzzyr)ZxyzZ
helloxyzzyr*Z
xyzzyhellor+rOZmississippiZ
mississipprr`r�rr
r
r�
test_strip^szBaseTest.test_stripcC�d|�dddd�|�dddd�|�dddd�|�dddd�|�d	dddd
�|�tdd�dS)Nz
abc       r{�ljustr[zabc   r�rVrYz
abc*******r�r�rr
r
r�
test_ljustm�zBaseTest.test_ljustcCr/)Nz
       abcr{�rjustr[z   abcr�rVrYz
*******abcr�r�rr
r
r�
test_rjustur2zBaseTest.test_rjustcCr/)Nz
   abc    r{�centerr[z abc  r�rVrYz
***abc****r�r�rr
r
r�test_center}r2zBaseTest.test_centercCs"|�ddd�|�tddd�dS)NzhEllO CoMPuTErSzHeLLo cOmpUteRs�swapcaserr`r�rr
r
r�
test_swapcase�szBaseTest.test_swapcasecCs�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd	�|�d
d
dd�|�d
d
dd�|�dd
dd	�|�dd
dd�|�dddd�|�dddd�|�tdd�dS)Nr;�zfillrYrVZ0123r^z+123z+0123r�z-123z-0123Z000rOZ34rZZ0034r�rr
r
r�
test_zfill�szBaseTest.test_zfillcCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)NFrO�islowerTr#r��
r{ZaBc�abc
r`r�rr
r
r�test_islower��zBaseTest.test_islowercCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)
NFrO�isupperr#Tr�r<�ABCZAbCzABC
r{r`r�rr
r
r�test_isupper�r?zBaseTest.test_isuppercCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�ddd�|�dd
d�|�ddd�|�tddd�dS)NFrO�istitler#Tr�r<zA Titlecased LinezA
Titlecased LinezA Titlecased, LinezNot a capitalized StringzNot	a Titlecase StringzNot--a Titlecase StringZNOTr{r`r�rr
r
r�test_istitle�szBaseTest.test_istitlecCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�tddd
�dS)NFrO�isspacer#T� �	�
r<z 	
z 	
ar{r`r�rr
r
r�test_isspace��zBaseTest.test_isspacecCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)NFrO�isalphaTr#r�r<r{ZaBc123r=r`r�rr
r
r�test_isalpha�r?zBaseTest.test_isalphacCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�tddd
�dS)NFrO�isalnumTr#r�r<Z	123abc456Za1b3czaBc000 r=r{r`r�rr
r
r�test_isalnum�rJzBaseTest.test_isalnumcCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�td
�D]2}|�dd|dd�|�dd|dd�|�dd|ddd�|�dd|ddd�q.dS)
NTrO�isasciir��zF�€�ér&rFz        )rNrg)r	r�r
r
r�test_isascii�s�zBaseTest.test_isasciicCsZ|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�td	dd
�dS)NFrO�isdigitr#T�0�
0123456789Z0123456789ar{r`r�rr
r
r�test_isdigit�rzBaseTest.test_isdigitcCsh|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�d
dd�|�tddd
�dS)Nz Hello r�titlerrzFormat This As Title StringzfOrMaT thIs aS titLe StringzFormat,This-As*Title;StringzfOrMaT,thIs-aS*titLe;StringZGetintZgetIntrr`r�rr
r
r�
test_title�szBaseTest.test_titlecCs�|�gd�dd�|�gd�dd�|�gd�dd�|�gd�dd�|�gd�d	d�|�gd
�dd�|�gd
�ddd�|�gd
�ddd�|jgd
�dddd�|jgd
�dddd�|�tdddd�dS)N)r{r}rOr�zabc
def

ghi�
splitlinesz
abc
def

ghi)r{r}r�zabc
def
ghiz
abc
def
ghi
)r{r}r�rOzabc
def
ghi

)rOr{r}r�rOz
abc
def
ghi

F)r<r=zdef
zghi
rHT)�keependsr{r`r�rr
r
r�test_splitlines�s&
�
��
�zBaseTest.test_splitlines)4rrrr5rer*r>rNrTrUrxr�r�r�r�r�r�r�r�r�r�r�r�unittestZskipIfrcrdr�r�rrrrr%r(r-r.r1r4r6r8r:r>rBrDrIrLrNrSrWrYr\r
r
r
rr's`@95FF2�
	$(


		r'c@r)�
CommonTestcCsF|�d�}|�d�}|D]
}||7}t|�q|�t|�t|��dS)NZDNSSECrO)r5�hashrG)r	r#r$r%r
r
r�	test_hashs


zCommonTest.test_hashcCsX|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�d
d
d�dS)NuῼῳῳῳuῳῳῼῼruⓅⓨⓣⓗⓞⓝuⓅⓎⓉⒽⓄⓃuⓟⓨⓣⓗⓞⓝu	Ⅰⅱⅲu	ⅠⅡⅢu	ⅰⅱⅲu
ƛᴀᶆȡᾷr,rr
r
r�test_capitalize_nonasciis$������z#CommonTest.test_capitalize_nonasciiN)rrrr`rar
r
r
rr^s	r^c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zej
dd��Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!S)"�MixinStrUnicodeUserStringTestcCs�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd�|�ddddd	�|�dddd
d�|�dddd
d�|�ddddd�|�dddd
d�|�ddddd�|�dddddd�|�dddddd�|�dddddd	�|�dddddd�|�ddddd	d�|�dddddd�|�dddddd�|�dddddd�|�dddddd�|�ddddd�|�ddddd�|�dddd
d�|�dddd
d�|�dddddd�|�dddd
d�|�tdd�|�tddd�|�dddd�|�dddd�|�dddd�|�dddd �|�dddd!d�|�dddd"d�|�dddd#dd�|�dddd$dd	�|�dddd$dd%�|�tddd&�dS)'NTrr�r	F�hello worldrO�ellorZr�r^r�rr��
helloworld�loworVrrr\i���r]���r�������i����r`�r	Zha�rZllo�Zhelloxrr
��hellowo�rldrf�rnrdro)rr	�r	ZhelrY�r`r�rr
r
r�test_startswith4sT��z-MixinStrUnicodeUserStringTest.test_startswithcCs|�dddd�|�dddd�|�dddd�|�dddd�|�dd	dd
�|�dd	dd
dd�|�dd	dd
dd�|�dd	dddd�|�dd	dddd�|�dd	dddd�|�dd	dddd�|�dd	dddd�|�dddddd�|�dddddd�|�dddddd�|�dddddd�|�dddddd�|�ddddd�|�ddddd�|�dddddd�|�dddddd�|�dd	dd
d�|�dd	dd
dd�|�dd	dd
dd�|�dd	dd
dd�|�dd	dddd�|�dd	dddd�|�dd	dddd�|�dd	dddd �|�dd	dddd�|�tdd�|�tddd!�|�dddd"�|�dddd#�|�dddd$�|�dddd%�|�dd	dd&d�|�dd	dd'dd�|�dddd(dd�|�dddd)dd�|�dddd*dd�|�tddd+�dS),NTr�endswithrFr	rOrcreZworlrVr|ZworldrrfrZrrYr^r&r�rrhrir]i����rgr\i����i����i����r�r`rjrkrlr
rmrp)�hellZellrq)r	rurrr�rr
r
r�
test_endswithds\��z+MixinStrUnicodeUserStringTest.test_endswithcCs�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd	�|�dd
dd
�|�dddd
�|�dddd
�dS)NTrO�__contains__r{Fr�zabczabcr#ZasdfZasdr,rr
r
r�test___contains__�sz/MixinStrUnicodeUserStringTest.test___contains__cCs�|�dddd�|�dddd�|�dddd�|�dddtdd��|�dddtdd��|�dddtdd	��|�d
ddtdd��|�tddd�dS)Nr#r{rrr%r\rVr�rZrOr}�rN�slicerTrHrr
r
r�test_subscript�sz,MixinStrUnicodeUserStringTest.test_subscriptcCs�|�dddtdd��|�dddtdd��|�dddtdd��|�dddtd	d��|�d
ddtd	d��|�dddtdd��|�dddtdd��|�dddtdd��|�dddtdd	��|�tddd
�dS)Nr{rrr�rVr�rYr�rZr$rOr�r}ryrr
r
r�
test_slice�sz(MixinStrUnicodeUserStringTest.test_slicecCs~tjtj}dddddtjdddf	}|D](}|D]#}|dd�D]}t|�|||�}|�d�|�|d	t|||��q qqdS)
NrrZrV�)r\rhi���rOr)	�string�
ascii_lettersrnrcrdr6rNrkrz)r	r��indices�start�stop�step�Lr
r
r�test_extended_getslice�s
����z4MixinStrUnicodeUserStringTest.test_extended_getslicecCsb|�dddd�|�dddd�|�dddd�|�dddd�|�tdd�|�tddd�dS)	NrOr{�__mul__r\rrZZ	abcabcabcrVr�rr
r
r�test_mul�sz&MixinStrUnicodeUserStringTest.test_mulc
Cs�|�dddgd��|�dddd�|�dddd�|�d	ddd
�|�dddt��|�dd
dd�|�dd
dtdg��|�dddgd��|�tdjgd��dD]0}|�d
|d|dd�ddd
|g|�|�d
|d|dd�ddd
|f|�qT|�dddt��|�tdd�|�tddd�|�tddd�|�tddddt�g�zdd�}|�	d��|��Wn%ty�}zdt
|�vr�|�d�WYd}~dSWYd}~dSd}~ww|�d�dS) Nr�rFrkr�r�rOZbd)rOr$rOr�Zac)r#rOr%rOzw x y zr{r#)r{�zza.b.cr�r")r#r$rV)r���}r�r\r�rrZrYcss�ddVdS)Nr^rOr
r
r
r
r�f�s�z2MixinStrUnicodeUserStringTest.test_join.<locals>.f�+zjoin() ate exception messagezexception not raised)rNrrrPrHrkr!rT�bytesr*r3Zfail)r	rr��er
r
r�	test_join�s>�����z'MixinStrUnicodeUserStringTest.test_joincCsf|�dddd�|�dddd�|�dd	dd�|�dd	dd�|�d
d	dd�|�dd	dd
�|�dddd�|�dd	dd�dD]}|�ttfd	d|�qBtjd}t|�}|�dddd�|�dddd�|�|dd|�|�ddt|��|�dddd�|�dddd�|�t	dd�|�t	ddd�|�t	ddd�|�t	d	dd�|�td di�|�t	d!dd"�|�t	ddd�|�t	ddd#�|�d$d%dd&d$i�|�d'd(dd)�|�t	d*dd+�|�t	d,dd-�|�td.dd�|�td/d0dd1�|�td2d0dd1�|�td*dtjd3d4f�|�td5dtjd3d6f�Gd7d8�d8t
�}|�t	dd|��dS)9Nz+hello+z+%s+�__mod__rz+10+z+%d+r[r#z%c�"�"�$�$Z10z%drP�)i����i z 42z%3ldr`Z42�E@z0042.00z%07.2fz%07.2Fr{z%(foo)sz%s%srrrz%(fooz%(foo)s %(bar)s)�foor`yE@�barz	%((foo))sz(foo)Zhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxz%sxZgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa�%*s)r�r�z%10.*f)r�r�z%10z%%%dflg������	@z%%.%dfrZrO�%.*f�$I�$I�?c@rB)z8MixinStrUnicodeUserStringTest.test_formatting.<locals>.XNrCr
r
r
r�X(rr�)rNrTr�r�rcrdr3rU�floatrH�object)r	ZordinalZ	longvalueZ
slongvaluer�r
r
r�test_formatting�sR

�
�z-MixinStrUnicodeUserStringTest.test_formattingcCs�ddlm}m}m}d|��d>d}|�tdd|ddf�|�tdd|ddf�|�tdd|ddf�|�tdd|ddf�dS)	Nr)�PY_SSIZE_T_MAX�INT_MAX�UINT_MAXrZr�r�rOr�r�)Z	_testcapir�r�r��
bit_lengthrTr�)r	r�r�r�ZSIZE_MAXr
r
r�test_formatting_c_limits+s

�

�

�

�z6MixinStrUnicodeUserStringTest.test_formatting_c_limitscCsJtd�D]}d|}d}td�D]}|ddd}|�|d|�qqdS)	Nr�z%%.%ifg{�G�z�?�<g�.DT�!	@g@g$@r�)rgrU)r	Zprecrr1r-r
r
r�test_floatformatting9s��z2MixinStrUnicodeUserStringTest.test_floatformattingcCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddddd�|�ddd�|�ddd	�|�ddd�|�ddd
�|�ddd�|�ddd�|�ddd�dS)Nr#r�r�Tr@r�r;rlrr7rXr,rr
r
r�test_inplace_rewritesBsz3MixinStrUnicodeUserStringTest.test_inplace_rewritescC�x|�dddd�d}|�d|dd�|�d|dd	�|�d
|dd�|�d|dd
�|�t|dd�|�t|dd�dS)N)zthis is the par�tiztion methodzthis is the partition method�	partitionr��http://www.python.org��http�://�www.python.orgr�)r�rOrOr��rO�http://r�r��zhttp://www.python.�orgrOr�rO�rNrTr�rH�r	�Sr
r
r�test_partitionU��z,MixinStrUnicodeUserStringTest.test_partitioncCr�)N)zthis is the rpartir�z	on methodzthis is the rpartition method�
rpartitionr�r�r�r�)rOrOr�r�r�r�r�r�rOr�r�r
r
r�test_rpartitiondr�z-MixinStrUnicodeUserStringTest.test_rpartitioncCs*d}|�d|ddd�|�d|dddd�|�d|dddd�|�d|dddd�|�d|d	dd�|�d|d	ddd�|�d|d	ddd�|�d|d	ddd�|�d|d
dd�|�d|d
ddd�|�d|d
ddd�|�d|d
ddd�|�d|ddd�|�d|dddd�|�d|dddd�|�d|dddd�|�d|ddd�|�d
|dddd�|�d
|dddd�|�d|dddd�|�d|ddd�|�d|dddd�|�d|dddd�|�d|dddd�|�d|ddd�|�d|dddd�|�d|dddd�|�d|dddd�dS)NrrYrzr
rVrhrr�r�r�r�rXrZr-Trtr�rFr�r,)r	r�r
r
r�test_none_argumentsss:z1MixinStrUnicodeUserStringTest.test_none_argumentsc	Cs�d}d}|�td|j|ddd�|�td|j|ddd�|�td|j|ddd�|�td|j|ddd�|�td|j|ddd�|�td|j|ddd�|�td	|j|ddd�|�	d
ddd
�dS)Nrr-z^find\(z^rfind\(z^index\(z	^rindex\(z^count\(z
^startswith\(z^endswith\(r[r�rzr�)
ZassertRaisesRegexrHrzr�r�r�rXr�rtrN)r	r�r-r
r
r�*test_find_etc_raise_correct_error_messages�s0�������zHMixinStrUnicodeUserStringTest.test_find_etc_raise_correct_error_messagesN)rrrrsrvrxr{r|r�r�r�r�rZcpython_onlyr�r�r�r�r�r�r�r
r
r
rrb0s$04
$5

	&rbc@seZdZdd�ZdS)�MixinStrUnicodeTestcCsn|j}Gdd�d|�}|d�}|��|g�}|�||�|�t|�|�|d�}|��|g�}|�||�dS)Nc@rB)z5MixinStrUnicodeTest.test_bug1001011.<locals>.subclassNrCr
r
r
r�subclass�rEr�r�)r5rkrIr<r=)r	�tr��s1�s2r
r
r�test_bug1001011�sz#MixinStrUnicodeTest.test_bug1001011N)rrrr�r
r
r
rr��sr�)�__doc__r]r~rcr�r�r�collectionsrr�rrr!r'r^rbr�r
r
r
r�<module>s.  
© 2025 GrazzMean