HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/test/__pycache__/string_tests.cpython-37.opt-2.pyc
B

��g��@s�ddlZddlZddlZddlZddlmZddlmZGdd�d�ZGdd�de�Z	Gdd	�d	e�Z
Gd
d�d�ZGdd
�d
e�ZGdd�d�Z
Gdd�d�ZdS)�N)�support)�UserListc@s&eZdZd	dd�Zdd�Zdd�ZdS)
�Sequence�wxyzcCs
||_dS)N)�seq)�selfr�r�-/usr/local/lib/python3.7/test/string_tests.py�__init__
�zSequence.__init__cCs
t|j�S)N)�lenr)rrrr	�__len__rzSequence.__len__cCs
|j|S)N)r)r�irrr	�__getitem__rzSequence.__getitem__N)r)�__name__�
__module__�__qualname__r
r
rrrrr	r	s
rc@seZdZdd�Zdd�ZdS)�BadSeq1cCsdddg|_dS)N��hello�{)r)rrrr	r
rzBadSeq1.__init__cCsdj|j�S)Nz{0} {1} {2})�formatr)rrrr	�__str__rzBadSeq1.__str__N)rrrr
rrrrr	rsrc@seZdZdd�Zdd�ZdS)�BadSeq2cCsdddg|_dS)N�a�b�c)r)rrrr	r
rzBadSeq2.__init__cCsdS)N�r)rrrr	r
rzBadSeq2.__len__N)rrrr
r
rrrr	rsrc@s\eZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Ze�ejd#kp�e�d$�d%kd&�d'd(��Zd)d*�Zd+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/dS)Q�BaseTestNFcs~t|t�r�j�|�St|t�r2�fdd�|D�St|t�rRt�fdd�|D��St|t�rvt�fdd�|��D��S|SdS)Ncsg|]}��|��qSr)�fixtype)�.0�x)rrr	�
<listcomp>+sz$BaseTest.fixtype.<locals>.<listcomp>csg|]}��|��qSr)r)r r!)rrr	r"-scs$g|]\}}��|���|�f�qSr)r)r �key�value)rrr	r"0s)�
isinstance�str�	__class__�	type2test�list�tuple�dict�items)r�objr)rr	r's




zBaseTest.fixtypecCs|�t|�d��|j�dS)N�123)�assertIs�typerr()rrrr	�test_fixtype6szBaseTest.test_fixtypecs���|�}��|�}��|�}�fdd�|��D�}t||�||�}��||�||kr�yGdd�d�jj�}Wntk
r�Yn$X||�}t||�|�}��||�dS)Ncsi|]\}}��|�|�qSr)r)r �k�v)rrr	�
<dictcomp>>sz'BaseTest.checkequal.<locals>.<dictcomp>c@seZdZdS)z$BaseTest.checkequal.<locals>.subtypeN)rrrrrrr	�subtypeHsr5)rr,�getattr�assertEqualr'r(�	TypeError�assertIsNot)r�resultr-�
methodname�args�kwargsZ
realresultr5r)rr	�
checkequal:s 


zBaseTest.checkequalc	GsN|�|�}|�|�}|�|��}t||�|�WdQRX|�t|j�d�dS)N�)r�assertRaisesr6ZassertNotEqualr&Z	exception)r�excr-r;r<�cmrrr	�checkraisesRs


zBaseTest.checkraisescGs&|�|�}|�|�}t||�|�dS)N)rr6)rr-r;r<rrr	�	checkcallZs

zBaseTest.checkcallc
sN��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��j�r���dddd�n��tddd�dddg}d}t|�}t�}xZt||�D]J}g}x.t|�D]"}t	||�\}}|�
||��qJW|�d�|���q8W�fdd�|D�}x�|D]�}t|�}	x�|D]�}|�
|�}
|�r�t	|	t|�|��d���t|��\}}nt|�dd}}|�s|
|k�r���|dd||f���|
|d|
||f��q�W�q�WdS)N��aaa�countrrr���
���i����r?��xxr�*rcsg|]}��|��qSr)r)r �ts)rrr	r"�sz'BaseTest.test_count.<locals>.<listcomp>z%s != 0 for %sz%s != %s for %s)r>�sys�maxsizerCr8�contains_bytesr�set�range�divmod�append�add�joinrG�replacerr7)
r�charset�digits�base�teststringsr�entry�j�m�n�r1�r2Zremr)rr	�
test_count_sh



