Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/test/__pycache__/test_range.cpython-310.opt-1.pyc

o

0�i�b�@sfddlZddlZddlZddlZddlmZdd�Zdd�ZGdd�dej�Z	e
d	kr1e��dSdS)
�N)�	ALWAYS_EQccsL�|||dkr"||||7}||kr$|V||7}||ksdSdSdS)Nr���start�stop�steprr�6/opt/alt/python310/lib64/python3.10/test/test_range.py�pyrange
s���r	cCs&||||7}t|||||�S�N)r	rrrr�pyrange_reversedsrc@s�eZdZd:dd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�ZdS);�	RangeTestNc
	Cs�|durt�||�}t�||�}t�}tj|||d�}t|�D]4\}\}}	||	kr*q||kr9|�d�|||	��q|	|krH|�d�|||��q|�d�|||	|��qdS)N)�	fillvaluez;{}: iterator ended unexpectedly at position {}; expected {}z/{}: unexpected excess element {} at position {}z5{}: wrong element at position {}; expected {}, got {})�	itertools�islice�object�zip_longest�	enumerateZfail�format)
�selfZxsZys�test_id�limitZsentinelZpairs�i�x�yrrr�assert_iterators_equals(
�
���z RangeTest.assert_iterators_equalcCs�|�ttd��gd��|�ttdd��gd��|�ttd��g�|�ttd��g�|�ttddd��gd	��|�ttdd
d��gd��d}d}d
}|�tt||d��||dg�|�tt|d|d��|d|dg�|�tt|d|d��|d|dg�tt|||��}|�||�|�||�|�t|�d�tt|||��}|�||�|�||�|�t|�d�tt|||��}|�||�|�||�|�t|�d�|�tt�|�ttdddd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�|�ttdd�|�ttddd�|�ttdt	j
t	j
d��d�tt	j
t	j
d�}|�t|�t	j
�dS)N�)r��r�)rrr�r����
)rr����)rr�������d�2rr$r����g@��?�}Ô%�I�T�\�n��T�spam�*)�assertEqual�list�range�assertIn�assertNotIn�len�assertRaises�	TypeError�
ValueError�sys�maxsize)r�a�b�c�seq�rrrr�
test_range.sH"(( zRangeTest.test_rangecCsv|�td��t�Wd�n1swY|�td��tdddddd�Wd�dS1s4wYdS)	Nz)range expected at least 1 argument, got 0z)range expected at most 3 arguments, got 6rrrrr�)ZassertRaisesRegexr6r1�rrrr�%test_range_constructor_error_messages^s���"�z/RangeTest.test_range_constructor_error_messagescCs�tddd�}|�t|�d�|�tt|��d�tddd�}|�t|�d�|�tt|��d�|�|�tddd�}|�t|�d�|�tt|��d�|�|�tddd�}|�t|�d�|�tt|��d�|�|�tdd�tddd�tdddd	�fD]}|�t|�g�|�|�q�td
tj�}tdtj�}tdtj�}|�tt||d��||dg�|�tt|d|d	��|d|dg�|�tt|d|d
��|d|dg�tt|||��}|�	||�|�
||�|�t|�d�|�|d|�|�|d	||�tt|||��}|�	||�|�
||�|�t|�d�|�|d|�|�|d	||�tt|||��}|�	||�|�
||�|�t|�d�|�|d|�|�|d	||�dS)N� F�x:^Vl
 F�x:^Vrrrr rr&r$r!r'rr()r1r/r4r0ZassertFalse�
assertTrue�intr8r9r2r3)rrr:r;r<r=rrr�test_large_operandsksZ


�"((zRangeTest.test_large_operandscCs�dd�}tj}tj}||}t||�}|�||�|�||�|�tt|�|�|�|�	||�|�|�	|d|�tjd}|�	||||�|�	|||d�d||�|�t
��||dWd�n1srwY|�t
��||Wd�n1s�wYd}dtj}||}t||�}|�||�|�||�|�tt|�|�|�|�	||�|�|�	|d|�tjd}|�	||||�|�	|||d�d||�|�t
��||dWd�n1s�wY|�t
��||Wd�n	1�swYd}tjd}dtj}d|||}t|||�}|�||�|�||�|�tt|�|�|�|�	||�|�|�	|d|�tjd}|�	|||||�|�	|||d�d|||�|�t
��||dWd�n	1�s�wY|�t
��||Wd�n	1�s�wYtjd}d}dtj}d|||}t|||�}|�||�|�||�|�tt|�|�|�|�	||�|�|�	|d|�tjd}|�	|||||�|�	|||d�d|||�|�t
��||dWd�n	1�s6wY|�t
��
||Wd�dS1�sQwYdS)NcSsLzt|�}W|Sty%|d|d}d|d|d|}Y|Sw)Nrrr$)r4�
OverflowError)rZlengthrrrr�
_range_len�s
��z.RangeTest.test_large_range.<locals>._range_lenrrrr!r()r8r9r1r2r3r5rGr4rDr/�
IndexError)rrHr:r;Zexpected_lenr�idxr<rrr�test_large_range�s�


 �
