Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/test_bisect.cpython-34.pyo

�
g f�6�@sddlZddlZddlmZddlmZejdddg�Zejdddg�ZGdd	�d	e	�Z
Gd
d�d�ZGdd
�d
eej�Z
Gdd�deej�ZGdd�d�ZGdd�deej�ZGdd�deej�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�deej�ZGd d!�d!eej�ZGd"d#�d#�ZGd$d%�d%eej�ZGd&d'�d'eej�Zed(kr�ej�ndS))�N)�support)�UserList�bisectZblockedZ_bisectZfreshc@sFeZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�Rangez:A trivial range()-like object that has an insert() method.cCs||_||_d|_dS)N)�start�stop�last_insert)�selfrr�r
�5/opt/alt/python34/lib64/python3.4/test/test_bisect.py�__init__s		zRange.__init__cCs|j|jS)N)rr)r	r
r
r�__len__sz
Range.__len__cCsO|j|j}|dkr)||7}n||krDt|��n|j|S)Nr)rr�
IndexError)r	�idx�nr
r
r�__getitem__s
zRange.__getitem__cCs||f|_dS)N)r)r	r�itemr
r
r�insertszRange.insertN)�__name__�
__module__�__qualname__�__doc__rr
rrr
r
r
rr	s
rc@seZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zddd
�Zdd�Z	dd�Z
dd�ZdS)�
TestBisectcXCsu
|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
d	df|jjddddddddddg
dd
f|jjddddddddddg
dd
f|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjddddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjdddgddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
ddf|jjddddddddddg
d	df|jjddddddddddg
ddf|jjddddddddddg
dd
fgN|_dS)N�r���g�?g@�g@�
�)�module�bisect_right�bisect_left�precomputedCases)r	r
r
r�setUp s�!!!!!!!!333333333!!!!!!!!33333333zTestBisect.setUpcCs\xU|jD]J\}}}}|j|||�|�|j|t|�|�|�q
WdS)N)r#�assertEqualr)r	�func�data�elem�expectedr
r
r�test_precomputedsszTestBisect.test_precomputedcCs�|j}|jt|jdddgddd�|jt|jdddgddd�|jt|jdddgddd�|jt|jdddgddd�dS)	Nrrrr���r+r+r+)r �assertRaises�
ValueErrorr"r!�insort_left�insort_right)r	�modr
r
r�test_negative_loxs
	(((zTestBisect.test_negative_locCs�|j}tj}t|d�}|j|j||d�|d�|j|j||d�|d�|j|j||d|d|�|d�|j|j||d|d|�|d�dS)Nrrrr)r �sys�maxsize�ranger%r"r!)r	r0rr'r
r
r�test_large_range�s		$$.zTestBisect.test_large_rangecCsS|j}tj}td|d�}|j|j||d�|d�|j|j||d�|d�|j|j||d|d|�|d�|j|j||d|d|�|d�|d}|j|||d|d�|j|j||f�|d}|j	|||d|d�|j|j|d|f�dS)	Nrrrrr�d�2��)
r r2r3rr%r"r!r.rr/)r	r0rr'�xr
r
r�test_large_pyrange�s		$$..

zTestBisect.test_large_pyrange�cs@ddlm�x)t��D]}��fdd�t|�D�}|j��d�d�}|jj||�}|t|�kr�|j|||k�n|dkr�|j||d|k�n|jj||�}|t|�kr|j|||k�n|dkr|j||d|k�qqWdS)Nr)�	randrangecs"g|]}�d�d��qS)rrr
)�.0�j)rr<r
r�
<listcomp>�s	z*TestBisect.test_random.<locals>.<listcomp>rr+)	�randomr<r4�sortr r"�len�
assertTruer!)r	r�ir'r(�ipr
)rr<r�test_random�s"
zTestBisect.test_randomc
Cs�x�|jD]�\}}}}x�td�D]�}tt|�|�}xntdd�D]]}tt|�|�}|||||�}|j||ko�|kn�||jjkr�||kr�|j|||k�n||jjkr||kr|j||d|k�n||jjkrS||krS|j|||k�n||jjkr�||kr�|j||d|k�n|j|t	|t||���qTWq)Wq
WdS)Nrr�r)
r#r4�minrBrCr r"r!r%�max)r	r&r'r(r)�lo�hirEr
r
r�test_optionalSlicing�s #zTestBisect.test_optionalSlicingcCs |j|jj|jj�dS)N)r%r rr!)r	r
r
r�test_backcompatibility�sz!TestBisect.test_backcompatibilityc
CsCdddddg}|j|jjd|ddd	d
dd�d
�|j|jjd|ddd	d
dd�d
�|j|jjd|ddd	d
dd�d
�|jjd|ddd	d
dd�|jjd|ddd	d
dd�|jjd|ddd	d
dd�|j|ddddddddg�dS)Nr���(r7�ar9r;rJrrKrr)r%r r"r!rr.r/�insort)r	r'r
r
r�test_keyword_args�s111%%%zTestBisect.test_keyword_argsN)rrrr$r*r1r5r:rFrLrMrSr
r
r
rrsS
rc@seZdZeZdS)�TestBisectPythonN)rrr�	py_bisectr r
r
r
rrT�srTc@seZdZeZdS)�TestBisectCN)rrr�c_bisectr r
r
r
rrV�srVc@s7eZdZddd�Zdd�Zdd�ZdS)	�
TestInsorti�cCs�ddlm}x�t�t�fD]s}xTt|�D]F}|d�}|dkrc|jj}n|jj}|||�q6W|jt	|�|�q#WdS)Nr)�choice�
0123456789Z02468)
r@rY�listrr4r r.r/r%�sorted)r	rrYZinsortedrD�digit�fr
r
r�test_vsBuiltinSort�szTestInsort.test_vsBuiltinSortcCs |j|jj|jj�dS)N)r%r rRr/)r	r
r
rrM�sz!TestInsort.test_backcompatibilitycCsbGdd�dt�}|�}|jj|d�|jj|d�|jddg|j�dS)Nc@s"eZdZgZdd�ZdS)z)TestInsort.test_listDerived.<locals>.ListcSs|jj||�dS)N)r'r)r	�indexrr
r
rr�sz0TestInsort.test_listDerived.<locals>.List.insertN)rrrr'rr
r
r
r�List�srarr)r[r r.r/r%r')r	raZlstr
r
r�test_listDerived�s
	zTestInsort.test_listDerivedN)rrrr_rMrbr