zBaseTest.test_countc	s���dddd���ddddd���ddddd	���dddd
d���dddd
d���dddd
d	���dd
dd���dd
ddd	���dd
ddd	d���dd
ddd	d���dd
dddd���tdd��jr��dddd�n��tddd���dd
dd
���dd
dd
dd���dd
dd
tjd���dd
dd���dd
dddd���dd
ddtjd���ddddtjdd�d
dddg}d}t|�}t�}xZt||�D]J}g}x.t|�D]"}t	||�\}}|�
||��q�W|�d
�|���q�W�fdd�|D�}xj|D]b}xZ|D]R}|�
|�}	|	dk}
||k}��|
|�|	dk�r(��||	|	t|��|��q(W�qWdS)Nr�abcdefghiabc�find�abc�	rIrK�defrLr?rErH�
rrarrrrrrrrrar��rrNrM�ab�xxxrr�csg|]}��|��qSr)r)r rO)rrr	r"�sz&BaseTest.test_find.<locals>.<listcomp>)r>rCr8rRrPrQrrSrTrUrVrWrXrfr7)rrZr[r\r]rr^r_r`�locrbrcr)rr	�	test_find�sR



zBaseTest.test_findc	s0��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�ddddg}d}t|�}t�}xZt||�D]J}g}x.t|�D]"}t||�\}}|�||��qHW|�	d�
|���q6W�fdd�|D�}xj|D]b}xZ|D]R}|�|�}	|	d	k}
||k}��|
|�|	d	k�r���||	|	t|��|��q�W�q�W��d	dddt
jdd���dddd�dS)Nrhre�rfindrgrkr?r�abcdrKZabczrErLrjrrlrHrrNrrrocsg|]}��|��qSr)r)r rO)rrr	r"�sz'BaseTest.test_rfind.<locals>.<listcomp>rmrnrIu<......м...�<)r>rCr8rRrrSrTrUrVrWrXrrr7rPrQ)rrZr[r\r]rr^r_r`rprbrcr)rr	�
test_rfind�sJ



(zBaseTest.test_rfindcCs"|�dddd�|�dddd�|�dddd�|�ddddd	�|�tddd
�|�tdddd	�|�tddd
d�|�tddd
d�|�dddd�|�ddddd�|�tddddd�|�dddddd�|�dddddd�|�tdd�|j�r|�tddd�n|�tddd�dS)Nrre�indexr?rErirgrhrI�hibZabcdefghiab�	abcdefghi�ghirrKrHrjrrkrLrlrrN)r>rC�
ValueErrorr8rR)rrrr	�
test_index
s"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�|j�r(|�tddd�n|�tddd�dS)Nrkre�rindexr?rErirhrgrrKrwZ	defghiabcrIrxryrrjrrLrlrHrrN)r>rCrzr8rR)rrrr	�test_rindex&s$zBaseTest.test_rindexcCs0|�ddd�|�ddd�|�tddd�dS)Nr�HeLLo�lowerrN)r>rCr8)rrrr	�
test_lower@szBaseTest.test_lowercCs0|�ddd�|�ddd�|�tddd�dS)NZHELLOr~�upperrrN)r>rCr8)rrrr	�
test_upperEszBaseTest.test_uppercCs�|�ddd�|�dddd�|�dddd�|�ddd�|�dddd�|�d	ddd�|�d
d
dd�|jddddd�|jddddd�|�dd
dd�|�tdddd�tjdkr�t�d�dkr�|�tddtj�dS)Nzabc
ab      def
g       hizabc
ab	def
g	hi�
expandtabsrzabc
ab  def
g   hirLzabc
ab      def
g       hizabc
ab	def
g	hizabc
ab  def
g   hizabc
ab
def
g
hi)�tabsizez  a
 bz 	a
	brIrrNl�Pz	a
	b)r>rCr8rPrQ�struct�calcsize�
OverflowError)rrrr	�test_expandtabsJs.

