[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.189.171.188: ~ $


Cs[�?�@s\dZddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddlm
Z
ddlmZddlmZddlm
Z
ddlmZdd	lmZdd
lmZddlmZddlmZdd
lmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlm Z dd�Z!dd�Z"dd�Z#ej$ed�Gd d!�d!ej%��Z&ej$ed�Gd"d#�d#ej%��Z'e(d$krXee)�dS)%zPOSIX specific tests.�N)�AIX)�BSD)�LINUX)�MACOS)�OPENBSD)�POSIX)�SUNOS)�PY3)�APPVEYOR)�get_kernel_version)�get_test_subprocess)�mock)�
PYTHON_EXE)�
reap_children)�retry_before_failing)�run_test_module_by_name)�sh)�skip_on_access_denied)�TRAVIS)�unittest)�wait_for_pid)�whichcCs�ts|jdd�}tr0|jdd�}trH|jdd�}t|�}tss|jd�dj�}yt|�SWntk
r�|SYnXd	S)
zkExpects a ps command with a -o argument and parse the result
    returning only the value of interest.
    z --no-headers � z-o startz-o stimez-o rssz	-o rssize�
�N)	r�replacerrr�split�strip�int�
ValueError)�cmd�output�r"�/test_posix.py�ps+s
r$cCs3d}trd}td||f�jd�dS)N�commandZcommzps --no-headers -o %s -p %srr)rr$r)�pid�fieldr"r"r#�ps_nameIsr(cCs,d}tstrd}td||f�S)Nr%�argszps --no-headers -o %s -p %s)rrr$)r&r'r"r"r#�ps_argsPsr*z
POSIX onlyc@sZeZdZdZedd��Zedd��Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Ze�e
�dd���Ze�e
�dd���Zdd�Zdd�Zdd�Zdd�Zejep�ed�dd��Zdd �Zd!d"�Zejed#�ejed$�d%d&���Zd'd(�Zd)S)*�TestProcesszBCompare psutil results against 'ps' command line utility (mainly).cCs5ttddgdtj�j|_t|j�dS)Nz-Ez-O�stdin)rr�
subprocess�PIPEr&r)�clsr"r"r#�
setUpClass[szTestProcess.setUpClasscCst�dS)N)r)r/r"r"r#�
tearDownClassaszTestProcess.tearDownClasscCs?td|j�}tj|j�j�}|j||�dS)Nzps --no-headers -o ppid -p %s)r$r&�psutil�ProcessZppid�assertEqual)�selfZppid_psZppid_psutilr"r"r#�	test_ppideszTestProcess.test_ppidcCsBtd|j�}tj|j�j�j}|j||�dS)Nzps --no-headers -o uid -p %s)r$r&r2r3�uids�realr4)r5Zuid_psZ
uid_psutilr"r"r#�test_uidjszTestProcess.test_uidcCsBtd|j�}tj|j�j�j}|j||�dS)Nzps --no-headers -o rgid -p %s)r$r&r2r3Zgidsr8r4)r5Zgid_psZ
gid_psutilr"r"r#�test_gidoszTestProcess.test_gidcCs?td|j�}tj|j�j�}|j||�dS)Nzps --no-headers -o user -p %s)r$r&r2r3�usernamer4)r5Zusername_psZusername_psutilr"r"r#�
test_usernametszTestProcess.test_usernamecCsctj�}tjddt��;}|j|j�t|j�j	��|j
sXt�WdQRXdS)Nzpsutil.pwd.getpwuid�side_effect)r2r3r
�patch�KeyErrorr4r;�strr7r8�called�AssertionError)r5�pZfunr"r"r#�test_username_no_resolutionys%z'TestProcess.test_username_no_resolutioncCsTtjd�td|j�}tj|j�j�dd}|j||�dS)Ng�������?zps --no-headers -o rss -p %sri)�time�sleepr$r&r2r3�memory_infor4)r5Zrss_psZ
rss_psutilr"r"r#�test_rss_memory�s
 zTestProcess.test_rss_memorycCsTtjd�td|j�}tj|j�j�dd}|j||�dS)Ng�������?zps --no-headers -o vsz -p %sri)rErFr$r&r2r3rGr4)r5Zvsz_psZ
