Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 3.145.156.35
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_profile.cpython-310.pyc
o

ab�"�@s�dZddlZddlZddlZddlZddlmZddlmZddl	m
Z
mZmZm
Z
ddlmZddlZddlmZmZddlmZmZGd	d
�d
ej�Zdd�Zed
d��Zdd�ZiZded<ded<ded<edkrre�dSdS)z"Test suite for the profile module.�N)�unified_diff)�StringIO)�TESTFN�unlink�temp_dir�
change_cwd)�contextmanager)�testfunc�timer)�assert_python_failure�assert_python_okc@sneZdZejZeZgd�ZdZdd�Z	dd�Z
edd��Zd	d
�Z
dd�Zd
d�Zdd�Zdd�Zdd�ZdS)�ProfileTest)�print_stats�
print_callers�
print_calleesz:0(max)cCstt�dS�N)rr��self�r�:/usr/local/python-3.10/lib/python3.10/test/test_profile.py�tearDownszProfileTest.tearDowncCstSr)�_ProfileOutputrrrr�get_expected_outputszProfileTest.get_expected_outputcs�g}|�td�}t�}|�dt�t��|�t�|�|jD]9}t�}tj	||d�}|�
��d�t||��|�
���}tj�dd�d��fdd�|D�}|�d	�|��q|S)
N���MbP?�
testfunc()��streamZstdname�.�csg|]
}�|vr|���qSr)�rstrip)�.0�line�Zmod_namerr�
<listcomp>/sz,ProfileTest.do_profiling.<locals>.<listcomp>�
)�
profilerclassr
�runctx�globals�locals�append�methodnamesr�pstats�StatsZ
strip_dirsZ
sort_stats�getattr�getvalue�
splitlinesr	�
__module__�rsplit�join)�cls�results�profZstart_timerZ
methodname�s�stats�outputrr"r�do_profilings
zProfileTest.do_profilingcCs�|��}|��}|�|dd�g}t|j�D]0\}}||}||d}||krG|�d|�d|jj�d��|�t	|�
d�|�
d�dd	��q|rT|�d�|��dSdS)
Nri�rz
Stats.z output for z does not fit expectation:r$�)Zlineterm)
r9rZassertEqual�	enumerater*r)r%�__name__�extendr�split�failr2)rr4Zexpectedr?�i�method�a�brrr�
test_cprofile3s$
����zProfileTest.test_cprofilec	Cspgd�}|D]/}t�}|�td�}|�|t�t��tj||d�}|��|�	�}|�
|j|d�||��qdS)N)zmax([0])zmax([0], key=int)zmax([0], **dict(key=int))zmax(*([0],))zmax(*([0],), key=int)zmax(*([0],), **dict(key=int))rrz&Profiling {0!r} didn't report max:
{1})
rr%r
r&r'r(r+r,rr.ZassertIn�expected_max_output�format)rZstmtsZstmtr6r5r7�resrrr�test_calling_conventionsDs

��z$ProfileTest.test_calling_conventionscCsXt��|j�d�Wd�n1swY|jjdtd�|�tj�t��dS)Nzint('1')��filename)�silent�profilermodule�runr�
assertTrue�os�path�existsrrrr�test_runYs
�zProfileTest.test_runcCsht��|j�dt�t��Wd�n1swY|jjdt�t�td�|�tj�	t��dS)NrrI)
rKrLr&r'r(rrNrOrPrQrrrr�test_runctx_s��zProfileTest.test_runctxcCs<td|jjd�td|jjdd�td|jjdddd�dS)N�-mZrandom_module_xyzZtimeitz-n�1)rrLr<rrrrr�test_run_profile_as_modulefs
�
�z&ProfileTest.test_run_profile_as_modulec
Cs�t��Y}t|��<t�d�tdddd��
}|�d�Wd�n1s%wYtd|jjdd	d�|�	tj
�d	��Wd�n1sGwYWd�dSWd�dS1s_wYdS)
N�destzdemo.py�wzutf-8)�encodingzimport os; os.chdir("dest")rTz-oz
out.pstats)rrrO�mkdir�open�writerrLr<rNrPrQ)rZtmpdir�frrr�(test_output_file_when_changing_directoryrs
��P�z4ProfileTest.test_output_file_when_changing_directoryN)r<r0�__qualname__�profileZProfiler%rLr*rErr�classmethodr9rDrHrRrSrVr^rrrrr
s
r
c	Cs�|�d�}td|�|��}g}t|d��}|D]}|�|�|�d�r'q(qWd�n1s2wYt|d��/}|�|�|�d�t|j	�D]\}}|�d|||df�qL|�d	�Wd�dS1snwYdS)
N�cozRegenerating %s...�rz#--cutrXz_ProfileOutput = {}
z _ProfileOutput[%r] = """\
%s"""
rz'
if __name__ == "__main__":
    main()
)
r�printr9r[r)�
startswith�
writelinesr\r;r*)rJr3r4�newfiler]r!r@rArrr�regenerate_expected_output�s*


