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: //proc/thread-self/root/usr/local/lib/python3.7/test/__pycache__/test_bigmem.cpython-37.pyc
B

��g���@sdZddlmZddlmZmZmZmZddlZddl	Z	ddl
Z
dZdZdZ
e
jdkrZdnd	ZGd
d�d�ZGdd
�d
eje�ZGdd�deje�ZGdd�deje�ZGdd�dej�ZGdd�dej�Zdd�Zedk�ree
j�dkr�e�e
jd�e�dS)a�Bigmem tests - tests for the 32-bit boundary in containers.

These tests try to exercise the 32-bit boundary that is sometimes, if
rarely, exceeded in practice, but almost never tested.  They are really only
meaningful on 64-bit builds on machines with a *lot* of memory, but the
tests are always run, usually with very low memory limits to make sure the
tests themselves don't suffer from bitrot.  To run them for real, pass a
high memory limit to regrtest, with the -M option.
�)�support)�
bigmemtest�_1G�_2G�_4GN���l�c@s<eZdZdd�Zeeddd�dd��Zeedd�d	d
��Zeedd�dd��Zeeddd�d
d��Z	eedd�dd��Z
eedd�dd��Zeedd�dd��Zeedd�dd��Z
eedd�dd��Zeedd�dd��Zeedd�dd��Zeedd�dd��Zeedd�dd ��Zeedd�d!d"��Zeeddd�d#d$��Zeeddd�d%d&��Zeeddd�d'd(��Zeeddd�d)d*��Zeedd�d+d,��Zeedd�d-d.��Zeeddd�d/d0��Zeeddd�d1d2��Zeed3d�d4d5��Zeed6eded�d7d8��Zeed3d�d9d:��Z eedd�d;d<��Z!eedd�d=d>��Z"d?d@�Z#dAdB�Z$eedd�dCdD��Z%eed6dd�dEdF��Z&eedGdd�dHdI��Z'ee(ddJd�dKdL��Z)ee(ddJd�dMdN��Z*eedGdd�dOdP��Z+eedd�dQdR��Z,eeddd�dSdT��Z-eeddd�dUdV��Z.dWS)X�BaseStrTestcCs`|j}|�d�}|d�||}|��}|�|t|�d�|���|�|�|d��|�dS)Nz abc def ghi�-)�from_latin1�
capitalize�assertEqual�len�lstrip)�self�size�_�SUBSTR�sZcaps�r�,/usr/local/lib/python3.7/test/test_bigmem.py�_test_capitalizeHs

zBaseStrTest._test_capitalize�
r)r�memusecCs~|�d�}|�|�}|�t|�|�t|�t|�d}}t|�drP|d7}|�|||�|�|�|��|���dS)Nz abc def ghirr)r
�centerrr�strip)rrrrZlpadsizeZrpadsizerrr�test_centerQs