�



 �
�



$�
�



$�
$�zRangeTest.test_large_rangecCs`|�tt�|�ttdddd�|�ttddd�tdtj�}|�tt||dtd��|�ttddd�|�ttdd	d	�|�ttdd
�|�ttddd
�|�ttd�|�ttdd�|�ttdd�|�ttdd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�|�ttddd�dS)
Nrrrrrr!r*r+r,r-r.r))r5r6r1r7rEr8r9)rr:rrr�test_invalid_invocation�s(z!RangeTest.test_invalid_invocationcs�td�}|�|�d�d�|�|�d�d�|�t|jd�tdd�}|�|�d�d�|�|�d�d�|�t|j�Gdd�dt��G�fdd	�d	�}td
�}|��|j|��tdd�}|�|�d�d�|�tddd��d
�d�|�tddd
��d�d�|�td��d�d�|�td��d�d�|�ttdddd�jdd�|�tdddd��ddd�dd�|�td��t�d�dS)Nrrrr(rc@seZdZdS)z$RangeTest.test_index.<locals>.BadExcN)�__name__�
__module__�__qualname__rrrr�BadExcsrPcseZdZ�fdd�ZdS)z$RangeTest.test_index.<locals>.BadCmpcs|dkr���dS)NrFr�r�other�rPrr�__eq__sz+RangeTest.test_index.<locals>.BadCmp.__eq__N�rMrNrOrTrrSrr�BadCmpsrVrr!���r r#rCl�F�x:^Vr&�W�V)	r1r/�indexr5r7�countr6�	Exceptionr)r�urVr:rrSr�
test_indexs*

 *zRangeTest.test_indexcCsBdtj}d}Gdd�d�}|�tt||�||d���|g�|�tt||�||d���|g�Gdd�d�}|�tt|��Gdd	�d	�}|�tt|��|�td
�d|d��td��|�t��tdd
�d|��Wd�n1szwY|�t��tdd
�d|��Wd�dS1s�wYdS)
Nrr.c@�eZdZdd�Zdd�ZdS)z+RangeTest.test_user_index_method.<locals>.IcSst|�|_dSr
)rE�n)rr`rrr�__init__:sz4RangeTest.test_user_index_method.<locals>.I.__init__cSs|jSr
)r`rArrr�	__index__<sz5RangeTest.test_user_index_method.<locals>.I.__index__N)rMrNrOrarbrrrr�I9srcrc@�eZdZdd�ZdS)z,RangeTest.test_user_index_method.<locals>.IXcSst�r
)�RuntimeErrorrArrrrbC�z6RangeTest.test_user_index_method.<locals>.IX.__index__N�rMrNrOrbrrrr�IXB�rhc@rd)z,RangeTest.test_user_index_method.<locals>.INcS�dS)Nznot a numberrrArrrrbIrfz6RangeTest.test_user_index_method.<locals>.IN.__index__Nrgrrrr�INHrirkr!rr)r8r9r/r0r1r5rer6)rZbignumZsmallnumrcrhrkrrr�test_user_index_method4s 
$$ �"�z RangeTest.test_user_index_methodcCsd|�td��d�d�|�td��d�d�|�td��d�d�|�td��d�d�|�td��d�d�|�ttd��d��t�|�ttd��d��t�|�td��d�d�|�td��d�d�|�td��d�d�|�tdddd��dd�d�|�tdddd��ddd�d�|�td	��t�d	�|�ttt	j
t	j
d	��d	�dS)
Nrr$rrrrCr&rXr!)r/r1r[�assertIs�typerErZrr4r8r9rArrr�
test_countWs"&"zRangeTest.test_countcCsF|�ttd��d�|�ttdd��d�|�ttddd��d�dS)Nrzrange(0, 1)rzrange(1, 2)rzrange(1, 2, 3))r/�reprr1rArrr�	test_repriszRangeTest.test_reprcCs�dddddddddddfg}ttjd	�D]3}|D].}|j||d
��t|�}|�tt�t�||���t|��Wd�n1sEwYqqdS)N��
�r��i��r!��rr$�rs�r�r(rrr�Ar)�proto�test)r1�pickle�HIGHEST_PROTOCOL�subTestr/r0�loads�dumps)r�	testcasesr}�tr>rrr�
test_picklingns������zRangeTest.test_picklingc	Cs�gd�}dD]?}||d|dfd|d|df|d|ddf|d|dfdd|dfdd|fd|d|dfd||fg7}qttjd�D]{}|D]v}|j||d	��ett|��}}tt|��}t�||�}t�|�}|�t	|�t	|��|�t|�|�t�|�}zt
|�Wnty�YWd�qQwt�||�}t�|�}|�t|�|dd��Wd�n1s�wYqQqMdS)
N)rrrtrvrwryr{)llrrrrr(r$)r}r�)r1rr�r��iterr0r�r�r/rn�next�
StopIteration)	rr��Mr}r��itZitorg�data�drrr�test_iterator_picklingxs>  �

�
����z RangeTest.test_iterator_picklingc	Cs�ttjd�D]P}|j|d��@ttd��}|��\}}}|�|d�|�d�|��\}}}|�|d�t�||�}t�	|�}|�t
|�d�Wd�n1sRwYqdS)Nr)r}lrl)r1rr�r�r��
__reduce__r/�__setstate__r�r�r�)rr}r��_rJr�rrr�(test_iterator_pickling_overflowing_index�s

���z2RangeTest.test_iterator_pickling_overflowing_indexcCs�ttjd�D];}tddddd�}t|�}	t|�}|dddkr&nqt�||�}t�|�}|�t|�g�|�t|�g�qdS)Nrrr|�	r1rr�r�r�r�r�r/r0�rr}r>rr�Zi2rrr� test_exhausted_iterator_pickling�s�
�z*RangeTest.test_exhausted_iterator_picklingcCstttjd�D]0}td�}t|�}	t|�}|dkrnqt�||�}t�|�}|�t|�g�|�t|�g�qdS)NrrxT�r�r�rrr�&test_large_exhausted_iterator_pickling�s�
�z0RangeTest.test_large_exhausted_iterator_picklingcCs<|�t��tgdd�Wd�dS1swYdS)Nrr$)r5r6r1rArrr�test_odd_bug�s"�zRangeTest.test_odd_bugcCs�|�dtd��|�dtd��|�dtd��|�ttd��Gdd�d�}|�|�td��|�t|��td��Gdd�dt�}|�|d	�td
��|�|d	�ttd
���dS)Nr*rTy�?c@r_)z RangeTest.test_types.<locals>.C2cSrj�NrrrArrr�__int__��z(RangeTest.test_types.<locals>.C2.__int__cSrjr�rrArrrrb�r�z*RangeTest.test_types.<locals>.C2.__index__N)rMrNrOr�rbrrrr�C2�sr�c@rd)z RangeTest.test_types.<locals>.C3cSrj)NTrrQrrrrT�r�z'RangeTest.test_types.<locals>.C3.__eq__NrUrrrr�C3�rir�rur!)r2r1rr3rEr0)rr�r�rrr�
test_types�szRangeTest.test_typescCs�tddd�}|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�tddd�}|�d|�|�d|�|�d	|�|�d|�tddd
�}|�d|�|�d	|�|�d|�dS)Nr�err�cr&���r$���r(i���r1r2r3�rr>rrr�test_strided_limits�s zRangeTest.test_strided_limitscCsRtd�}|�d|�|�d|�tdd�}|�d|�|�d|�|�d|�dS)NrrrWr$)r1r3r�rrr�
test_empty�s
zRangeTest.test_emptycs�dd�dD���fdd��D�}|D]?\}}}t|||�}t|||�}d�|||�}|j|||dd�tt|||��}t|||�}d�|||�}|j|||dd�qdS)	NcSs>g|]}||dd|d|fD]}dD]}||�qqqS)rr)r(r$rrrr)�.0r��baseZjigglerrr�
<listcomp>�s���z2RangeTest.test_range_iterators.<locals>.<listcomp>)llcs*g|]}�D]}dD]}|||f�q
qqS))l����i�r(r$rrr)r�r�endr�Zlimitsrrr�s���zrange({}, {}, {})r&)rzreversed(range({}, {}, {})))r1r	rr�reversedr)r�test_rangesrr�rZiter1Ziter2rrr�r�test_range_iterators�s �
��zRangeTest.test_range_iteratorscCsLtttd���}|�t|ddd�tttdd>���}|�t|ddd�dS)Nrrri�)rnr�r1r5r6)rZrangeiter_typeZlong_rangeiter_typerrr�test_range_iterators_invocationsz)RangeTest.test_range_iterators_invocationcs�d��fdd�	}td�td�tddd�tddd	�ttjdtjd�fD],�|dd
�|dd�|dd
�|dd�|d
d�|ddd
�|dd�|dd	d�q$dS)NcsLt|||�}��t�|�t��|���t�|�tt��|��dSr
)�slicer/r0r4)rrrr�r>rrr�checks$z#RangeTest.test_slice.<locals>.checkr!rr�	r�r rrx����r�r$r&r
)r1r8r9)rr�rr�r�
test_slices 

�





�zRangeTest.test_slicecCs�td�}|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�tddd�}|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�tddd	�}|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�tddd
�}|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�|�d|�dS)Nr!rrg@gffffff@r$�r�rr(r�r�rrr�
test_contains.s@zRangeTest.test_containscCsdtd�td�tddd�tddd�ttjdtjd�fD]}|�tt|��t|�ddd��qdS)	Nr!rrr�rr�r r$)r1r8r9r/r0r�r�rrr�test_reverse_iterationPs

�$�z RangeTest.test_reverse_iterationcCsTttddd��d��}hd�}|D]}|D]}|dhD]	}||||�qqqdS)Nr�rrx>rrrr�r�ri��r�r�r�rxrzr$r�Nr#i����r(r)r1r��indices)rr>�valuesr�j�krrr�test_issue11845Ys���zRangeTest.test_issue11845csftd�tdd�tddd�td�tdd�tddd�tddd�td�tdd	d�tddd�tddd�g�ttt�����fd
d��D�}�fdd��D�}|�||��fd
d��D�}|�|dd�|D���D]}�D]}||krz|�t|�t|��qjqf|�td�dkd�|�dtd�kd�|�td�ddgkd�|�tddddd�tdddd��|�ttddddd��ttdddd���|�tdddd�tddddd��|�tdddddddd�tdddddd��|�ttdddddddd��ttdddddd���|�tdddddd�tddddddd��|�t	��td�td�kWd�n	1�sQwY|�t	��td�td�kWd�n	1�sowY|�t	��td�td�kWd�n	1�s�wY|�t	��td�td�kWd�dS1�s�wYdS)Nrr$rrrr@rr"rc�g|]}�D]}||k�qqSrr�r�r:r;�r�rrr�k�z-RangeTest.test_comparison.<locals>.<listcomp>cr�rrr�)�test_tuplesrrr�lr�csg|]}�D]}||k�qqSrrr�r�rrr�pr�cSsg|]}|�qSrr)r�rrrrr�qsrFr&����r�)
r1r0�map�tupler/�hashrmZassertNotEqualr5r6)rZ	ranges_eqZ	tuples_eqZ	ranges_ner:r;r)r�r�r�test_comparisonbsd������"�&�����$�zRangeTest.test_comparisoncCs�|�td�ddd�|�td�ddd�|�td�ddd�|�tddd�ddd�|�tddd�ddd�|�tddd�ddd�|�tddd�ddd�|�td�ddd�|�td	d�ddd�|�td	dd�ddd�dS)
Nrrr!rWrr$r TF)�assert_attrsr1rArrr�test_attributes�szRangeTest.test_attributescCs�|�|j|�|�|j|�|�|j|�|�t|j�t�|�t|j�t�|�t|j�t�|�t��d|_Wd�n1sCwY|�t��d|_Wd�n1s[wY|�t��d|_Wd�n1sswY|�t��
|`Wd�n1s�wY|�t��
|`Wd�n1s�wY|�t��|`Wd�dS1s�wYdS)Nrr!r)	r/rrrrmrnrEr5�AttributeError)rZrangeobjrrrrrrr��s0�����"�zRangeTest.assert_attrsr
)rMrNrOrr?rBrFrKrLr^rlrorqr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrs:
0
8U$#




"		5
r�__main__)Zunittestr8rrZtest.supportrr	rZTestCaserrM�mainrrrr�<module>s 	'