vsz_psutilr"r"r#�test_vsz_memory�s
 zTestProcess.test_vsz_memorycCs�t|j�}tjj|�j�}tj|j�j�j�}t	j
dd|�}t	j
dd|�}|j||�dS)Nz\d.\d�)r(r&�os�path�basename�lowerr2r3�name�re�subr4)r5Zname_psZname_psutilr"r"r#�	test_name�szTestProcess.test_namecCsud}dddg}tjdd|��Dtjdd|��'tj�}|j|j�d�WdQRXWdQRXdS)Nzlong-program-namezlong-program-name-extendedZfooZbarzpsutil._psplatform.Process.name�return_valuez"psutil._psplatform.Process.cmdline)r
r>r2r3r4rO)r5rO�cmdlinerCr"r"r#�test_name_long�s

zTestProcess.test_name_longcCsrd}tjdd|��Ptjddtjdd���'tj�}|j|j�d�WdQRXWdQRXdS)Nzlong-program-namezpsutil._psplatform.Process.namerSz"psutil._psplatform.Process.cmdliner=rrJ)r
r>r2�AccessDeniedr3r4rO)r5rOrCr"r"r#�test_name_long_cmdline_ad_exc�s
z)TestProcess.test_name_long_cmdline_ad_exccCsrd}tjdd|��Ptjddtjdd���'tj�}|jtj|j�WdQRXWdQRXdS)Nzlong-program-namezpsutil._psplatform.Process.namerSz"psutil._psplatform.Process.cmdliner=rrJ)r
r>r2Z
NoSuchProcessr3�assertRaisesrO)r5rOrCr"r"r#�test_name_long_cmdline_nsp_exc�s
z*TestProcess.test_name_long_cmdline_nsp_exczps -o start not availablecCs�td|j�jd�d}tj|j�j�}tjj|�jd�}t	|�}tjj|�jd�}|j
|||g�dS)Nzps --no-headers -o start -p %srrz%H:%M:%S)r$r&rr2r3Zcreate_time�datetimeZ
fromtimestamp�strftime�round�assertIn)r5Ztime_psZtime_psutilZtime_psutil_tstampZround_time_psutilZround_time_psutil_tstampr"r"r#�test_create_time�s 		zTestProcess.test_create_timecCszt|j�}tj|j�j�}y|j||�Wn8tk
ru|dt|��}|j||�YnXdS)N)r(r&r2r3Zexer4rB�len)r5Zps_pathnameZpsutil_pathnameZadjusted_ps_pathnamer"r"r#�test_exe�s
zTestProcess.test_execCsDt|j�}djtj|j�j��}|j||�dS)Nr)r*r&�joinr2r3rTr4)r5Z
ps_cmdlineZpsutil_cmdliner"r"r#�test_cmdline�s!zTestProcess.test_cmdlineznot reliable on SUNOSznot reliable on AIXcCs9td|j�}tj�j�}|j||�dS)Nzps --no-headers -o nice -p %s)r$r&r2r3�nicer4)r5Zps_niceZpsutil_nicer"r"r#�	test_nice�szTestProcess.test_nicec	
s��fdd�}tjtj��}g}ddddddd	d
ddg
}trst�dkrs|jd�tr�t�dkr�|jd�x�ttj�D]���jd�s��|kr�q�q�y@|j	�}x!t
d
�D]}||��q�W|j	�}Wntjk
r#Yq�Xt||�dkr�d�||f}|j|�q�W|r~|j
ddj|��dS)Ncs]f}t|�d�}|dk	rUt|�rU�dkrHtjf}||�n|dS)N�rlimit)�getattr�callabler2Z
RLIMIT_NOFILE)rC�attrr))rOr"r#�call�s
z&TestProcess.test_num_fds.<locals>.call�	terminate�killZsuspendZresumerc�send_signal�waitZchildrenZas_dictZmemory_info_ex���$re�Znum_ctx_switches�_rz@failure while processing Process.%s method (before=%s, after=%s)r)rnrorp)rnrorq)r2r3rK�getpidrr�append�dir�
startswithZnum_fds�rangerV�abs�failra)	r5rirCZfailures�
ignored_namesZnum1�xZnum2ryr")rOr#�test_num_fds�s4
	