zBaseStrTest.test_centerrcCs�|j}|d�}|d�||}|�|�|d��|�||d�7}|�|�|d��|d�|�|�|d��d�|�|�|d��d�|�|�|d��d�dS)	Nz abc def ghi�.r� ��i�jr)r
r�count)rrrrrrrr�
test_count\szBaseStrTest.test_countcCs�|j}|d�}|d�||}|�|�|��|�|�|��|d�|}|�|�|��|�|�|d�|��|�|�|��dS)Nz abc def ghirz...�a)r
�
assertTrue�endswith�assertFalse)rrrrr�s2rrr�
test_endswithhszBaseStrTest.test_endswithcCs�|j}|d�|}d}|�|��|k�~t||�\}}|d�|}|�|�}|�t|�||�|�t|�|d���d�dS)Nrr
z       	r r)r
r'�
expandtabs�divmodrrr)rrrr�tabsizeZslenZ	remainderrrr�test_expandtabsts
zBaseStrTest.test_expandtabscCs |j}|d�}t|�}|d��||d�||g�}|�|�|d��d�|�|�|�d�|�|�|d�|�||�|�|�|t|��||�|�|�|d��|�|d���|�|�|d�|�|||�|d���|�|�|d�|�|||�|d���|�|�|d��d�dS)	Nz abc def ghi�rr rr"r#���)r
r�joinr�find)rrrr�sublenrrrr�	test_find�s zBaseStrTest.test_findcCs|j}|d�}t|�}|d��||d�||g�}|�|�|d��d�|�|�|�d�|�|�|d�|�||�|�|�||�||�|�|�|d��|�|d���|�|�|d�|�|||�|d���|�|�|d�|�|||�|d���|�t|j|d��dS)Nz abc def ghir0rr rr"r#)r
rr2r�index�assertRaises�
ValueError)rrrrr4rrrr�
test_index�s zBaseStrTest.test_indexcCsJ|j}|d�}|d�||}|�|���||d�7}|�|���dS)N�123456r&r)r
r'�isalnumr))rrrrrrrr�test_isalnum�szBaseStrTest.test_isalnumcCsJ|j}|d�}|d�||}|�|���||d�7}|�|���dS)NZzzzzzzzr&r)r
r'�isalphar))rrrrrrrr�test_isalpha�szBaseStrTest.test_isalphacCsJ|j}|d�}|d�||}|�|���||d�7}|�|���dS)Nr:�9�z)r
r'�isdigitr))rrrrrrrr�test_isdigit�szBaseStrTest.test_isdigitcCsf|j}|d�dd�td�D���}|t|�d}||}|�|���||d�7}|�|���dS)Nr0css"|]}t|���st|�VqdS)N)�chr�isupper)�.0�crrr�	<genexpr>�sz+BaseStrTest.test_islower.<locals>.<genexpr>�r�A)r
r2�rangerr'�islowerr))rrr�chars�repeatsrrrr�test_islower�szBaseStrTest.test_islowercCsR|j}|d�}|t|�d}||}|�|���||d�7}|�|���dS)Nz 

	rr#)r
rr'�isspacer))rrrZ
whitespacerMrrrr�test_isspace�szBaseStrTest.test_isspacecCst|j}|d�}|d��|d�|d�||g�}|�|���||d�7}|�|���||d�7}|�|���dS)Nr:r0rIr&ZaA)r
r2r'�istitler))rrrrrrrr�test_istitle�s zBaseStrTest.test_istitlecCsf|j}|d�dd�td�D���}|t|�d}||}|�|���||d�7}|�|���dS)Nr0css"|]}t|���st|�VqdS)N)rCrK)rErFrrrrG�sz+BaseStrTest.test_isupper.<locals>.<genexpr>rHrr&)r
r2rJrr'rDr))rrrrLrMrrrr�test_isupper�szBaseStrTest.test_isuppercCs�|j}|d�|}|�|d�|d�g�}|�|�|d��d�|�|�|d��d�|�|�|d���|�|�|d���dS)	NrIZaaaaaZbbbbbr&��bZaaaaaAZAbbbbb)r
r2rr$r'�
startswithr()rrrr�xrrr�	test_join�szBaseStrTest.test_joincCsX|j}|d�}|�|�}|�|�||d���|�t|�|�|�|��|���dS)Nz abc def ghiz  )r
�ljustr'rVrrr)rrrrrrrr�
test_ljust�s
zBaseStrTest.test_ljustcCsD|j}|d�|}|��}|�t|�|�|�|�|d��|�dS)NrIr&)r
�lowerrrr$)rrrrrrr�
test_lower�s
zBaseStrTest.test_lowercCs�|j}|d�}|�|�}|�t|�|�|�|��|���~|�|�}|�t|�|�t|ttf�r||��}|�	||k�dS)Nzabc def ghi)
r
�rjustrrrrY�
isinstance�str�bytesr')rrrrr�strippedrrr�test_lstrips

zBaseStrTest.test_lstripcCs�|j}|d�}|d�|}|�|d�|�}|�t|�|�|�|�|�|�|�||d�|d�}|�t|�|�|�|�|�d�|�|dd�|d��dS)Nr&r r	i����z
      aaaa)r
