HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/test/__pycache__/test_timeit.cpython-37.pyc
B

��g2;�@s�ddlZddlZddlZddlZddlmZddlmZddlmZdZ	dZ
Gdd�d�ZGd	d
�d
ej�Z
edkr|e��dS)�N)�dedent)�captured_stdout)�captured_stderri@B�c@s:eZdZdZddd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�	FakeTimergE@��?cCsd|_d|_||_|t_dS)Nr)�count�setup_calls�seconds_per_increment�timeit�_fake_timer)�selfr
�r�,/usr/local/lib/python3.7/test/test_timeit.py�__init__szFakeTimer.__init__cCs|j|j|jS)N)�	BASE_TIMErr
)r
rrr�__call__szFakeTimer.__call__cCs|jd7_dS)N�)r)r
rrr�inc!sz
FakeTimer.inccCs|jd7_dS)Nr)r	)r
rrr�setup$szFakeTimer.setupcCs
||_|S)z3Records 'timer' and returns self as callable timer.)Zsaved_timer)r
�timerrrr�
wrap_timer'szFakeTimer.wrap_timerN)r)	�__name__�
__module__�__qualname__rrrrrrrrrrrs
rc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dZ
dZdd�Zdd�Z
didd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zdjd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Z d<Z!dkd>d?�Z"d@dA�Z#dBdC�Z$dDdE�Z%dFdG�Z&dHdI�Z'dJdK�Z(dLdM�Z)dNdO�Z*dPdQ�Z+e,�-e.j/j0dRkdS�dTdU��Z1dVdW�Z2dXdY�Z3dZd[�Z4d\d]�Z5d^d_�Z6dldadb�Z7dcdd�Z8dedf�Z9dgdh�Z:dS)m�
TestTimeitcCs"yt`Wntk
rYnXdS)N)rr�AttributeError)r
rrr�tearDown.szTestTimeit.tearDowncCs,|�t�dd�d�|�t�dd�d�dS)N�r�)�assertEqualr�reindent)r
rrr�test_reindent_empty4szTestTimeit.test_reindent_emptycCs,|�t�dd�d�|�t�dd�d�dS)N�passrr)r rr!)r
rrr�test_reindent_single8szTestTimeit.test_reindent_singlecCs,|�t�dd�d�|�t�dd�d�dS)Nz

rrz

    
    )r rr!)r
rrr�test_reindent_multi_empty<sz$TestTimeit.test_reindent_multi_emptycCs,|�t�dd�d�|�t�dd�d�dS)Nzprint()
pass
breakrrzprint()
    pass
    break)r rr!)r
