Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/test/__pycache__/test_range.cpython-34.pyo

�
f f�[�@s�ddlZddlZddlZddlZddlZdd�Zdd�ZGdd�dej�Z	dd	�Z
ed
kr�e
�ndS)�NccsO|||dkrK||||7}x"||krG|V||7}q)WndS)Nr�)�start�stop�steprr�4/opt/alt/python34/lib64/python3.4/test/test_range.py�pyrange	s
rcCs+||||7}t|||||�S)N)r)rrrrrr�pyrange_reversedsrc@s?eZdZddd�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�ZdS)4�	RangeTestNc
Cs|dk	r3tj||�}tj||�}nt�}tj||d|�}x�t|�D]�\}\}}	||	kr�qaqa||kr�|jdj|||	��qa|	|kr�|jdj|||��qa|jdj|||	|��qaWdS)N�	fillvaluez;{}: iterator ended unexpectedly at position {}; expected {}z/{}: unexpected excess element {} at position {}z4{}: wrong element at position {};expected {}, got {})�	itertools�islice�object�zip_longest�	enumerateZfail�format)
�selfZxsZys�test_id�limit�sentinelZpairs�i�x�yrrr�assert_iterators_equals 	z RangeTest.assert_iterators_equalcCs�|jttd��dddg�|jttdd��ddddg�|jttd��g�|jttd��g�|jttddd��dddg�|jttddd��ddddg�d}d	}d
}|jtt||d��||dg�|jtt|d|d��|d|dg�|jtt|d|d��|d|dg�tt|||��}|j||�|j||�|jt|�d�tt|||��}|j||�|j||�|jt|�d�tt|||��}|j||�|j||�|jt|�d�|jtt�|jttdddd�|jttddd�|jttddd�|jttddd�|jttddd
�|jttddd�|jttdd�|jttddd�|jttdt	j
t	j
d��d�tt	j
t	j
d�}|jt|�t	j
�dS)N�r�����
��d�2gg@g�?g}Ô%�I�Tg\�n��T�spam�*������r$������r&���)�assertEqual�list�range�assertIn�assertNotIn�len�assertRaises�	TypeError�
ValueError�sys�maxsize)r�a�b�c�seq�rrrr�
test_range-sH%++.-44,zRangeTest.test_rangecCs�td
dd�}|jt|�d�|jtt|��d�tddd�}|jt|�d�|jtt|��d�tddd�}|jt|�d�|jtt|��d�tddd�}|jt|�d�|jtt|��d�|jttd��g�|jttdd��g�|jttddd��g�|jttddd��g�tdtj�}tdtj�}td	tj�}|jtt||d��||dg�|jtt|d|d ��|d|dg�|jtt|d|d!��|d|dg�tt|||��}|j||�|j||�|jt|�d�|j|d|�|j|d"||�tt|||��}|j||�|j||�|jt|�d�|j|d|�|j|d#||�tt|||��}|j||�|j||�|jt|�d�|j|d|�|j|d$||�dS)%Nr�rrrrr rr!l F�x:^Vl F�x:^Vl
 F�x:^Vl F�x:^Vl
 F�x:^Vl F�x:^Vl F�x:^Vl F�x:^Vl
 F�x:^Vr$l F�x:^Vl
 F�x:^Vl F�x:^Vr$ll����ll����lr&lr&r&r(r&r&r&)	r+r)r.r*�intr2r3r,r-)rrr4r5r6r7rrr�test_large_operands]sP""-44zRangeTest.test_large_operandsc3Cs�dd�}tj}tj}||}t||�}|j||�|j||�|jtt|�|j||�|�|j|d|�tjd}|j||||�|j|||d�d||�|jt	��||dWdQX|jt	��
||WdQXd}dtj}||}t||�}|j||�|j||�|jtt|�|j||�|�|j|d|�tjd}|j||||�|j|||d�d||�|jt	��||dWdQX|jt	��
||WdQXd}tjd}dtj}d|||}t|||�}|j||�|j||�|jtt|�|j||�|�|j|d|�tjd}|j|||||�|j|||d�d|||�|jt	��||dWdQX|jt	��
||WdQXtjd}d}dtj}d|||}t|||�}|j||�|j||�|jtt|�|j||�|�|j|d|�tjd}|j|||||�|j|||d�d|||�|jt	��||dWdQX|jt	��
||WdQXdS)NcSsUyt|�}Wn>tk
rP|d|d}d|d|d|}YnX|S)Nrrr&)r.�
OverflowError)rZlengthrrrr�
_range_len�s
z.RangeTest.test_large_range.<locals>._range_lenrrrrr()
r2r3r+r,r-r/r=r.r)�
IndexError)rr>r4r5Zexpected_lenr�idxr6rrr�test_large_range�s�
	