�replacerrr$)rrrZreplacementrrrr�test_replaceszBaseStrTest.test_replacecCs<|j}|d�}t|�}|d��||d�||g�}|�|�|d��|||�|d���|�|�|�||�|�|�|d�d|�|�|d���|�|�|d||�d�|�|�|d��|||�|d���|�|�|d�d|�|�|d���|�|�|d�d||�|�|d���|�|�|d��d�dS)	Nz abc def ghir0rr rr"r#r1)r
rr2r�rfind)rrrrr4rrrr�
test_rfind s($($zBaseStrTest.test_rfindcCsB|j}|d�}t|�}|d��||d�||g�}|�|�|d��|||�|d���|�|�|�||�|�|�|d�d||d�|�|d���|�|�|d||�d�|�|�|d��|||�|d���|�|�|d�d|�|�|d���|�|�|d�d||�|�|d���|�t|j|d��dS)	Nz abc def ghir0rr rrr"r#)r
rr2r�rindexr7r8)rrrrr4rrrr�test_rindex0s $zBaseStrTest.test_rindexcCsX|j}|d�}|�|�}|�|�||d���|�t|�|�|�|��|���dS)Nz abc def ghiz  )r
rYr'rVrrr)rrrrrrrr�
test_rjustCs
zBaseStrTest.test_rjustcCs�|j}|d�}|�|�}|�t|�|�|�|��|���~|�|�}|�t|�|�t|ttf�r||��}|�	||k�dS)Nz abc def ghi)
r
rYrr�rstripr]r^r_r`r')rrrrrrarrr�test_rstripLs

zBaseStrTest.test_rstripg������@c	Cs�|j}t|dd�}|d�|d�|}||}|��}|�t|�|�|d�}x|D]}|�||�qXW~|�|d��}|�t|�|d�|d�|}xtd|�D]}|�||�q�WdS)Ng�?rr&r r)r
�int�splitrr�filter)	rrr�	chunksizerr�l�expected�itemrrr�test_split_small^s
zBaseStrTest.test_split_smallrTcCs�|j}|d�||d�}|��}|�t|�|�|�t|�t|d�g��~|�|d��}|�t|�|d�|�t|�t|d�g��dS)Nz ar r&r)r
rmrr�set)rrrrrprrr�test_split_largexszBaseStrTest.test_split_largec	Cs�|j}t|dd�d}|d�||d�|d�||d�}||d}|��}|�t|�|d�|d�|}x|D]}|�||�q|WdS)Ng�?rr �
z
r	)r
rl�
splitlinesrr)	rrrrorrrprqrrrrr�test_splitlines�s(
zBaseStrTest.test_splitlinescCsZ|j}|d�}|d�||}|�|�|��|�|�|d�|��|�|�|��dS)Nz abc def ghir)r
r'rVr))rrrrrrrr�test_startswith�szBaseStrTest.test_startswithcCsp|j}|d�}|�|�}|�t|�|�|�|��|���~|�|�}|�t|�|�|�|��|���dS)Nz   abc def ghi   )r
r]rrrrY)rrrrrrrr�
test_strip�s

zBaseStrTest.test_stripcCs�|j}|d�}t|�}||d}||}|��}|�t|�||�|�|d|d�|��d�|�||dd�|��d�dS)NuaBcDeFG12.'©rr!)r
r�swapcaser)rrrrr4rMrrrr�_test_swapcase�s zBaseStrTest._test_swapcasecCs^|j}|d�}||t|�d}|��}|�|�|d����|�|�|��d��dS)NZ
SpaaHAaaAahamrr!)r
r�titler'rVr(r[)rrrrrrrr�_test_title�szBaseStrTest._test_titlecCs�|j}|d�}t�dd�}t|�}||d}||}|�|�}|�t|�||�|�|d|�|�|��|�||d�|�|��|�|�|d��d�|�|�|d��|d�|�|�|d��|d	�dS)
Nz
aZz.z.Aaz.s.aZs-!$rrr�!r@r!)r
r`�	maketransr�	translaterr$)rrrr�transr4rMrrrr�test_translate�s
zBaseStrTest.test_translatecCsD|j}|d�|}|��}|�t|�|�|�|�|d��|�dS)Nr&rI)r
�upperrrr$)rrrrrrr�
test_upper�s
zBaseStrTest.test_upper�cCs~|j}|d�}|�|�}|�|�|d�|dd���|�|�|d���|�t|�|�|�|�|d��|t|��dS)Nz-568324723598234�0rz-0)r
�zfillr'r(rVrrr$)rrrrrrrr�
test_zfill�s
 zBaseStrTest.test_zfillr!cCs\|j}|d�|}|�t|�|�||}|�t|�|d�|�|�|d��|d�dS)Nrr)r
