Your IP : 216.73.217.129


Current Path : /opt/alt/python39/lib64/python3.9/test/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/test/__pycache__/test_bisect.cpython-39.pyc

a

XC?h�6�@spddlZddlZddlmZddlmZejddgd�Zejddgd�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(k�rle��dS))�N)�support)�UserList�bisectZ_bisect)Zblocked)Zfreshc@s0eZdZdZdd�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/python39/lib64/python3.9/test/test_bisect.py�__init__szRange.__init__cCs|j|jSr)rr�r
rrr�__len__sz
Range.__len__cCs6|j|j}|dkr||7}||kr,t|��|j|S)Nr)rr�
IndexError)r
�idx�nrrr�__getitem__szRange.__getitem__cCs||f|_dSr)r	)r
r�itemrrr�insertszRange.insertN)�__name__�
__module__�__qualname__�__doc__r
rrrrrrrr	s
rc@sVeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zddd
�Zdd�Z	dd�Z
dd�ZdS)�
TestBisectcQCsr|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�dd
f|jjgd�dd
f|jjgd�ddf|jjgd�ddf|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd	�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd
�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�ddf|jjgd�dd
f|jjgd�dd
f|jjgd�ddfgN|_dS)N�r�)rrr�)rrrr�g�?)rrrr�rrrg@)
rrrrrrrrrr�g@�
�)�module�bisect_right�bisect_left�precomputedCasesrrrr�setUp s��zTestBisect.setUpcCs@|jD]4\}}}}|�|||�|�|�|t|�|�|�qdSr)r&�assertEqualr)r
�func�data�elem�expectedrrr�test_precomputedsszTestBisect.test_precomputedcCsr|j}|�t|jgd�ddd�|�t|jgd�ddd�|�t|jgd�ddd�|�t|jgd�ddd�dS)Nrr"���r)r#�assertRaises�
ValueErrorr%r$�insort_left�insort_right)r
�modrrr�test_negative_loxs
zTestBisect.test_negative_locCs�|j}tj}t|d�}|�|�||d�|d�|�|�||d�|d�|�|�||d|d|�|d�|�|�||d|d|�|d�dS)Nrrrr!)r#�sys�maxsize�ranger(r%r$)r
r3rr*rrr�test_large_range�s$zTestBisect.test_large_rangecCs|j}tj}td|d�}|�|�||d�|d�|�|�||d�|d�|�|�||d|d|�|d�|�|�||d|d|�|d�|d}|�|||d|d�|�|j||f�|d}|�	|||d|d�|�|j|d|f�dS)	Nrrrrr!�d�2��)
r#r5r6rr(r%r$r1r	r2)r
r3rr*�xrrr�test_large_pyrange�s$$zTestBisect.test_large_pyrange�cs�ddlm�t��D]�}��fdd�t|�D�}|���d�d�}|j�||�}|t|�krr|�|||k�|dkr�|�||d|k�|j�||�}|t|�kr�|�|||k�|dkr|�||d|k�qdS)Nr)�	randrangecsg|]}�d�d��qS)rrr)�.0�j�rr?rr�
<listcomp>��z*TestBisect.test_random.<locals>.<listcomp>r.r)	�randomr?r7�sortr#r%�len�
assertTruer$)r
r�ir*r+�iprrBr�test_random�szTestBisect.test_randomcCs>|jD�]0\}}}}td�D�]}tt|�|�}tdd�D]�}tt|�|�}|||||�}|�||kop|kn�||jjur�||kr�|�|||k�||jjur�||kr�|�||d|k�||jjur�||kr�|�|||k�||jju�r||k�r|�||d|k�|�|t	|t||���q:qqdS)Nrr�r)
r&r7�minrGrHr#r%r$r(�max)r
r)r*r+r,�lo�hirJrrr�test_optionalSlicing�s zTestBisect.test_optionalSlicingcCs|�|jj|jj�dSr)r(r#rr$rrrr�test_backcompatibility�sz!TestBisect.test_backcompatibilitycCs�gd�}|�|jj|dddd�d�|�|jj|dddd�d�|�|jj|dddd�d�|jj|dddd�|jj|dddd�|jj|dddd�|�|gd��dS)N)r!���(r:r>rr)�ar<rOrPr)r!rSr>r>r>rTrUr:)r(r#r%r$rr1r2�insort)r
r*rrr�test_keyword_args�szTestBisect.test_keyword_argsN)r>)rrrr'r-r4r8r=rKrQrRrXrrrrrsS

