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_bisect.cpython-310.pyc

o

0�i�>�@srddlZddlZddlmZddlmZejddgd�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(kr�e��dSdS))�N)�
import_helper)�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�7/opt/alt/python310/lib64/python3.10/test/test_bisect.py�__init__s
zRange.__init__cCs|j|jSr)rr�r
rrr�__len__sz
Range.__len__cCs6|j|j}|dkr||7}||krt|��|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@sneZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zddd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�
TestBisectcCsg|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�ddf�|_dS)N�r�)rrr�)rrrr�g�?)rrrr�rrrg@)
rrrrrrrrrr�g@�
�)�module�bisect_right�bisect_left�precomputedCasesrrrr�setUp!s:��������	�
���
������������������� �!�"�#�$�%�&�'�)�*�+�,�-�.�/�0�1�2�3�4�5�6�7�8�9�:�;�<�=�>�?�@�A�B�C�D�E�F�G�H�I�J�K�L�M�N�O
�zTestBisect.setUpcCs@|jD]\}}}}|�|||�|�|�|t|�|�|�qdSr)r&�assertEqualr)r
�func�data�elem�expectedrrr�test_precomputedts�zTestBisect.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_loys
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]c}��fdd�t|�D�}|���d�d�}|j�||�}|t|�kr9|�|||k�|dkrH|�||d|k�|j�||�}|t|�kr^|�|||k�|dkrm|�||d|k�q
dS)Nr)�	randrangecsg|]}�d�d��qS)rrr)�.0�j�rr?rr�
<listcomp>�sz*TestBisect.test_random.<locals>.<listcomp>r.r)	�randomr?r7�sortr#r%�len�
assertTruer$)r
r�ir*r+�iprrBr�test_random�s"��zTestBisect.test_randomcCs6|jD]�\}}}}td�D]�}tt|�|�}tdd�D]{}tt|�|�}|||||�}|�||ko6|kn�||jjurM||krM|�|||k�||jjurb||krb|�||d|k�||jjuru||kru|�|||k�||jjur�||kr�|�||d|k�|�|t	|t||���qq
qdS)Nrr�r)
r&r7�minrFrGr#r%r$r(�max)r
r)r*r+r,�lo�hirIrrr�test_optionalSlicing�s&���zTestBisect.test_optionalSlicingcC�|�|jj|jj�dSr)r(r#rr$rrrr�test_backcompatibility��z!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<rNrOr)r!rTr>r>r>rUrVr:)r(r#r%r$rr1r2�insort)r
r*rrr�test_keyword_args�szTestBisect.test_keyword_argscCs�|j}t}tgd�|d�}tt||��}|D]"}|�|j|||d�|�||��|�|j|||d�|�||��qtj	}td|d�}tt||��}|D]"}|�|j|||d�|�||��|�|j|||d�|�||��qKdS)N)r���r rK�����keyZaBcDeEfgHhiIiij)
r#�abs�sorted�list�mapr(r%r$�str�casefold)r
r3�keyfuncZarrZprecomputed_arrr<rrr�test_lookups_with_key_function�s4
�
�
�
��z)TestBisect.test_lookups_with_key_functioncCs�ddlm}|j}t}ttdd��ttddd��}||�g}|D]}|j|||d�|�t||d�|�q"g}|D]}|j	|||d�|�t||d�|�q;dS)	Nr)�shuffler[�i��rTrr\)
rDrfr#r^r`r7r1r(r_r2)r
rfr3rdr*�targetr<rrr�test_insort�s(
�
��zTestBisect.test_insortcCs<g}ddd�}|jj|jjfD]}|jt|||dd�qdS)Nrr)rW�brjr\)r#r1r2r/�	TypeError)r
r<�y�frrr�test_insort_keynotNones

�z!TestBisect.test_insort_keynotNoneN)r>)rrrr'r-r4r8r=rJrPrRrYrerirnrrrrr sS