rrr$)rrrrrrr�test_concat�szBaseStrTest.test_concatcCs\|j}|d�|}|�t|�|�|d}|�t|�|d�|�|�|d��|d�dS)Nrr)r
rrr$)rrrrrrr�test_repeat�szBaseStrTest.test_repeatcCs�|j}|d�}t|�}|||}t|�d}|||}x�tdt|�||�D]�}|�|||d�|�||||�|�|�||||d�|ddd��|dkrP|�|||d|dd�||dd��qPW|�|t|�d|d�|�|d|d�|�|t|�d|d�|�|||d�|�|t|�d�|d	��|�|t|�dd�|dd��|�|dd�|dd��|�|t|�|d�|�|�||d�|�|�t|dd��t|��|�t|dt|�d
��t|�d
�|�t|d
d��t|�d�|�ttj|t|��|�ttj|t|�d�|�ttj|t|�dd>�dS)
N�
0123456789�drrr���r1rr0rT����)r
rrJrr7�
IndexError�operator�getitem)rrrrr4rZstepsizer"rrr�test_slice_and_getitem�s8$$( z"BaseStrTest.test_slice_and_getitemcCs�|j}|d�}|d�|d}|d��|||g�}~|�||k�|�|d|k�|�|d�|k�|�|d�|k�||d�7}|�|d�|k�dS)Nr�rrr0r&)r
r2r'r))rrrr�edgerrrr�
test_containsszBaseStrTest.test_containscCsh|j}|d�|}|d�|}|�||k�~||d�}|�||k�~|d�|}|�||k�dS)Nrr&r)r
r'r))rrr�s1r*rrr�test_compare"szBaseStrTest.test_comparecCs@|j}|d�|}t|�}~|d�|d}|�|t|��dS)N�r)r
�hashZassertNotEqual)rrrr�h1rrr�	test_hash/szBaseStrTest.test_hashN)/�__name__�
__module__�__qualname__rrrrr%r+r/r5r9r<r>rBrNrPrRrSrXrZr\rbrdrfrhrirkrs�ascii_char_size�pointer_sizerurxryrzr|r~r�r�r�rr�r�r�r�r�r�rrrrrFsN	
			

	
	 		"
rc@s�eZdZdd�Zd1dd�Zdd�Zd	d
�Zeee	de
dd
�dd��Zeee	de
dd
�dd��Zeee	de
dd
�dd��Z
eede
dd
�dd��Zeedde
e	dd
�dd��Zeedde
ddd
�dd��Zeedde
e	dd
�d d!��Zeede
dd
�d"d#��Zeed$e
de	d
�d%d&��Zeed$e
dd
�d'd(��Zeed$e
dd
�d)d*��Zeeddee	e
dd
�d+d,��Zeedde	de
d$d
�d-d.��Zeee
de	d
�d/d0��ZdS)2�StrTestcCs|S)Nr)rrrrrr
AszStrTest.from_latin1rNcCs:|dkr|}z"||}|�t|�|��|�Wdd}XdS)N)rr�encode)rr�encrF�expectedsizerrrr�basic_encode_testDszStrTest.basic_encode_testc	Csli|_x`tt�D]T}|�d�s qtt|�|�}y
|j}Wntk
rNwYnXt||_||j|<qWdS)NZtest_)	�	_adjusted�dirrrV�getattr�typer�AttributeErrorr�)r�nameZmethrrrr�setUpMs