rrr�test_reindent_multi@szTestTimeit.test_reindent_multicCs�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�dS)N)�stmt�return�yieldz
yield from ()�break�continuezfrom timeit import *)�assertRaises�
ValueErrorr�Timer�SyntaxError)r
rrr�test_timer_invalid_stmtHsz"TestTimeit.test_timer_invalid_stmtcCs�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�|jttjdd�dS)N)rr(r)z
yield from ()r*r+zfrom timeit import *)r,r-rr.r/)r
rrr�test_timer_invalid_setupQsz#TestTimeit.test_timer_invalid_setupz(import timeit
timeit._fake_timer.setup()z&import timeit
timeit._fake_timer.inc()cCs|j��dS)N)�
fake_timerr)r
rrr�fake_callable_setup]szTestTimeit.fake_callable_setupcCs|j��dS)N)r2r)r
rrr�fake_callable_stmt`szTestTimeit.fake_callable_stmtNcCsrt�|_tj|||j|d�}i}|dkr.t}n||d<|jf|�}|�|jjd�|�|jj|�|�||�dS)N)r'rr�globals�numberr)rr2rr.�DEFAULT_NUMBERr r	r)r
r'rr6r5�t�kwargs�
delta_timerrrrcszTestTimeit.timeitcCs|j|j|jdd�dS)Nr)r6)r�	fake_stmt�
fake_setup)r
rrr�test_timeit_zero_itersusz!TestTimeit.test_timeit_zero_iterscCs|j|j|jdd�dS)N�)r6)rr;r<)r
rrr�test_timeit_few_itersxsz TestTimeit.test_timeit_few_iterscCs|j|j|jdd�dS)Nr>)r6)rr4r<)r
rrr�test_timeit_callable_stmt{sz$TestTimeit.test_timeit_callable_stmtcCs|j|j|jdd�dS)Nr>)r6)rr;r3)r
rrr�test_timeit_callable_setup~sz%TestTimeit.test_timeit_callable_setupcCs|j|j|jdd�dS)Nr>)r6)rr4r3)r
rrr�#test_timeit_callable_stmt_and_setup�sz.TestTimeit.test_timeit_callable_stmt_and_setupcCs(tj|j|jdt�d�}|�|d�dS)Nr)r6r)rr;r<rr )r
r:rrr�test_timeit_function_zero_iters�s
z*TestTimeit.test_timeit_function_zero_iterscCsXt�atjdtd�}|jt|jdd�tjdtt�dd�t�}tjd|t�dd�dS)Nz_global_timer.inc())r'rr>)r6)r'rr5r6zlocal_timer.inc())rZ
_global_timerrr.r,�	NameErrorr5�locals)r
r8Zlocal_timerrrr�test_timeit_globals_args�sz#TestTimeit.test_timeit_globals_argscCs�t�|_tj|||jd�}i}|dkr,t}n||d<|dkrBt}n||d<|jf|�}|�|jj|�|�|jj	||�|�||t
|�g�dS)N)r'rr�repeatr6)rr2rr.�DEFAULT_REPEATr7rGr r	r�float)r
r'rrGr6r8r9�delta_timesrrrrG�szTestTimeit.repeatcCs|j|j|jdd�dS)Nr)rG)rGr;r<)r
rrr�test_repeat_zero_reps�sz TestTimeit.test_repeat_zero_repscCs|j|j|jdd�dS)Nr)r6)rGr;r<)r
rrr�test_repeat_zero_iters�sz!TestTimeit.test_repeat_zero_iterscCs|j|j|jddd�dS)Nr>r)rGr6)rGr;r<)r
rrr�test_repeat_few_reps_and_iters�sz)TestTimeit.test_repeat_few_reps_and_iterscCs|j|j|jddd�dS)Nr>r)rGr6)rGr4r<)r
rrr�test_repeat_callable_stmt�sz$TestTimeit.test_repeat_callable_stmtcCs|j|j|jddd�dS)Nr>r)rGr6)rGr;r3)r
rrr�test_repeat_callable_setup�sz%TestTimeit.test_repeat_callable_setupcCs|j|j|jddd�dS)Nr>r)rGr6)rGr4r3)r
rrr�#test_repeat_callable_stmt_and_setup�sz.TestTimeit.test_repeat_callable_stmt_and_setupcCs(tj|j|jdt�d�}|�|g�dS)Nr)rGr)rrGr;r<rr )r
rJrrr�test_repeat_function_zero_reps�s
z)TestTimeit.test_repeat_function_zero_repscCs.tj|j|jdt�d�}|�|tdg�dS)Nr)r6rg)rrGr;r<rr rH)r
rJrrr�test_repeat_function_zero_iters�s
z*TestTimeit.test_repeat_function_zero_iterscCsD|��}|�t|�d�|�|d�d��|�|d�|��dS)N�rZ	Traceback���)�
splitlinesZ
assertGreater�lenZ
assertTrue�
startswith)r
Z
exc_stringZexpected_exc_nameZ	exc_linesrrr�assert_exc_string�szTestTimeit.assert_exc_stringcCsJt��}t�d�}y|��Wn|�|�YnX|�|��d�dS)Nz1/0�ZeroDivisionError)�io�StringIOrr.�	print_excrX�getvalue)r
�sr8rrr�test_print_exc�s
zTestTimeit.test_print_excz"1 loop, best of 5: 1 sec per loop
��?c	Cs�|dkrt|d�}|dkr g}n|dd�}|�|j�tjdd�}t��}tj||jd�WdQRX|dd�tjdd�<|�	�S)N)r
)�argsZ_wrap_timer)
r�appendr;�sys�pathrr�mainrr])r
r
�switchesrraZ
orig_sys_pathr^rrr�run_main�s
zTestTimeit.run_maincCs"|jdgd�}|�|td��dS)Nz--bad-switch)rfzk            option --bad-switch not recognized
            use -h/--help for command line help
            )rgr r)r
r^rrr�test_main_bad_switch�szTestTimeit.test_main_bad_switchcCs|jdd�}|�|d�dS)Ng@)r
z$1 loop, best of 5: 5.5 sec per loop
)rgr )r
r^rrr�test_main_seconds�szTestTimeit.test_main_secondscCs|jdd�}|�|d�dS)Ng�I+�v?)r
z'50 loops, best of 5: 5.5 msec per loop
)rgr )r
r^rrr�test_main_millisecondssz!TestTimeit.test_main_millisecondscCs |jddgd�}|�|d�dS)Ng�h㈵��>z-n100)r
rfz(100 loops, best of 5: 2.5 usec per loop
)rgr )r
r^rrr�test_main_microsecondssz!TestTimeit.test_main_microsecondscCs |jddgd�}|�|d�dS)Ng@z-n35)r
rfz$35 loops, best of 5: 2 sec per loop
)rgr )r
r^rrr�test_main_fixed_iterssz TestTimeit.test_main_fixed_iterscCs,|jddddgd�}|�|dtd�dS)Ng@z-n35z-szprint("CustomSetup"))r
rfzCustomSetup
z$35 loops, best of 5: 2 sec per loop
)rgr rH)r
r^rrr�test_main_setupszTestTimeit.test_main_setupcCs0|jddddddgd�}|�|dtd�dS)	Ng@z-n35z-sza = "CustomSetup"zprint(a))r
rfzCustomSetup
z$35 loops, best of 5: 2 sec per loop
)rgr rH)r
r^rrr�test_main_multiple_setupssz$TestTimeit.test_main_multiple_setupscCs |jddgd�}|�|d�dS)NgN@z-r9)r
rfz#1 loop, best of 9: 60 sec per loop
)rgr )r
r^rrr�test_main_fixed_repsszTestTimeit.test_main_fixed_repscCs |jddgd�}|�|d�dS)NgN@z-r-5)r
rfz#1 loop, best of 1: 60 sec per loop
)rgr )r
r^rrr�test_main_negative_repssz"TestTimeit.test_main_negative_repsrSzneed __doc__cCs$|jdgd�}|�|tjd�dS)Nz-h)rf� )rgr r�__doc__)r
r^rrr�test_main_help szTestTimeit.test_main_helpcCs"|jdgd�}|�|td��dS)Nz-v)rfz�                1 loop -> 1 secs

                raw times: 1 sec, 1 sec, 1 sec, 1 sec, 1 sec

                1 loop, best of 5: 1 sec per loop
            )rgr r)r
r^rrr�test_main_verbose'szTestTimeit.test_main_verbosecCs$|jddgd�}|�|td��dS)NgiUMu�>z-vv)r
rfa�                1 loop -> 3e-05 secs
                2 loops -> 6e-05 secs
                5 loops -> 0.00015 secs
                10 loops -> 0.0003 secs
                20 loops -> 0.0006 secs
                50 loops -> 0.0015 secs
                100 loops -> 0.003 secs
                200 loops -> 0.006 secs
                500 loops -> 0.015 secs
                1000 loops -> 0.03 secs
                2000 loops -> 0.06 secs
                5000 loops -> 0.15 secs
                10000 loops -> 0.3 secs

                raw times: 300 msec, 300 msec, 300 msec, 300 msec, 300 msec

                10000 loops, best of 5: 30 usec per loop
            )rgr r)r
r^rrr�test_main_very_verbose1sz!TestTimeit.test_main_very_verbosec	Cs�|jdddgd�}|�|d�|jdddgd�}|�|d�|jdddgd�}|�|d	�t��}|jddd
gd�}WdQRX|�|��d�dS)Ng�~j�t�h?z-uZsec)r
rfz)100 loops, best of 5: 0.003 sec per loop
Zmsecz&100 loops, best of 5: 3 msec per loop
Zusecz*100 loops, best of 5: 3e+03 usec per loop
Zparsecz;Unrecognized unit. Please select nsec, usec, msec, or sec.
)rgr rr])r
Zunit_secZ	unit_msecZ	unit_usec�error_stringioZinvalidrrr�test_main_with_time_unitGs"
z#TestTimeit.test_main_with_time_unitc	Cs4t��}|jdgd�}WdQRX|�|��d�dS)Nz1/0)rfrY)rrgrXr])r
rvr^rrr�test_main_exception[szTestTimeit.test_main_exceptionc	Cs6t��}|jddgd�}WdQRX|�|��d�dS)Nz-n1z1/0)rfrY)rrgrXr])r
rvr^rrr�test_main_exception_fixed_reps`sz)TestTimeit.test_main_exception_fixed_reps�P?cCs(t|d�}tj|j|j|d�}|�|�S)N)r
)r'rr)rrr.r;r<�	autorange)r
r
�callbackrr8rrrr{es
zTestTimeit.autorangecCs(|��\}}|�|d�|�|d�dS)Ni�g@�?)r{r )r
�	num_loops�
time_takenrrr�test_autorangejszTestTimeit.test_autorangecCs,|jdd�\}}|�|d�|�|d�dS)Ng�?)r
r)r{r )r
r}r~rrr�test_autorange_secondosz TestTimeit.test_autorange_secondc	CsZdd�}t��}|j|d�\}}WdQRX|�|d�|�|d�d}|�|��|�dS)NcSstd�||��dS)Nz	{} {:.3f})�print�format)�a�brrrr|usz9TestTimeit.test_autorange_with_callback.<locals>.callback)r|i�g@�?zQ1 0.001
2 0.002
5 0.005
10 0.010
20 0.020
50 0.049
100 0.098
200 0.195
500 0.488
)rr{r r])r
r|r^r}r~Zexpectedrrr�test_autorange_with_callbackts	z'TestTimeit.test_autorange_with_callback)NN)NN)r`NN)rzN);rrrrr"r$r%r&r0r1r<r;r3r4rr=r?r@rArBrCrFrGrKrLrMrNrOrPrQrRrXr_ZMAIN_DEFAULT_OUTPUTrgrhrirjrkrlrmrnrorp�unittestZskipIfrc�flags�optimizersrtrurwrxryr{rr�r�rrrrr,sf		



	


r�__main__)rr�rcrZ�textwraprZtest.supportrrr7rHrZTestCaserrrerrrr�<module>s]