���


�"�rhccs,�tj}z
t�t_dVW|t_dS|t_wr)�sys�stdoutr)rjrrrrK�s�rKcCs$dtjvrt��dSttt�dS)Nz-r)ri�argv�unittest�mainrh�__file__r
rrrrrm�s
rma�       28   27.972    0.999   27.972    0.999 profilee.py:110(__getattr__)
        1  269.996  269.996  999.769  999.769 profilee.py:25(testfunc)
     23/3  149.937    6.519  169.917   56.639 profilee.py:35(factorial)
       20   19.980    0.999   19.980    0.999 profilee.py:48(mul)
        2   39.986   19.993  599.830  299.915 profilee.py:55(helper)
        4  115.984   28.996  119.964   29.991 profilee.py:73(helper1)
        2   -0.006   -0.003  139.946   69.973 profilee.py:84(helper2_indirect)
        8  311.976   38.997  399.912   49.989 profilee.py:88(helper2)
        8   63.976    7.997   79.960    9.995 profilee.py:98(subhelper)ra�:0(append)                        <- profilee.py:73(helper1)(4)  119.964
:0(exc_info)                      <- profilee.py:73(helper1)(4)  119.964
:0(hasattr)                       <- profilee.py:73(helper1)(4)  119.964
                                     profilee.py:88(helper2)(8)  399.912
profilee.py:110(__getattr__)      <- :0(hasattr)(12)   11.964
                                     profilee.py:98(subhelper)(16)   79.960
profilee.py:25(testfunc)          <- <string>:1(<module>)(1)  999.767
profilee.py:35(factorial)         <- profilee.py:25(testfunc)(1)  999.769
                                     profilee.py:35(factorial)(20)  169.917
                                     profilee.py:84(helper2_indirect)(2)  139.946
profilee.py:48(mul)               <- profilee.py:35(factorial)(20)  169.917
profilee.py:55(helper)            <- profilee.py:25(testfunc)(2)  999.769
profilee.py:73(helper1)           <- profilee.py:55(helper)(4)  599.830
profilee.py:84(helper2_indirect)  <- profilee.py:55(helper)(2)  599.830
profilee.py:88(helper2)           <- profilee.py:55(helper)(6)  599.830
                                     profilee.py:84(helper2_indirect)(2)  139.946
profilee.py:98(subhelper)         <- profilee.py:88(helper2)(8)  399.912ra�:0(hasattr)                       -> profilee.py:110(__getattr__)(12)   27.972
<string>:1(<module>)              -> profilee.py:25(testfunc)(1)  999.769
profilee.py:110(__getattr__)      ->
profilee.py:25(testfunc)          -> profilee.py:35(factorial)(1)  169.917
                                     profilee.py:55(helper)(2)  599.830
profilee.py:35(factorial)         -> profilee.py:35(factorial)(20)  169.917
                                     profilee.py:48(mul)(20)   19.980
profilee.py:48(mul)               ->
profilee.py:55(helper)            -> profilee.py:73(helper1)(4)  119.964
                                     profilee.py:84(helper2_indirect)(2)  139.946
                                     profilee.py:88(helper2)(6)  399.912
profilee.py:73(helper1)           -> :0(append)(4)   -0.004
profilee.py:84(helper2_indirect)  -> profilee.py:35(factorial)(2)  169.917
                                     profilee.py:88(helper2)(2)  399.912
profilee.py:88(helper2)           -> :0(hasattr)(8)   11.964
                                     profilee.py:98(subhelper)(8)   79.960
profilee.py:98(subhelper)         -> profilee.py:110(__getattr__)(16)   27.972r�__main__)�__doc__rir+rlrOZdifflibr�iorZtest.support.os_helperrrrr�
contextlibrr`Z
test.profileer	r
Ztest.support.script_helperrrZTestCaser
rhrKrmrr<rrrr�<module>s0p
		

�
© 2025 GrazzMean