zBaseTest.test_expandtabscCsb|�ddddgddd�|�dgdddd�|�dd	gdddd
�|�dddgdddd�|�ddddgdddd
�|�ddddgdddd�|�ddddgdddtjd�|�dgdddd�|�dddgdddd�|�dgddd�|�dgddd�|�ddgddd�|�ddgddd�|�dddgddd�|�dddgdddd�|�dgdddd�dd�|�dgdd gddd�ddd�|�ddddgd!dd"�|�dd#gd!dd"d
�|�ddd$gd!dd"d�|�ddddgd!dd"d
�|�ddddgd!dd"d�|�ddddgd!dd"tjd%�|�d!gd!dd"d�|�ddd&gd'dd"d�|�ddgd(dd)�|�dd*gd+dd)�|�dd,dgd-dd)�|�dd.gd/dd0�|�ddgd1dd1�|�d1gd1dd1d�|�d2d2gd3dd4�|�d5gd5dd6�|�dgddd1�|�d7gd7dd1�|�d8d9gd:dd;�|�d8d<dgd=dd;�|�dgdd>dd?�dd@�|�dgdd>dd?�dd@dA�|�dgdBdCgd>dd?�dd@dB�|jddddgddddD�|jdd	gdddd
dE�|jdd	gdddd
dF�|jdd	gddd
ddG�|jddHgdIdd
dE�|�tdJddKdKdK�|�tdJdd�|�tdJddd�dS)LNrrr�dza|b|c|d�split�|rzb|c|drIzc|drHrErLr?zb||c||dz
a||b||c||drszendcase z	endcase |z
 startcasez| startcase�bothcasez
|bothcase|zbcdzabcd��z(a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|rK�z	a|a|a|a|az
a//b//c//dz//zb//c//dzc//drJzb////c////dza////b////c////dzendcase test�testz
 begincaseztest begincasez
 bothcase ztest bothcase test�bc�abbbc�bbrFrm�abbaab�ba�aaaa�aab�aa�AZbobbZ
Abbobbbobb�bbobb�BZAbbobbBbbobb�daBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAHaBLAH����BLAH���aBLAHa)�sep)�maxsplit)r�r�)r�r�zb c dza b c drrN)r>rPrQrCr8rz)rrrr	�
test_splitgsr 




zBaseTest.test_splitcCsN|�ddddgddd�|�ddgdddd	�|�d
ddgdddd�|�ddddgdddd�|�ddddgdddd
�|�ddddgdddtjd�|�dgdddd�|�dddgdddd�|�dgddd�|�dgddd�|�ddgddd�|�ddgddd�|�dddgddd�|�dddgdddd�|�dgdddd�dd�|�d gdgd!ddd�ddd!�|�ddddgd"dd#�|�d$dgd"dd#d	�|�d%ddgd"dd#d�|�ddddgd"dd#d�|�ddddgd"dd#d
�|�ddddgd"dd#tjd&�|�d"gd"dd#d�|�d'ddgd(dd#d�|�ddgd)dd*�|�ddgd+dd*�|�dd,dgd-dd*�|�d.dgd/dd0�|�ddgd1dd1�|�d1gd1dd1d�|�d.d.gd2dd3�|�d4gd4dd5�|�dgddd1�|�d6gd6dd1�|�d7d8gd9dd:�|�dd;d8gd<dd:�|�dgdd=dd>�dd?�|�dgdd=dd>�dd?d@�|�dAgdgdBd=dd>�dd?dB�|jddddgddddC�|jddgdddd	dD�|jddgdddd	dE�|jddgddd	ddF�|jdGdgdHdd	dD�|�tdIddJdJdJ�|�tdIdd�|�tdIddd�dS)KNrrrr�za|b|c|d�rsplitr�za|b|crIza|brHrErL�drza||b||cr?z
a||b||c||drsz
 begincasez| begincasezendcase z	endcase |r�z
|bothcase|zabzabcdr�r�z(a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|a|rKz	a|a|a|a|ar�z
a//b//c//dz//za//b//cza//broza////b////cza////b////c////dztest begincaser�zendcase testz
 bothcase ztest bothcase testrmr�r�rFr�r�r�r�r�Zbbobr�Z
bbobbbobbAr�r�ZbbobbBbbobbAr�r�r�r�r�r�)r�)r�)r�r�)r�r�za b cza b c drrN)r>rPrQrCr8rz)rrrr	�test_rsplit�sp 