z
StrTest.setUpcCs,x&|j��D]\}}|tt|�|�_qWdS)N)r��itemsr�r�r)rr�rrrr�tearDown\szStrTest.tearDownr!r)rrcCs|�|�dS)N)r)rrrrr�test_capitalize`szStrTest.test_capitalizecCs|�|�dS)N)r~)rrrrr�
test_titledszStrTest.test_titlecCs|�|�dS)N)r|)rrrrr�
test_swapcasehszStrTest.test_swapcasercCs|�|d�S)Nzutf-8)r�)rrrrr�test_encodeoszStrTest.test_encode�cCs&y|�|d�Stk
r YnXdS)NZraw_unicode_escape)r��MemoryError)rrrrr�test_encode_raw_unicode_escapessz&StrTest.test_encode_raw_unicode_escaperT�Fr
cCs&y|�|d�Stk
r YnXdS)N�utf7)r�r�)rrrrr�test_encode_utf7zszStrTest.test_encode_utf7r	cCs2y|j|dd|dd�Stk
r,YnXdS)N�utf32r	)r�)r�r�)rrrrr�test_encode_utf32�szStrTest.test_encode_utf32cCs|j|ddd�S)N�asciirI)rF)r�)rrrrr�test_encode_ascii�szStrTest.test_encode_asciircCs�d|}d|f}|�||k�~d|f}|�t|�t|�d�|�|�d��|�|�d��~~|d}d|}d�|d|g�}~|d	}|�t|�|dd
�|�|�d�d
�|�|�d�|d�dS)Nrz%sz..%s..r	z..-z-..rr0z...r!r)r'rrrVr(r2r$)rrrZsfr�rrr�test_format�s"

zStrTest.test_formatcCs�d|}t|�}|�t|�|d�|�|dd�|�|dd�|�|�d�|�~|dd}d|}t|�}|�t|�|dd�|�|dd�|�|dd�|�|�d	�|�|�|�d
�|d�dS)Nrrr�'r1rTr�r	�\r�)�reprrrr$)rrrrrr�test_repr_small�szStrTest.test_repr_smallcCstd|}t|�}|�t|�|dd�|�|dd�|�|dd�|�|�d�|�|�|�d�|d�dS)	Nr�r	rrr�r1r�r�)r�rrr$)rrrrrr�test_repr_large�szStrTest.test_repr_largecCs|d}||}z`xZttfD]N}||�}|�t|�dt||��d|�|�|�d�|dd��d}qWWdd}}XdS)Nu�rz\udcba'i����)r�r�rrr'r()rr�charr�f�rrrr�test_unicode_repr�s$zStrTest.test_unicode_reprcCs|d}||}z`xZttfD]N}||�}|�t|�dt||��d|�|�|�d�|dd��d}qWWdd}}XdS)Nu𝲺rz\U0001dcba'i�)r�r�rrr'r()rrr�rr�r�rrr�test_unicode_repr_wide�s$zStrTest.test_unicode_repr_widecCs|j}|d�}t|d��|d�t|d��|d�t|d��|d�i}t|�}||d}||}|�|�}|�t|�||�|�|d|�|�|��|�||d�|�|��|�|�|d��d	�|�|�|d��|d�|�|�|d
��|d�dS)Nz
aZz.z.Aaz.rrr&r�Z�$rrr@r!)r
�ordrr�rr$)rrrrr�r4rMrrrrr��s
zStrTest.test_translate)rN)r�r�r�r
r�r�r�rr�ucs4_char_sizer�r�r�r�r�rr�r�r�r�r�r�r��ucs2_char_sizer�r�r�rrrrr�?s&
	   $$$ (r�c@sleZdZdd�Zeedded�dd��Zeedd�dd	��Zeedd�d
d��Z	eedd�dd
��Z
dS)�	BytesTestcCs
|�d�S)Nzlatin-1)r�)rrrrrr
�szBytesTest.from_latin1rr)rrcCs(|�d�|}|�t|�d��|�dS)Nrzutf-8)r
rr�decode)rrrrrr�test_decodeszBytesTest.test_decodecCs|�|�dS)N)r)rrrrrr�szBytesTest.test_capitalizecCs|�|�dS)N)r~)rrrrrr�szBytesTest.test_titlecCs|�|�dS)N)r|)rrrrrr�szBytesTest.test_swapcaseN)r�r�r�r
rrr�r�r�r�r�rrrrr��s
r�c@steZdZdd�Zeedded�dd��Zeedd�dd	��Zeedd�d
d��Z	eedd�dd
��Z
dZdZdS)�
BytearrayTestcCst|�d��S)Nzlatin-1)�	bytearrayr�)rrrrrr
szBytearrayTest.from_latin1rr)rrcCs(|�d�|}|�t|�d��|�dS)Nrzutf-8)r
rrr�)rrrrrrr�szBytearrayTest.test_decodecCs|�|�dS)N)r)rrrrrr�szBytearrayTest.test_capitalizecCs|�|�dS)N)r~)rrrrrr�"szBytearrayTest.test_titlecCs|�|�dS)N)r|)rrrrrr�&szBytearrayTest.test_swapcaseN)
r�r�r�r
rrr�r�r�r�r�r�rurrrrr�sr�c@s�eZdZeededd�dd��Zdd�Zeeddedd�dd	��Zeededd�d
d��Z	eedd
edd�dd��Z
eed
ed�dd��Zeed
ed�dd��Zdd�Z
eeddedd�dd��Zeededd�dd��Zeeddd�dd��Zeededd�dd��Zeed edd�d!d"��Zd#d$�Zeed%deed%d�d&d'��Zeedeed%d�d(d)��Zd*S)+�	TupleTestr)rrcCsVd|}d|}|�||k�~d|d}|�||k�~d|}|�||k�dS)N)r0r)r)r'r))rr�t1�t2rrrr�8szTupleTest.test_comparecCs8d|}|�t|�|�||}|�t|�|d�dS)N)rr)rr)rr�trrr�basic_concat_testIszTupleTest.basic_concat_testr!cCs
|�|�S)N)r�)rrrrr�test_concat_smallOszTupleTest.test_concat_smallcCs
|�|�S)N)r�)rrrrr�test_concat_largeSszTupleTest.test_concat_largerTrcCsJd|}|�t|�|d�|�d|k�|�d|k�|�d|k�dS)N)rrr!r	rTrTr)rrr'r))rrr�rrrr�Ws
zTupleTest.test_containscCs4d|}t|�}~d|d}|�|t|�k�dS)N)rr)r�r))rrr�r�r�rrrr�_s
zTupleTest.test_hashcCs*d|}|�t|�|�|�|dd�|�|dd�|�||dd�|�ttj||�|�|dd�d�|�|dd�d�|�|dd�d�|�|d	d
�d�|�||dd�d�|�||d|�d�|�||d|d�d
�|�|||�d�|�|||d�d�dS)N)Nr1rTr)NNNNNr�r��i��i��r�r)NNNNr)rrr7r�r�r�)rrr�rrr�test_index_and_slicegszTupleTest.test_index_and_slicecCs8d|}|�t|�|�|d}|�t|�|d�dS)N)r0r)rr)rrr�rrr�basic_test_repeatzszTupleTest.basic_test_repeatcCs
|�|�S)N)r�)rrrrr�test_repeat_small�szTupleTest.test_repeat_smallcCs
|�|�S)N)r�)rrrrr�test_repeat_large�szTupleTest.test_repeat_larger�cCs
|�|�S)N)r�)rrrrr�test_repeat_large_2�szTupleTest.test_repeat_large_2cCshyttdg|��}Wntk
r*Yn:X|�t|�|�|�|dd�d�|�|dd�d�dS)N�*r)
r�r�r�r�r�r�r�r�r�r�i����)�tuple�iterr�rr)rrr�rrr�test_from_2G_generator�sz TupleTest.test_from_2G_generatorr�cCshyttdg|��}Wntk
r*Yn:X|�t|�|�|�|dd�d�|�|dd�d�dS)Nr�r)
r�r�r�r�r�r�r�r�r�r�i����)r�r�r�rr)rrr�rrr�test_from_almost_2G_generator�sz'TupleTest.test_from_almost_2G_generatorcCsPd|}t|�}|�t|�|d�|�|dd�d�|�|dd�d�dS)N)F�rz
(False, Fai����z
se, False))r�rr)rrr�rrrr�basic_test_repr�s
zTupleTest.basic_test_reprr�cCs
|�|�S)N)r�)rrrrrr��szTupleTest.test_repr_smallcCs
|�|�S)N)r�)rrrrrr��szTupleTest.test_repr_largeN)r�r�r�rrr�r�r�r�r�r�r�r�r�r�r�rr�r�r�r�r�r�r�rrrrr�-s    $r�c@s@eZdZeededd�dd��Zdd�Zeeddedd�dd	��Zeededd�d
d��Z	dd
�Z
eeddedddd�dd��Zeededddd�dd��Zeeddedd�dd��Z
eeded�dd��Zeeded�dd��Zdd�Zeeddedd�dd��Zeededd�d d!��Zd"d#�Zeeddedddd�d$d%��Zeededddd�d&d'��Zd(d)�Zeed*deed*d�d+d,��Zeedeed*d�d-d.��Zeeeddd�d/d0��Zeeddedd�d1d2��Zd3d4�Zeeddedddd�d5d6��Zeededddd�d7d8��Zeeddedd�d9d:��Zeededdd�d;d<��Z eedd=edd�d>d?��Z!eeded�d@dA��Z"eeddedd�dBdC��Z#eeddeddDd�dEdF��Z$dGS)H�ListTestr)rrcCs^dg|}dg|}|�||k�~dg|d}|�||k�~dg|}|�||k�dS)Nr0rr)r'r))rr�l1�l2rrrr��s


zListTest.test_comparecCs:gg|}|�t|�|�||}|�t|�|d�dS)Nr)rr)rrrprrr�basic_test_concat�s
zListTest.basic_test_concatr!cCs
|�|�S)N)r�)rrrrrr��szListTest.test_concat_smallcCs
|�|�S)N)r�)rrrrrr��szListTest.test_concat_largecCs`tjg|}||7}|�t|�|d�|�|d|dk�|�||d||dk�dS)Nrrr1r)�sys�stdoutrrr')rrrprrr�basic_test_inplace_concat�s
z"ListTest.basic_test_inplace_concat�	r
cCs
|�|�S)N)r�)rrrrr�test_inplace_concat_small�sz"ListTest.test_inplace_concat_smallcCs
|�|�S)N)r�)rrrrr�test_inplace_concat_large�sz"ListTest.test_inplace_concat_largerTrcCs^dddddg|}|�t|�|d�|�d|k�|�dddddg|k�|�d|k�dS)Nrrr!r	rTr)rrr'r))rrrprrrr��s
zListTest.test_containscCsdg|}|�tt|�dS)Nr)r7�	TypeErrorr�)rrrprrrr��s
zListTest.test_hashc
Cs*dg|}|�t|�|�|�|dd�|�|dd�|�||dd�|�ttj||�|�|dd�dgd�|�|dd�dgd�|�|dd�dgd�|�|dd�dgd�|�||dd�dgd�|�||d|�dgd�|�||d	|d
�dgd�|�|||�g�|�|||d�g�d||d
<|�t|�|�|�|dd�dddg�|�|�d�d�|�ttj||d	�|�t|�|�dd
d
ddg||dd�<|d
8}|�t|�|�|�|dd�dddd
d
ddg�dd
d
ddg|dd�<|d
8}|�t|�|�|�|dd�dd
d
ddddg�||d=|d8}|�t|�|�|�|dd�|dd�=|d
8}|�t|�|�|�|dd
�|d=|d8}|�t|�|�|�|dd
�|dd
�=|d
8}|�t|�|�|�|dd�dS)Nr1rTrr�r�r�i��i��r�rr	r�r!r�i�������r)rrr7r�r�r�r$�setitem)rrrprrrr��sZ
"""


zListTest.test_index_and_slicecCsLg|}|�|�dg|}|�t|�|�|d}|�t|�|d�dS)Nr0r)r)rr)rrrprrrr�/s

zListTest.basic_test_repeatcCs
|�|�S)N)r�)rrrrrr�7szListTest.test_repeat_smallcCs
|�|�S)N)r�)rrrrrr�;szListTest.test_repeat_largecCszdg}||9}|�t|�|�|�|d|dk�~dg|}|d9}|�t|�|d�|�||d|dk�dS)Nr0rr1rr)rrr')rrrprrr�basic_test_inplace_repeatAs
z"ListTest.basic_test_inplace_repeatcCs
|�|�S)N)r�)rrrrr�test_inplace_repeat_smallMsz"ListTest.test_inplace_repeat_smallcCs
|�|�S)N)r�)rrrrr�test_inplace_repeat_largeQsz"ListTest.test_inplace_repeat_largecCsddg|}t|�}|�t|�|d�|�|dd�d�|�|dd�d�|�|�d�|�dS)NFr�rz
[False, Fai����z
se, False]�F)r�rrr$)rrrprrrrr�Us
zListTest.basic_test_reprr�cCs
|�|�S)N)r�)rrrrrr�^szListTest.test_repr_smallcCs
|�|�S)N)r�)rrrrrr�bszListTest.test_repr_largecCs\t�g|}|�t��|�t|�|d�|�|d|dk�|�|d|dk�dS)Nrr�r�r1)�object�appendrrr'r))rrrprrr�test_appendhs
zListTest.test_appendcCs:dddddg|}|�|�d�|�|�|�d�d�dS)Nrrr!r	rT�1r)rr$)rrrprrrr%pszListTest.test_countcCs`tg|}|�|�|�t|�|d�|�|d|dk�|�||d||dk�dS)Nrrr1r)r��extendrrr')rrrprrr�basic_test_extendxs


zListTest.basic_test_extendcCs
|�|�S)N)r�)rrrrr�test_extend_smallszListTest.test_extend_smallcCs
|�|�S)N)r�)rrrrr�test_extend_large�szListTest.test_extend_largecCs�dddddg|}|d9}|�|�d�d�|�|�d|d�|d�|�|�d|d|�|d�|�t|jd|d|�|�t|jd�dS)Nrrr!r	rTrr�)rr6r7r8)rrrprrrr9�szListTest.test_indexcCs�dg|}|�|dd�|d7}|�t|�|�|�|dd�dddg�|�|dd�|d7}|�t|�|�|�|dd�dddg�|�dd�|d7}|�t|�|�|�|dd�dddg�|�||dd�dddg�dS)Ng�?rrIr��B�Cr!)�insertrr)rrrprrr�test_insert�s
zListTest.test_insertr	cCsdddddg|}|d9}|�t|�|�|��}|d8}|�t|�|�|�|d�|�|dd�ddg�|�d	�}|d8}|�t|�|�|�|d�|�|dd
�ddg�|�|d
�}|d8}|�t|�|�|�|d�|�|dd�ddg�dS)Nr&rUrF�d�erTrr�rr)rr�pop)rrrprrrrr�test_pop�s$
zListTest.test_popcCs�dg|}|�t|�|�|�d�|d8}|�t|�|�|�d�|d7}|�t|�|�|�|dd�ddg�|�d�|d8}|�t|�|�|�|dd�ddg�dS)NrrrTr�)rr�remover�)rrrprrr�test_remove�s



zListTest.test_removecCsndddddg|}|��|�t|�|d�|�|dd�dddddg�|�|dd�dddddg�dS)Nrrr!r	rTr�)�reverserr)rrrprrr�test_reverse�s
zListTest.test_reverseg�?cCsxdddddg|}|��|�t|�|d�|�|�d�|�|�|dd�dgd�|�|dd�dgd�dS)Nrrr!r	rTri����)�sortrrr$)rrrprrr�	test_sort�szListTest.test_sortN)%r�r�r�rrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r%r�r�rr9rrr
rrrrrrr��s< ($ 8 ($	$  ($    r�cCst�ttttt�dS)N)rZrun_unittestr�r�r�r�r�rrrr�	test_main�s
r�__main__)�__doc__ZtestrZtest.supportrrrrZunittestr�r�r�r�r��maxsizer�rZTestCaser�r�r�r�r�rr�r�argvZset_memlimitrrrr�<module>	s60|?1