rc@seZdZeZdS)�TestBisectPythonN�rrr�	py_bisectr#rrrrrY�srYc@seZdZeZdS)�TestBisectCN�rrr�c_bisectr#rrrrr\�sr\c@s&eZdZd	dd�Zdd�Zdd�ZdS)
�
TestInsort��cCslddlm}t�t�fD]N}t|�D]0}|d�}|dvrB|jj}n|jj}|||�q$|�t	|�|�qdS)Nr)�choice�
0123456789Z02468)
rEra�listrr7r#r1r2r(�sorted)r
rraZinsortedrI�digit�frrr�test_vsBuiltinSort�s
zTestInsort.test_vsBuiltinSortcCs|�|jj|jj�dSr)r(r#rWr2rrrrrR�sz!TestInsort.test_backcompatibilitycCsHGdd�dt�}|�}|j�|d�|j�|d�|�ddg|j�dS)Nc@seZdZgZdd�ZdS)z)TestInsort.test_listDerived.<locals>.ListcSs|j�||�dSr)r*r)r
�indexrrrrr�sz0TestInsort.test_listDerived.<locals>.List.insertN)rrrr*rrrrr�List�srir!r")rcr#r1r2r(r*)r
riZlstrrr�test_listDerived�s
zTestInsort.test_listDerivedN)r`)rrrrgrRrjrrrrr_�s
r_c@seZdZeZdS)�TestInsortPythonNrZrrrrrk�srkc@seZdZeZdS)�TestInsortCNr]rrrrrl�srlc@seZdZdZdd�ZdS)�LenOnlyz:Dummy sequence class defining __len__ but not __getitem__.cCsdS�Nr!rrrrrr�szLenOnly.__len__N)rrrrrrrrrrm�srmc@seZdZdZdd�ZdS)�GetOnlyz:Dummy sequence class defining __getitem__ but not __len__.cCsdSrnr)r
Zndxrrrr�szGetOnly.__getitem__N)rrrrrrrrrro�sroc@s,eZdZdZdd�ZeZeZeZeZeZ	dS)�CmpErrz;Dummy element that always raises an error during comparisoncCst�dSr)�ZeroDivisionError)r
�otherrrr�__lt__sz
CmpErr.__lt__N)
rrrrrs�__gt__�__le__�__ge__�__eq__�__ne__rrrrrp�srpc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TestErrorHandlingcCs6|jj|jj|jj|jjfD]}|�t|dd�qdSrn�r#r%r$r1r2r/�	TypeError�r
rfrrr�test_non_sequence
s�z#TestErrorHandling.test_non_sequencecCs8|jj|jj|jj|jjfD]}|�t|t�d�qdSrn)r#r%r$r1r2r/r{rmr|rrr�
test_len_onlys�zTestErrorHandling.test_len_onlycCs8|jj|jj|jj|jjfD]}|�t|t�d�qdSrn)r#r%r$r1r2r/r{ror|rrr�
test_get_onlys�zTestErrorHandling.test_get_onlycCsFt�t�t�g}|jj|jj|jj|jjfD]}|�t||d�q,dSrn)rpr#r%r$r1r2r/rq)r
�seqrfrrr�test_cmp_errs
�zTestErrorHandling.test_cmp_errcCs4|jj|jj|jj|jjfD]}|�t|d�qdSrnrzr|rrr�test_arg_parsings�z"TestErrorHandling.test_arg_parsingN)rrrr}r~rr�r�rrrrry	s
ryc@seZdZeZdS)�TestErrorHandlingPythonNrZrrrrr�$sr�c@seZdZeZdS)�TestErrorHandlingCNr]rrrrr�'sr�c@seZdZdd�Zdd�ZdS)�TestDocExamplecs<gd�df�fdd�	��fdd�dD�}��|gd��dS)	N)�<�F�P�ZZFDCBAcs�j�||�}||Sr)r#r)�scoreZbreakpointsZgradesrIrrr�grade.sz)TestDocExample.test_grades.<locals>.gradecsg|]}�|��qSrr)r@r�)r�rrrC2rDz.TestDocExample.test_grades.<locals>.<listcomp>)�!�c�Mr��Yr�r9)�F�A�Cr��Br�r�)r()r
�resultr)r�r
r�test_grades-szTestDocExample.test_gradescCs�gd�}|jdd�d�dd�|D�}|jj}|�|||d�d�|�|||d	�d
�|�|||d�d�|�|||d
�d�dS)N)�Zredr"�Zbluer�ZyellowrL�ZblackrcSs|dS)Nrr)�rrrr�<lambda>7rDz,TestDocExample.test_colors.<locals>.<lambda>)�keycSsg|]}|d�qS)rr)r@r�rrrrC8rDz.TestDocExample.test_colors.<locals>.<listcomp>rr�rr�r"r�rLr�)rFr#r%r()r
r*�keysr%rrr�test_colors5szTestDocExample.test_colorsN)rrrr�r�rrrrr�,sr�c@seZdZeZdS)�TestDocExamplePythonNrZrrrrr�?sr�c@seZdZeZdS)�TestDocExampleCNr]rrrrr�Bsr��__main__)r5Zunittest�testr�collectionsrZimport_fresh_moduler[r^�objectrrZTestCaserYr\r_rkrlrmrorpryr�r�r�r�r�r�mainrrrr�<module>s0,