zBaseTest.test_rsplitcCs�|j}|ddddd�|ddddd�|ddddd�|ddddd�|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)�Nr?rYr�r�z*A*�*z*1A*1z*1z*-#A*-#z*-#z*-A*-A*-�AAz*-rKrLrEz*-A*-ArHz*-AArIrZAAAZ
AAAAAAAAAAZBCDZABACADAroZBCDAZBCADAZBACADAZABCADZABCADAAz
*************z^A^a�^AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA^i��theZaterZtheaterZthetheZthethethether�Ztheatheatheathea�thatZthaetzhere and rezhere and therezhere and re and rezhere and there and therezhere and re and therergZabcdefgZbobZbbobobZbobXbobZ
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	Reykjavikr2ZKKZ
ReyKKjavikzA----B----C----zA.B.C.z----u...м......&lt;u...м......<rtz&lt;zham, ham, eggs and hamzspam, spam, eggs and spamZspamZhamzham, 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-crmz--Zxyr.Z123123Z123x123rrN�h)r>rPrQrCr8)rZEQrrr	�test_replace�s"
zBaseTest.test_replacelr�rLz only applies to 32-bit platformscCsFdd}|�t|dd|�|�t|dd|�|�t|dd||�dS)Nr�irYr?r�)rCr�)rZA2_16rrr	�test_replace_overflow�szBaseTest.test_replace_overflowcCsZ|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�tddd	�dS)
Nz hello �
capitalizezHello zhello ZAaaar�ZAaAarrN)r>rCr8)rrrr	�test_capitalize�szBaseTest.test_capitalizecCsJ|�dddddgdd�|�ddd	d
gdd�|�ddgd
ddd�|�dddgd
ddd�|�ddd	d
gd
ddd�|�ddd	d
gd
ddd�|�ddd	d
gd
ddtjd�|�d
gd
ddd�|�d
gdddd�|�dddgdddd�|�gdd�|�dgdd�|�ddgdd�|�ddgdddd�|�dgdddd�|�ddgdddd�|�dddgdddd�|�ddd	gdddd�|�ddgdd�d }|�dgd!|d�|�dg|dd�g|ddd�|�dgd"d#g|ddd"�xJd$D]B}|�d%d&g|d�|�d%d&g|dd�|�d%d&g|ddd��qWdS)'N�thisr�r�r��functionzthis is the split functionrrrr�za b c d zb c dza b c drIzc drHrErLrz	  a b c dzc  dz
a  b  c  dz	         z  a    z  a    b   zb   z
a    b   c   z  a    b   c   zb   c   zc   z
	a 	
 b  z< 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)r>rPrQ)rrFrrrr	�test_additional_split�s:"
zBaseTest.test_additional_splitcCsN|�dddddgdd�|�ddd	d
gdd�|�dd
gd
ddd�|�dd	d
gd
ddd�|�ddd	d
gd
ddd�|�ddd	d
gd
ddd�|�ddd	d
gd
ddtjd�|�d
gd
ddd�|�d
gdddd�|�dd	d
gdddd�|�gdd�|�dgdd�|�ddgdd�|�ddgdddd�|�dgdddd�|�dd	gdddd�|�ddd	gdddd�|�ddd	gdddd�|�ddgdddd �d!}|�dgd|d�|�|dd"�gdg|ddd�|�d#gdgd$|ddd$�xJd%D]B}|�d&d'g|d�|�d&d'g|dd�|�d&d'g|ddd��qWdS)(Nr�r�r�r�r�zthis is the rsplit functionrrrr�za b c d za b cza b c drIza brHrErLr�rz	a b c d  za  bz
a  b  c  dz	         z  a    z  a    b   z  az  a    b   cz  a    b   c   z  a    bz
	a 	
 b  �Xz< a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a  a r�z a  ar�)zarf	barfzarf
barfzarf
barfzarfbarfzarfbarfr�r�)r>rPrQ)rrFrrrr	�test_additional_rsplit�sB"
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 	

rgz	abc 	

z	 	

abc)r>)rrrrr	�test_strip_whitespaceszBaseTest.test_strip_whitespacecCs�|�dddd�|�dddd�|�dddd�|�dddd�|�d	d
dd
�|�dd
dd�|�tddd
d
�|�tddd
d
�|�tddd
d
�dS)NrZxyzzyhelloxyzzyr�ZxyzZ
helloxyzzyr�Z
xyzzyhellor�r?ZmississippiZ
mississipprrN)r>rCr8)rrrr	�
test_stripszBaseTest.test_stripcCsd|�dddd�|�dddd�|�dddd�|�dddd�|�d	dddd
�|�tdd�dS)Nz
abc       rg�ljustrJzabc   rlrErHz
abc*******r�)r>rCr8)rrrr	�
test_ljust!szBaseTest.test_ljustcCsd|�dddd�|�dddd�|�dddd�|�dddd�|�d	dddd
�|�tdd�dS)Nz
       abcrg�rjustrJz   abcrlrErHz