&


&


*


*zRangeTest.test_large_rangecCs�|jtt�|jttdddd�|jttddd�tdtj�}|jtt||dtd��|jttddd�|jttdd	d	�|jttdd
�|jttddd
�|jttd�|jttdd�|jttdd�|jttdd�|jttddd�|jttddd�|jttddd�|jttddd�|jttddd�|jttddd�|jttddd�dS)
Nrrrrrrg�?g}Ô%�I�Tg\�n��Tr"r#g)r/r0r+r1r;r2r3)rr4rrr�test_invalid_invocation�s(#z!RangeTest.test_invalid_invocationcs5td�}|j|jd�d�|j|jd�d�|jt|jd�tdd�}|j|jd�d�|j|jd�d�|jt|j�Gdd�dt��G�fdd�d�}td	�}|j�|j|��tdd�}|j|jd�d�|jtdd
d�jd	�d�|jtddd�jd�d�|jtd�jd�d�|jtd�jd�d�|jttddd�jd�|jtddd�jd!�d"�Gdd�dt�}|�}|jtd
�j|�d�dS)#Nrrrrc@seZdZdS)z$RangeTest.test_index.<locals>.BadExcN)�__name__�
__module__�__qualname__rrrr�BadExcsrFcs"eZdZ�fdd�ZdS)z$RangeTest.test_index.<locals>.BadCmpcs|dkr���ndS)NrFr)r�other)rFrr�__eq__sz+RangeTest.test_index.<locals>.BadCmp.__eq__N)rCrDrErHr)rFrr�BadCmpsrIrrrr:r �W�Vc@seZdZdd�ZdS)z)RangeTest.test_index.<locals>.AlwaysEqualcSsdS)NTr)rrGrrrrHsz0RangeTest.test_index.<locals>.AlwaysEqual.__eq__N)rCrDrErHrrrr�AlwaysEqualsrLr(r(i����r$r%l F�x:^Vl F�x:^Vl F�x:^Vl�F�x:^Vl F�x:^Vl�F�x:^Vllllll)	r+r)�indexr/r1�countr0�	Exceptionr
)r�urIr4rL�always_equalr)rFr�
test_index�s.%%"%	zRangeTest.test_indexcCsldtj}d}Gdd�d�}|jtt||�||d���|g�|jtt||�||d���|g�Gdd�d�}|jtt|��Gdd	�d	�}|jtt|��|jtd
�d|d��td��|jt��tdd
�d|��WdQX|jt��tdd
�d|��WdQXdS)
Nrr#c@s(eZdZdd�Zdd�ZdS)z+RangeTest.test_user_index_method.<locals>.IcSst|�|_dS)N)r;�n)rrSrrr�__init__'sz4RangeTest.test_user_index_method.<locals>.I.__init__cSs|jS)N)rS)rrrr�	__index__)sz5RangeTest.test_user_index_method.<locals>.I.__index__N)rCrDrErTrUrrrr�I&srVrc@seZdZdd�ZdS)z,RangeTest.test_user_index_method.<locals>.IXcSs
t�dS)N)�RuntimeError)rrrrrU0sz6RangeTest.test_user_index_method.<locals>.IX.__index__N)rCrDrErUrrrr�IX/srXc@seZdZdd�ZdS)z,RangeTest.test_user_index_method.<locals>.INcSsdS)Nznot a numberr)rrrrrU6sz6RangeTest.test_user_index_method.<locals>.IN.__index__N)rCrDrErUrrrr�IN5srYrrr)r2r3r)r*r+r/rWr0)rZbignumZsmallnumrVrXrYrrr�test_user_index_method!s
22, z RangeTest.test_user_index_methodcCs�|jtd�jd�d�|jtd�jd�d�|jtd�jd�d�|jtd�jd�d�|jtd�jd�d�|jttd�jd��t�|jttd�jd��t�|jtd
�jd�d�|jtd�jd�d�|jtd�jd�d�|jtddd�jd�d�|jtddd�jd�d�Gd	d
�d
t�}|�}|jtd�j|�d�|jttt	j
t	j
d��d�dS)Nrrrrrr:r rJc@seZdZdd�ZdS)z)RangeTest.test_count.<locals>.AlwaysEqualcSsdS)NTr)rrGrrrrHSsz0RangeTest.test_count.<locals>.AlwaysEqual.__eq__N)rCrDrErHrrrrrLRsrLr&r&l F�x:^Vl F�x:^Vl F�x:^Vlllll)r)r+rN�assertIs�typer;rMr
r.r2r3)rrLrQrrr�
test_countDs %%%%	zRangeTest.test_countcCsa|jttd��d�|jttdd��d�|jttddd��d�dS)Nrzrange(0, 1)rzrange(1, 2)rzrange(1, 2, 3))r)�reprr+)rrrr�	test_reprZszRangeTest.test_reprcCs�dddddddg}x�ttjd�D]s}xj|D]b}|jd|d
|��Bt|�}|jttjtj||���t|��WdQXq<Wq/WdS)N�
r��rr:rr�r�A�proto�test)r`)rra���)rgrr&)r:rr&)r`rcrr()r(rr� l � )rhri)r+�pickle�HIGHEST_PROTOCOLZsubTestr)r*�loads�dumps)r�	testcasesre�tr8rrr�
test_pickling_s
$zRangeTest.test_picklingcCs?dd
dddddg}xttjd�D]}x�|D]�}tt|��}}tt|��}tj||�}tj|�}|jt|�t|��|jt|�|�tj|�}yt	|�Wnt
k
r�w<YnXtj||�}tj|�}|jt|�|dd��q<Wq/WdS)Nr`rrarbrr:rrrcrrd)r`)rra���)rqrr&)r:rr&)r`rcrr()r(rr� l � )rrrs)r+rjrk�iterr*rmrlr)r\�next�
StopIteration)rrnrero�itZitorg�data�drrr�test_iterator_picklingis$

z RangeTest.test_iterator_picklingcCs�x�ttjd�D]�}tdd�}t|�}x t|�}|dkr8Pq8q8Wtj||�}tj|�}|jt|�g�|jt|�g�qWdS)	Nrrrdl l l l l )	r+rjrkrtrurmrlr)r*)rrer8rry�i2rrr� test_exhausted_iterator_picklingsz*RangeTest.test_exhausted_iterator_picklingcCs�x�ttjd�D]�}td�}t|�}x t|�}|dkr5Pq5q5Wtj||�}tj|�}|jt|�g�|jt|�g�qWdS)Nrr:�)	r+rjrkrtrurmrlr)r*)rrer8rryr{rrr�&test_large_exhausted_iterator_pickling�sz0RangeTest.test_large_exhausted_iterator_picklingcCs*|jt��tgdd�WdQXdS)Nrr&)r/r0r+)rrrr�test_odd_bug�szRangeTest.test_odd_bugcCs|jdtd��|jdtd��|jdtd��Gdd�d�}|j|�td��Gdd	�d	�}|j|�td��|jt|��td��Gd
d�dt�}|j|d�td
��|j|d�ttd
���dS)Ng�?rTryc@seZdZdd�ZdS)z RangeTest.test_types.<locals>.C1cSsdS)NTr)rrGrrrrH�sz'RangeTest.test_types.<locals>.C1.__eq__N)rCrDrErHrrrr�C1�sr�c@s(eZdZdd�Zdd�ZdS)z RangeTest.test_types.<locals>.C2cSsdS)Nrr)rrrr�__int__�sz(RangeTest.test_types.<locals>.C2.__int__cSsdS)Nrr)rrrrrU�sz*RangeTest.test_types.<locals>.C2.__index__N)rCrDrEr�rUrrrr�C2�sr�c@seZdZdd�ZdS)z RangeTest.test_types.<locals>.C3cSsdS)NTr)rrGrrrrH�sz'RangeTest.test_types.<locals>.C3.__eq__N)rCrDrErHrrrr�C3�sr�rary�?)r,r+r-r;r*)rr�r�r�rrr�
test_types�szRangeTest.test_typescCs
tddd�}|jd|�|jd|�|jd|�|jd|�|jd|�|jd|�tdd
d�}|jd|�|jd|�|jd
|�|jd|�tddd�}|jd|�|jd|�|jd|�dS)Nr�err�cr r:r}�i��r&r&i��i��i��r(i��i��i��)r+r,r-)rr8rrr�test_strided_limits�s zRangeTest.test_strided_limitscCsotd�}|jd|�|jd|�tdd�}|jd|�|jd|�|jd|�dS)Nrrri����r&)r+r-)rr8rrr�
test_empty�szRangeTest.test_emptycs�dd�d
D���fdd��D�}x�|D]�\}}}t|||�}t|||�}dj|||�}|j|||dd	�tt|||��}t|||�}d
j|||�}|j|||dd	�q3WdS)NcSsMg|]C}||dd|d|fD]}dD]}||�q3q)qS)rrrr(r&)r(r&rrrr)�.0�M�baseZjigglerrr�
<listcomp>�s	#z2RangeTest.test_range_iterators.<locals>.<listcomp>r� �@c	s9g|]/}�D]"}d
D]}|||f�qqqS)r�?�rl���l��r(r&)r�r�r(r&rrr)r�r�endr)�limitsrrr��s	
zrange({}, {}, {})rr zreversed(range({}, {}, {}))��)r�r�)r+rrr�reversedr)r�test_rangesrr�rZiter1Ziter2rr)r�r�test_range_iterators�s	

zRangeTest.test_range_iteratorscs�d��fdd�}x�td�td�tddd�tddd
�ttjdtjd�gD]t�|dd	�|dd
�|dd	�|d
d�|dd�|ddd	�|dd�|ddd�qiWdS)Ncsdt|||�}�jt�|�t��|��jt�|�tt��|��dS)N)�slicer)r*r.)rrrr)r8rrr�check�s$z#RangeTest.test_slice.<locals>.checkrrr�	r�rr:�r r$i��i��r&r&r&r$r&)r+r2r3)rr�r)r8rr�
test_slice�s	$





zRangeTest.test_slicecCstd�}|jd|�|jd|�|jd|�|jd|�|jd	|�|jd|�|jd|�tdd
d�}|jd|�|jd|�|jd|�|jd|�|jd|�|jd|�|jd|�tddd�}|jd|�|jd|�|jd|�|jd|�|jd
|�|jd|�|jd|�tddd�}|jd|�|jd|�|jd|�|jd|�|jd|�|jd|�|jd|�dS)Nrrrg@gffffff@�r�rr&r&r&r&r&r&r(r&)r+r,r-)rr8rrr�
test_containss@zRangeTest.test_containscCs�x�td�td�tddd�tddd�ttjdtjd�gD]5}|jtt|��t|�ddd��qQWdS)	Nrrrr�rr�r$r&)r+r2r3r)r*r�)rr8rrr�test_reverse_iteration&s	$z RangeTest.test_reverse_iterationcCs�ttddd�jd��}dddddddd
ddddddd	dd
dh}xH|D]@}x7|D]/}x&|dhD]}||||�q�WqqWqdWdS)Nrr�rr:rrr}rcr�r�r&r(r%i��i��i��i��i����)r+r��indices)rr8�valuesr�j�krrr�test_issue11845/s!

zRangeTest.test_issue11845cs�td�tdd�tddd�td�tdd�tddd�tddd�td�tddd�tddd�tddd�g�ttt�����fd	d
��D�}�fdd
��D�}|j||��fdd
��D�}|j|d
d
�|D��xJ�D]B}x9�D]1}||kr4|jt|�t|��q4q4Wq'W|jtd�fkd�|jftd�kd�|jtd�ddgkd�|jtddd�tddd��|jttddd��ttddd���|jtddd�tddd��|jtdd d!�td"d#d$��|jttd%d(d)��ttd*d+d,���|jtd-d.d/�td0d2d3��|jt	��td�td�kWdQX|jt	��td�td�kWdQX|jt	��td�td�kWdQX|jt	��td�td�kWdQXdS)4Nrrrr�rrrcs)g|]}�D]}||k�qqSrr)r�r4r5)r�rrr�As	z-RangeTest.test_comparison.<locals>.<listcomp>cs)g|]}�D]}||k�qqSrr)r�r4r5)�test_tuplesrrr�Bs	cs)g|]}�D]}||k�qqSrr)r�r4r5)r�rrr�Fs	cSsg|]
}|�qSrr)r�rrrrr�Gs	Fr ����r�r&ll�������lll�������lllll l@ll~������?ll l@ll l@ll~������?ll l@ll l@ll l@l@l)
r+r*�map�tupler)�hashr[ZassertNotEqualr/r0)rZ	ranges_eqZ	tuples_eqZ	ranges_ner4r5r)r�r�r�test_comparison8sJ$$'$

'"zRangeTest.test_comparisoncCs�|jtd�ddd�|jtd�ddd�|jtd�ddd�|jtddd�ddd�|jtddd�ddd�|jtddd�ddd�|jtddd	�ddd
�dS)Nrrrri����i����r&r&r$r$)�assert_attrsr+)rrrr�test_attributesms"""zRangeTest.test_attributesc&Cs�|j|j|�|j|j|�|j|j|�|jt��d|_WdQX|jt��d|_WdQX|jt��d|_WdQX|jt��|`WdQX|jt��|`WdQX|jt��|`WdQXdS)Nrrr)r)rrrr/�AttributeError)rZrangeobjrrrrrrr�wszRangeTest.assert_attrs)rCrDrErr9r<rArBrRrZr]r_rprzr|r~rr�r�r�r�r�r�r�r�r�r�r�rrrrr	s204P(#



"		5
r	cCstjjt�dS)N)rfZsupportZrun_unittestr	rrrr�	test_main�sr��__main__)Ztest.supportrfZunittestr2rjrrrZTestCaser	r�rCrrrr�<module>s	��u