r
r
rrX�srXc@seZdZeZdS)�TestInsortPythonN)rrrrUr r
r
r
rrc�srcc@seZdZeZdS)�TestInsortCN)rrrrWr r
r
r
rrd�srdc@s"eZdZdZdd�ZdS)�LenOnlyz:Dummy sequence class defining __len__ but not __getitem__.cCsdS)Nrr
)r	r
r
rr
�szLenOnly.__len__N)rrrrr
r
r
r
rre�srec@s"eZdZdZdd�ZdS)�GetOnlyz:Dummy sequence class defining __getitem__ but not __len__.cCsdS)Nrr
)r	Zndxr
r
rr�szGetOnly.__getitem__N)rrrrrr
r
r
rrf�srfc@s@eZdZdZdd�ZeZeZeZeZeZ	dS)�CmpErrz;Dummy element that always raises an error during comparisoncCs
t�dS)N)�ZeroDivisionError)r	�otherr
r
r�__lt__sz
CmpErr.__lt__N)
rrrrrj�__gt__�__le__�__ge__�__eq__�__ne__r
r
r
rrg�srgc@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TestErrorHandlingcCsOxH|jj|jj|jj|jjfD]}|jt|dd�q+WdS)Nr)r r"r!r.r/r,�	TypeError)r	r^r
r
r�test_non_sequence
sz#TestErrorHandling.test_non_sequencecCsRxK|jj|jj|jj|jjfD]}|jt|t�d�q+WdS)Nr)r r"r!r.r/r,rqre)r	r^r
r
r�
test_len_onlyszTestErrorHandling.test_len_onlycCsRxK|jj|jj|jj|jjfD]}|jt|t�d�q+WdS)Nr)r r"r!r.r/r,rqrf)r	r^r
r
r�
test_get_onlyszTestErrorHandling.test_get_onlycCsgt�t�t�g}xH|jj|jj|jj|jjfD]}|jt||d�qCWdS)Nr)rgr r"r!r.r/r,rh)r	�seqr^r
r
r�test_cmp_errszTestErrorHandling.test_cmp_errcCsLxE|jj|jj|jj|jjfD]}|jt|d�q+WdS)Nr)r r"r!r.r/r,rq)r	r^r
r
r�test_arg_parsingsz"TestErrorHandling.test_arg_parsingN)rrrrrrsrtrvrwr
r
r
rrp	s
rpc@seZdZeZdS)�TestErrorHandlingPythonN)rrrrUr r
r
r
rrx$srxc@seZdZeZdS)�TestErrorHandlingCN)rrrrWr r
r
r
rry'sryc@s(eZdZdd�Zdd�ZdS)�TestDocExamplec	s{ddddgd�fdd���fdd	�d
dddd
ddgD�}�j|dddddddg�dS)N�<�F�P�ZZFDCBAcs�jj||�}||S)N)r r)�scoreZbreakpointsZgradesrD)r	r
r�grade.sz)TestDocExample.test_grades.<locals>.gradecsg|]}�|��qSr
r
)r=r)r�r
rr?2s	z.TestDocExample.test_grades.<locals>.<listcomp>�!�c�M�Yr6�F�A�C�B)r%)r	�resultr
)r�r	r�test_grades-s$.zTestDocExample.test_gradescCs�ddddg}|jd	d
d��dd
�|D�}|jj}|j|||d�d�|j|||d�d�|j|||d�d�|j|||d�d�dS)N�redr�bluer�yellowrG�blackr�keycSs|dS)Nrr
)�rr
r
r�<lambda>7sz,TestDocExample.test_colors.<locals>.<lambda>cSsg|]}|d�qS)rr
)r=r�r
r
rr?8s	z.TestDocExample.test_colors.<locals>.<listcomp>)r�r)r�r)r�rG)r�r)r�r)r�r)r�r)r�rG)rAr r"r%)r	r'�keysr"r
r
r�test_colors5szTestDocExample.test_colorsN)rrrr�r�r
r
r
rrz,srzc@seZdZeZdS)�TestDocExamplePythonN)rrrrUr r
r
r
rr�?sr�c@seZdZeZdS)�TestDocExampleCN)rrrrWr r
r
r
rr�Bsr��__main__)r2ZunittestZtestr�collectionsrZimport_fresh_modulerUrW�objectrrZTestCaserTrVrXrcrdrerfrgrprxryrzr�r�r�mainr
r
r
r�<module>s.