*******abcr�)r>rCr8)rrrr	�
test_rjust)szBaseTest.test_rjustcCsd|�dddd�|�dddd�|�dddd�|�dddd�|�d	dddd
�|�tdd�dS)Nz
   abc    rg�centerrJz abc  rlrErHz
***abc****r�)r>rCr8)rrrr	�test_center1szBaseTest.test_centercCs"|�ddd�|�tddd�dS)NzhEllO CoMPuTErSzHeLLo cOmpUteRs�swapcaserrN)r>rCr8)rrrr	�
test_swapcase9szBaseTest.test_swapcasecCs�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd	�|�d
d
dd�|�d
d
dd�|�dd
dd	�|�dd
dd�|�dddd�|�dddd�|�tdd�dS)Nr.�zfillrHrEZ0123rLz+123z+0123roz-123z-0123Z000r?Z34rIZ0034)r>rCr8)rrrr	�
test_zfill>szBaseTest.test_zfillcCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)NFr?�islowerTrr��
rgZaBczabc
rN)r>rCr8)rrrr	�test_islowerNszBaseTest.test_islowercCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)
NFr?�isupperrTr�r��ABCZAbCzABC
rgrN)r>rCr8)rrrr	�test_isupperXszBaseTest.test_isuppercCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�ddd�|�dd
d�|�ddd�|�tddd�dS)NFr?�istitlerTr�r�zA Titlecased LinezA
Titlecased LinezA Titlecased, LinezNot a capitalized StringzNot	a Titlecase StringzNot--a Titlecase StringZNOTrgrN)r>rCr8)rrrr	�test_istitlebszBaseTest.test_istitlecCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�tddd
�dS)NFr?�isspacerT� �	�
r�z 	
z 	
argrN)r>rCr8)rrrr	�test_isspacepszBaseTest.test_isspacecCsv|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�tddd�dS)NFr?�isalphaTrr�r�rgZaBc123zabc
rN)r>rCr8)rrrr	�test_isalpha{szBaseTest.test_isalphacCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�dd
d�|�ddd�|�tddd
�dS)NFr?�isalnumTrr�r�Z	123abc456Za1b3czaBc000 zabc
rgrN)r>rCr8)rrrr	�test_isalnum�szBaseTest.test_isalnumcCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�xptd
�D]d}|�dd|dd�|�dd|dd�|�dd|ddd�|�dd|ddd�q^WdS)
NTr?�isasciir��zF�€�érr�z        )r>rT)r�prrr	�test_isascii�szBaseTest.test_isasciicCsZ|�ddd�|�ddd�|�ddd�|�ddd�|�ddd�|�td	dd
�dS)NFr?�isdigitrT�0�
0123456789Z0123456789argrN)r>rCr8)rrrr	�test_isdigit�szBaseTest.test_isdigitcCsh|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�d
dd�|�tddd
�dS)Nz Hello z hello �titlezHello zhello zFormat This As Title StringzfOrMaT thIs aS titLe StringzFormat,This-As*Title;StringzfOrMaT,thIs-aS*titLe;StringZGetintZgetIntrrN)r>rCr8)rrrr	�
test_title�szBaseTest.test_titlecCs|�ddddgdd�|�ddddgdd�|�dddgdd�|�dddgd	d�|�ddddgd
d�|�dddddgdd�|�dddddgddd�|�d
ddddgddd�|jdddddgdddd�|jd
ddddgdddd�|�tdddd�dS)Nrgrir?ryzabc
def

ghi�
splitlinesz
abc
def

ghizabc
def
ghiz
abc
def
ghi
zabc
def
ghi

z
abc
def
ghi

Fr�zabc
zdef
zghi
r�T)�keependsrN)r>rCr8)rrrr	�test_splitlines�s