zTestProcess.test_num_fdsN)�__name__�
__module__�__qualname__�__doc__�classmethodr0r1r6r9r:r<rDrrrHrIrRrUrWrYr�skipIfrrr^r`rbrrrdr|r"r"r"r#r+Ws,			
$

!r+c@s�eZdZdZe�dd��Zejed�eje	d�eje
d�d�dd	����Zejep�e	o�e
j�d
�e�dd���Zd
d�Zdd�Zdd�Zdd�Zejed�dd��ZdS)�TestSystemAPIszTest some system APIs.cCsVtstr!ddddg}nddddg}t|dtj�}|j�dj�}|j�dksvt�t	r�t
|tjj
�}g}xP|jd�d	d�D]5}|r�t|j�dj��}|j|�q�W|j|j�tj�}|j�|j�ts2trBd|krB|jdd�|j||�dS)
Nr$z-Az-or&Zax�stdoutrrr)rrrr-r.�communicater�pollrBr	r@�sysr��encodingrrrt�remover&r2Zpids�sortrr�insertr4)r5r rCr!Zpids_ps�liner&Zpids_psutilr"r"r#�	test_pids s( 

zTestSystemAPIs.test_pidszunreliable on SUNOSzunreliable on TRAVISZifconfigzno ifconfig cmdcCsqtd�}x^tjdd�j�D]D}x;|j�D]}|j|�r8Pq8W|jd||f�q%WdS)Nzifconfig -aZpernicTz/couldn't find %s nic in 'ifconfig -a' output
%s)rr2Znet_io_counters�keysrrvry)r5r!Znicr�r"r"r#�test_nic_names?szTestSystemAPIs.test_nic_namesz unreliable on APPVEYOR or TRAVIScCs�td�}|jd�}dd�|D�}dd�|D�}|jt|�ttj���x:tj�D],}|j|j|�|j|j|�qpWdS)NZwhorcSs g|]}|j�d�qS)r)r)�.0r{r"r"r#�
<listcomp>Ts	z-TestSystemAPIs.test_users.<locals>.<listcomp>cSs g|]}|j�d�qS)r)r)r�r{r"r"r#r�Us	)	rrr4r_r2�usersr]rOZterminal)r5�out�linesr�Z	terminals�ur"r"r#�
test_usersNs"zTestSystemAPIs.test_userscCs]tjddttjd���5}|jttjjt	j
��|jsRt�WdQRXdS)Nzpsutil._psposix.os.killr=rJ)
r
r>�OSError�errno�EBADFrXr2�_psposixZ
pid_existsrKrsrArB)r5�mr"r"r#�test_pid_exists_let_raise[sz(TestSystemAPIs.test_pid_exists_let_raisecCs]tjddttjd���5}|jttjjt	j
��|jsRt�WdQRXdS)Nzpsutil._psposix.os.waitpidr=rJ)
r
r>r�r�r�rXr2r��wait_pidrKrsrArB)r5r�r"r"r#�test_os_waitpid_let_raisedsz(TestSystemAPIs.test_os_waitpid_let_raisec
Csitjddttjd���A}|jtjjtjj	t
j�dd�|js^t
�WdQRXdS)Nzpsutil._psposix.os.waitpidr=rJ�timeoutg{�G�z�?)r
r>r�r�ZEINTRrXr2r��TimeoutExpiredr�rKrsrArB)r5r�r"r"r#�test_os_waitpid_eintrls	z$TestSystemAPIs.test_os_waitpid_eintrcCsQtjddd��5}|jttjjtj��|j	sFt
�WdQRXdS)Nzpsutil._psposix.os.waitpidrSr���)rr�)r
r>rXrr2r�r�rKrsrArB)r5r�r"r"r#�test_os_waitpid_bad_ret_statusus
	z-TestSystemAPIs.test_os_waitpid_bad_ret_statuszunreliable on AIXc
Cs/dd�}d
}xtjdd�D]}tj|j�}y||j�\}}}}Wndtk
r�}	zDt|	�j�}	d|	ks�d|	ks�d	|	kr�w%n�WYdd}	~	Xq%X|j|j	|d
|�|j|j
|d
|�|j|j|d
|�|j|j|d
d�q%WdS)NcSs�td|�j�}|jd�d}|j�}t|d�d}t|d�d}t|d�d}t|djdd	��}||||fS)
Nzdf -k %srrirn���%rJ)rrrr�floatr)�devicer�r�Zfields�total�used�free�percentr"r"r#�df�sz*TestSystemAPIs.test_disk_usage.<locals>.dfr�i�allFzno such file or directoryzraw devices not supportedzpermission deniedZdeltarii@)
r2Zdisk_partitions�
disk_usageZ
mountpointr��RuntimeErrorr@rNZassertAlmostEqualr�r�r�r�)
r5r�Z	tolerance�part�usager�r�r�r��errr"r"r#�test_disk_usage~s"
zTestSystemAPIs.test_disk_usageN)r}r~rr�rr�rr�rrrr�r
r2r�r�r�r�r�r�rr�r"r"r"r#r�s+
			r��__main__)*r�rZr�rKrPr-r�rEr2rrrrrrrZpsutil._compatr	Zpsutil.testsr
rrr
rrrrrrrrrrr$r(r*r�ZTestCaser+r�r}�__file__r"r"r"r#�<module>sN��

Filemanager

Name Type Size Permission Actions
__init__.cpython-35.opt-1.pyc File 31.72 KB 0644
__init__.cpython-35.pyc File 33.22 KB 0644
__main__.cpython-35.opt-1.pyc File 2.66 KB 0644
__main__.cpython-35.pyc File 2.66 KB 0644
test_aix.cpython-35.opt-1.pyc File 3.48 KB 0644
test_aix.cpython-35.pyc File 3.48 KB 0644
test_bsd.cpython-35.opt-1.pyc File 20.06 KB 0644
test_bsd.cpython-35.pyc File 20.06 KB 0644
test_connections.cpython-35.opt-1.pyc File 15.7 KB 0644
test_connections.cpython-35.pyc File 16.1 KB 0644
test_contracts.cpython-35.opt-1.pyc File 23.32 KB 0644
test_contracts.cpython-35.pyc File 24.36 KB 0644
test_linux.cpython-35.opt-1.pyc File 69.39 KB 0644
test_linux.cpython-35.pyc File 70.81 KB 0644
test_memory_leaks.cpython-35.opt-1.pyc File 22.99 KB 0644
test_memory_leaks.cpython-35.pyc File 22.99 KB 0644
test_misc.cpython-35.opt-1.pyc File 35.69 KB 0644
test_misc.cpython-35.pyc File 36.91 KB 0644
test_osx.cpython-35.opt-1.pyc File 11.44 KB 0644
test_osx.cpython-35.pyc File 11.44 KB 0644
test_posix.cpython-35.opt-1.pyc File 14.02 KB 0644
test_posix.cpython-35.pyc File 14.18 KB 0644
test_process.cpython-35.opt-1.pyc File 43.88 KB 0644
test_process.cpython-35.pyc File 44.94 KB 0644
test_sunos.cpython-35.opt-1.pyc File 1.53 KB 0644
test_sunos.cpython-35.pyc File 1.53 KB 0644
test_system.cpython-35.opt-1.pyc File 27.54 KB 0644
test_system.cpython-35.pyc File 29.27 KB 0644
test_unicode.cpython-35.opt-1.pyc File 11.7 KB 0644
test_unicode.cpython-35.pyc File 11.76 KB 0644
test_windows.cpython-35.opt-1.pyc File 31.05 KB 0644
test_windows.cpython-35.pyc File 31.31 KB 0644