!rc@�eZdZeZdS)�TestBisectPythonN�rrr�	py_bisectr#rrrrrp
�rpc@ro)�TestBisectCN�rrr�c_bisectr#rrrrrt
rsrtc@s&eZdZd	dd�Zdd�Zdd�ZdS)
�
TestInsort��cCslddlm}t�t�fD]'}t|�D]}|d�}|dvr!|jj}n|jj}|||�q|�t	|�|�qdS)Nr)�choice�
0123456789Z02468)
rDryr`rr7r#r1r2r(r_)r
rryZinsortedrH�digitrmrrr�test_vsBuiltinSorts
�zTestInsort.test_vsBuiltinSortcCrQr)r(r#rXr2rrrrrRrSz!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#�r~r!r")r`r#r1r2r(r*)r
r~Zlstrrr�test_listDerived"s
zTestInsort.test_listDerivedN)rx)rrrr|rRr�rrrrrws
rwc@ro)�TestInsortPythonNrqrrrrr�-rsr�c@ro)�TestInsortCNrurrrrr�0rsr�c@�eZdZdZdd�ZdS)�LenOnlyz:Dummy sequence class defining __len__ but not __getitem__.cC�dS�Nr!rrrrrr7�zLenOnly.__len__N)rrrrrrrrrr�5rr�c@r�)�GetOnlyz:Dummy sequence class defining __getitem__ but not __len__.cCr�r�r)r
Zndxrrrr<r�zGetOnly.__getitem__N)rrrrrrrrrr�:rr�c@s,eZdZdZdd�ZeZeZeZeZeZ	dS)�CmpErrz;Dummy element that always raises an error during comparisoncCst�r)�ZeroDivisionError)r
�otherrrr�__lt__Ar�z
CmpErr.__lt__N)
rrrrr��__gt__�__le__�__ge__�__eq__�__ne__rrrrr�?sr�c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TestErrorHandlingcCs6|jj|jj|jj|jjfD]
}|�t|dd�qdSr��r#r%r$r1r2r/rk�r
rmrrr�test_non_sequenceJs
��z#TestErrorHandling.test_non_sequencecC�8|jj|jj|jj|jjfD]}|�t|t�d�qdSr�)r#r%r$r1r2r/rkr�r�rrr�
test_len_onlyO�
��zTestErrorHandling.test_len_onlycCr�r�)r#r%r$r1r2r/rkr�r�rrr�
test_get_onlyTr�zTestErrorHandling.test_get_onlycCsFt�t�t�g}|jj|jj|jj|jjfD]
}|�t||d�qdSr�)r�r#r%r$r1r2r/r�)r
�seqrmrrr�test_cmp_errYs��zTestErrorHandling.test_cmp_errcCs4|jj|jj|jj|jjfD]	}|�t|d�qdSr�r�r�rrr�test_arg_parsing_s
��z"TestErrorHandling.test_arg_parsingN)rrrr�r�r�r�r�rrrrr�Isr�c@ro)�TestErrorHandlingPythonNrqrrrrr�drsr�c@ro)�TestErrorHandlingCNrurrrrr�grsr�c@seZdZdd�Zdd�ZdS)�TestDocExamplecs<gd�df�fdd�	��fdd�dD�}��|gd��dS)	N)�<�F�P�ZZFDCBAcs�j�||�}||Sr)r#r)�scoreZbreakpointsZgradesrHrrr�gradensz)TestDocExample.test_grades.<locals>.gradecsg|]}�|��qSrr)r@r�)r�rrrCr�z.TestDocExample.test_grades.<locals>.<listcomp>)�!�c�Mr��Yr�r9)�F�A�Cr��Br�r�)r()r
�resultr)r�r
r�test_gradesmszTestDocExample.test_gradescCs�gd�}|jdd�d�dd�|D�}|jj}|�|||d�d�|�|||d	�d
�|�|||d�d�|�|||d
�d�dS)N)�Zredr"�Zbluer�ZyellowrK�ZblackrcSs|dS)Nrr)�rrrr�<lambda>wsz,TestDocExample.test_colors.<locals>.<lambda>r\cSsg|]}|d�qS)rr)r@r�rrrrCxr�z.TestDocExample.test_colors.<locals>.<listcomp>rr�rr�r"r�rKr�)rEr#r%r()r
r*�keysr%rrr�test_colorsuszTestDocExample.test_colorsN)rrrr�r�rrrrr�lsr�c@ro)�TestDocExamplePythonNrqrrrrr�rsr�c@ro)�TestDocExampleCNrurrrrr��rsr��__main__)r5ZunittestZtest.supportr�collectionsrZimport_fresh_modulerrrv�objectrrZTestCaserprtrwr�r�r�r�r�r�r�r�r�r�r�r�mainrrrr�<module>s4k