zBaseTest.test_splitlines)0rrrr(rRrr1r>rCrDrdrqrur{r}r�r�r�r�r�r��unittestZskipIfrPrQr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr	rsR@95FF1	$(


		rc@seZdZdd�Zdd�ZdS)�
CommonTestcCsJ|�d�}|�d�}x|D]}||7}t|�qW|�t|�t|��dS)NZDNSSECr?)r(�hashr7)rrrrrrr	�	test_hash�s


zCommonTest.test_hashcCsX|�ddd�|�ddd�|�ddd�|�ddd�|�dd	d�|�d
d
d�dS)Nu
ΩΙῳῳῳuῳῳῼῼr�uⓅⓨⓣⓗⓞⓝuⓅⓎⓉⒽⓄⓃuⓟⓨⓣⓗⓞⓝu	Ⅰⅱⅲu	ⅠⅡⅢu	ⅰⅱⅲu
ƛᴀᶆȡᾷ)r>)rrrr	�test_capitalize_nonascii�sz#CommonTest.test_capitalize_nonasciiN)rrrr�r�rrrr	r��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)'NTr�
startswith�heFzhello worldr?�ellorIr�rLro�lorl�
helloworld�loworErrrKi���i�������r�������i����rN)r��ha)r��llo)�helloxrr)�hellowo�rldr�)rr�r)r�r�)r��helrH)rN)r>rCr8)rrrr	�test_startswith�sP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�endswithr�Fr�r?zhello worldr�ZworlrErhZworldrkr�rIrrHrLrrmrrri����i����r�rKi����i����i����r�rN)r�r)r�r)rrr)rrr�)rr�r)�hellZell)r�r)r�r
)rN)r>rCr8)rrrr	�
test_endswithsXz+MixinStrUnicodeUserStringTest.test_endswithcCs�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd�|�dddd	�|�dd
dd
�|�dddd
�|�dddd
�dS)NTr?�__contains__rgFr�zabczabcrZasdfZasd)r>)rrrr	�test___contains__Lsz/MixinStrUnicodeUserStringTest.test___contains__cCs�|�dddd�|�dddd�|�dddd�|�dddtdd��|�dddtdd��|�dddtdd	��|�d
ddtdd��|�tddd�dS)NrrgrrrrKrEi�rIr?ri)r>�slicerCr8)rrrr	�test_subscriptWsz,MixinStrUnicodeUserStringTest.test_subscriptcCs�|�dddtdd��|�dddtdd��|�dddtdd��|�dddtd	d��|�d
ddtd	d��|�dddtdd��|�dddtdd��|�dddtdd��|�dddtdd	��|�tddd
�dS)Nrgrri�rErmrHr�rIrr?i�ri)r>rrCr8)rrrr	�
test_slicebsz(MixinStrUnicodeUserStringTest.test_slicecCs�tjtj}dddddtjdddf	}x`|D]X}xR|D]J}xD|dd�D]4}t|�|||�}|�d�|�|d	t|||��qFWq4Wq*WdS)
NrrIrE�)rKri���r?r)	�stringZ
ascii_lettersr[rPrQr)r>rXr)r�s�indices�start�stop�step�Lrrr	�test_extended_getsliceos

z4MixinStrUnicodeUserStringTest.test_extended_getslicecCsb|�dddd�|�dddd�|�dddd�|�dddd�|�tdd�|�tddd�dS)	Nr?rg�__mul__rKrrIZ	abcabcabcrE)r>rCr8)rrrr	�test_mul{sz&MixinStrUnicodeUserStringTest.test_mulc
Cs�|�dddddddg�|�dd	dd
�|�dd	dd�|�d
d	dd�|�dddt��|�dddd�|�dddtdg��|�ddddddg�|�tdjdddg�xhdD]`}|�d|d|dd�ddd|g|�|�d|d|dd�ddd|f|�q�W|�dddt��|�tdd�|�tddd�|�tddd�|�tddddt�g�ydd�}|�	d��|��Wn<tk
�r�}zdt
|�k�r�|�d �Wdd}~XYnX|�d!�dS)"Nza b c dr�rXrrrr�rsr?)rrrr�Zbd)r?rr?r�Zac)rr?rr?zw x y zrg)rg�zza.b.cr�rE)ro��}r�rKza b crrIrHcssddVdS)NrLr?rrrrr	�f�sz2MixinStrUnicodeUserStringTest.test_join.<locals>.f�+zjoin() ate exception messagezexception not raised)r>rrr@r8rXrrC�bytesrr&Zfail)rrr�errr	�	test_join�s4
z'MixinStrUnicodeUserStringTest.test_joincCsj|�dddd�|�dddd�|�dd	dd�|�dd	dd�|�d
d	dd�|�dd	dd
�|�dddd�|�dd	dd�x dD]}|�ttfd	d|�q�Wtjd}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+rJrz%c�"�"�$�$Z10z%dr��)i����i z 42z%3ldrNZ42gE@z0042.00z%07.2fz%07.2Frgz%(foo)sz%s%s)rN)Nz%(fooz%(foo)s %(bar)s)�foorNyE@�barz	%((foo))sz(foo)Zhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxz%sxZgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz%*s)r*r+z%10.*f)r*gE@z%10z%%%dflg������	@z%%.%dfrIr?z%.*fg�$I�$I�?c@seZdZdS)z8MixinStrUnicodeUserStringTest.test_formatting.<locals>.XN)rrrrrrr	�X�sr,)r>rCrzr�rPrQr&rD�floatr8�object)rZordinalZ	longvalueZ
slongvaluer,rrr	�test_formatting�sN



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_MAXrIz%*sr$r?z%.*fg�$I�$I�?)Z	_testcapir0r1r2�
bit_lengthrCr�)rr0r1r2ZSIZE_MAXrrr	�test_formatting_c_limits�s



z6MixinStrUnicodeUserStringTest.test_formatting_c_limitscCsRxLtd�D]@}d|}d}x.td�D]"}|ddd}|�|d|�q$Wq
WdS)	Nr�z%%.%ifg{�G�z�?�<g�.DT�!	@g@g$@r$)rTrD)rZprecrr$r!rrr	�test_floatformatting�sz2MixinStrUnicodeUserStringTest.test_floatformattingcCs�|�ddd�|�ddd�|�ddd�|�ddd�|�ddddd�|�ddd�|�ddd	�|�ddd�|�ddd
�|�ddd�|�ddd�|�ddd�dS)Nrr�rTr�r�r�rYr�r�r�)r>)rrrr	�test_inplace_rewrites�sz3MixinStrUnicodeUserStringTest.test_inplace_rewritescCsx|�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�	partitionr8zhttp://www.python.org)�httpz://zwww.python.orgz://)zhttp://www.python.orgr?r?r�)r?zhttp://zwww.python.orgzhttp://)zhttp://www.python.�orgr?r;r?)r>rCrzr8)r�Srrr	�test_partition	s
z,MixinStrUnicodeUserStringTest.test_partitioncCsx|�dddd�d}|�d|dd�|�d|dd	�|�d
|dd�|�d|dd
�|�t|dd�|�t|dd�dS)N)zthis is the rpartir8z	on methodzthis is the rpartition method�
rpartitionr8zhttp://www.python.org)r:z://zwww.python.orgz://)r?r?zhttp://www.python.orgr�)r?zhttp://zwww.python.orgzhttp://)zhttp://www.python.r;r?r;r?)r>rCrzr8)rr<rrr	�test_rpartitions
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)NrrHrf�lrErrr�rrrvr|rGrIr!Tr	r�r�Fr�)r>)rrrrr	�test_none_arguments's: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\(rJu...м......<rfrt)
ZassertRaisesRegexr8rfrrrvr|rGr�r	r>)rrr!rrr	�*test_find_etc_raise_correct_error_messagesMs"zHMixinStrUnicodeUserStringTest.test_find_etc_raise_correct_error_messagesN)rrrrrr
rrrrr#r/rZcpython_onlyr4r6r7r=r?rArBrrrr	r��s 04
$5	&r�c@seZdZdd�ZdS)�MixinStrUnicodeTestcCsn|j}Gdd�d|�}|d�}|��|g�}|�||�|�t|�|�|d�}|��|g�}|�||�dS)Nc@seZdZdS)z5MixinStrUnicodeTest.test_bug1001011.<locals>.subclassN)rrrrrrr	�subclassmsrDrs)r(rXr9r/r0)r�trD�s1�s2rrr	�test_bug1001011gsz#MixinStrUnicodeTest.test_bug1001011N)rrrrHrrrr	rCdsrC)r�rrPr�r�r�collectionsrrrrrr�r�rCrrrr	�<module>s& 5