HEX
Server: LiteSpeed
System: Linux s787.bom1.mysecurecloudhost.com 4.18.0-477.13.1.lve.el8.x86_64 #1 SMP Thu Jun 1 16:40:47 EDT 2023 x86_64
User: mobilech (5348)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/alt/python38/lib64/python3.8/site-packages/psutil/tests/__pycache__/test_misc.cpython-38.pyc
U

�=�_�o�@sdZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
mZddl
mZddl
m
Z
ddlmZddlmZddlmZdd	lmZdd
lmZddlmZddlmZdd
lmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlm Z ddlm!Z!ddlm"Z"ddlm#Z#ddlm$Z$ddlm%Z%ddlm&Z&ddl
Z
ddlZ
e	j'dd�dkZ(Gdd�de �Z)e�*d d!�Z+Gd"d#�d#e �Z,e&�-ej.�/e$�d$�Gd%d&�d&e ��Z0e1d'k�r
dd(l2m3Z3e3e4�dS))z
Miscellaneous tests.
�N)�LINUX)�POSIX)�WINDOWS)�memoize)�memoize_when_activated)�
supports_ipv6)�wrap_numbers)�PY3)�APPVEYOR)�
CI_TESTING)�HAS_BATTERY)�HAS_MEMORY_MAPS)�HAS_NET_IO_COUNTERS)�HAS_SENSORS_BATTERY)�HAS_SENSORS_FANS)�HAS_SENSORS_TEMPERATURES)�import_module_by_path)�mock)�PsutilTestCase)�
PYTHON_EXE)�
reload_module)�ROOT_DIR)�SCRIPTS_DIR)�sh)�unittest�)��	c@s�eZdZefdd�Zdd�Zefdd�Zefdd�Zefd	d
�Zefdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S)*�TestMiscc	Cs�t�|��j�}||�}|�d|�|�d|j|�|�dt|���|�dd��|�d|�|�d|�|�	�|�
�||�}|�d|�|�d|�tjj
tjd	t�t���d
��@t��}||�}|�d|j|�|�d|�|�d|�W5QRXtjj
tjd	t�t���d
��@t��}||�}|�d|j|�|�d
|�|�d|�W5QRXtjj
tjd	t�t���d
��4t��}||�}|�d|j|�|�d|�W5QRXdS)Nzpsutil.Processzpid=%sz	name='%s'zname=u'zname='zstatus=z	exitcode=zstatus='terminated'�name��side_effectzstatus='zombie'zname=Z
terminated)�psutil�ProcessZspawn_testproc�pid�assertIn�strr�replace�assertNotIn�	terminate�waitr�patch�object�
ZombieProcess�os�getpid�
NoSuchProcess�AccessDenied)�self�func�p�r�r6�I/opt/alt/python38/lib64/python3.8/site-packages/psutil/tests/test_misc.py�test_process__repr__=sJ
����zTestMisc.test_process__repr__cCs|jtd�dS)N)r3)r8r&�r2r6r6r7�test_process__str__aszTestMisc.test_process__str__cCsN|�tt�d��d�|�ttjddd��d�|�ttjddd��d�dS)N�Az7psutil.NoSuchProcess process no longer exists (pid=321)�foo�rzCpsutil.NoSuchProcess process no longer exists (pid=321, name='foo')��msgzpsutil.NoSuchProcess foo)�assertEqual�reprr"r0�r2r3r6r6r7�test_no_such_process__repr__ds���z%TestMisc.test_no_such_process__repr__cCsj|�tt�d��d�|�ttjddd��d�|�ttjdddd��d�|�ttjddd	��d
�dS)Nr;zEpsutil.ZombieProcess process still exists but it's a zombie (pid=321)r<r=zQpsutil.ZombieProcess process still exists but it's a zombie (pid=321, name='foo')�)r�ppidzYpsutil.ZombieProcess process still exists but it's a zombie (pid=321, name='foo', ppid=1)r>zpsutil.ZombieProcess foo)r@rAr"r-rBr6r6r7�test_zombie_process__repr__ps ����z$TestMisc.test_zombie_process__repr__cCsN|�tt�d��d�|�ttjddd��d�|�ttjddd��d�dS)Nr;zpsutil.AccessDenied (pid=321)r<r=z)psutil.AccessDenied (pid=321, name='foo')r>zpsutil.AccessDenied foo)r@rAr"r1rBr6r6r7�test_access_denied__repr__�s���z#TestMisc.test_access_denied__repr__cCsP|�tt�d��d�|�ttjddd��d�|�ttjdddd��d�dS)	Nr;z/psutil.TimeoutExpired timeout after 321 seconds�o)r$z9psutil.TimeoutExpired timeout after 321 seconds (pid=111)r<)r$rzEpsutil.TimeoutExpired timeout after 321 seconds (pid=111, name='foo'))r@rAr"�TimeoutExpiredrBr6r6r7�test_timeout_expired__repr__�s���z%TestMisc.test_timeout_expired__repr__cCs>t��}t��}|�||�d|_|�||�|�|d�dS)N)rrr<)r"r#r@�_identZassertNotEqual)r2�p1�p2r6r6r7�test_process__eq__�szTestMisc.test_process__eq__cCs(tt��t��g�}|�t|�d�dS)NrD)�setr"r#r@�len)r2�sr6r6r7�test_process__hash__�szTestMisc.test_process__hash__c	Cs�tt�}|D]�}|dkrq|�d�szt|�Wqtk
r�|tjkr�tt|�}|dkr`Yq|jdk	r�d|j��kr�|�	d|�YqXqtjD]}|�
||�q�dS)N)�long�tests�test�PermissionError�ProcessLookupError�_Z
deprecatedz%r not in psutil.__all__)�dirr"�
startswith�
__import__�ImportError�__all__�getattr�__doc__�lower�failr%)r2Z
dir_psutilr�funr6r6r7�test__all__�s$



�
zTestMisc.test__all__cCs$|�d�dd�tjD��tj�dS)N�.cSsg|]}t|��qSr6)r&)�.0�xr6r6r7�
<listcomp>�sz)TestMisc.test_version.<locals>.<listcomp>)r@�joinr"�version_info�__version__r9r6r6r7�test_version�s�zTestMisc.test_versioncCs"t��}d|_|�d|���dS)N�1r<)r"r#r<r(�as_dict)r2r4r6r6r7�!test_process_as_dict_no_new_names�sz*TestMisc.test_process_as_dict_no_new_namescst�fdd��}g�td�D].}|�}dif}|�||�|�t��d�qtd�D]0}|d�}dif}|�||�|�t��d�qTtd�D]8}|ddd�}dddif}|�||�|�t��d	�q�|��|�}dif}|�||�|�t��d
�|�|jd�dS)Ncs��d�||fS)�
foo docstringN��append)�args�kwargs�Zcallsr6r7r<�s
z"TestMisc.test_memoize.<locals>.foorr6rD)rD)�barrur�ro)r�ranger@rP�cache_clearr_)r2r<rf�retZexpectedr6rtr7�test_memoize�s0zTestMisc.test_memoizecs�G�fdd�d�}|�}g�|��|��|�t��d�g�|j�|�|��|��|�t��d�g�|j�|�|��|��|�t��d�dS)NcseZdZe�fdd��ZdS)z1TestMisc.test_memoize_when_activated.<locals>.Foocs��d�dS�Nrpr9rtr6r7r<�sz5TestMisc.test_memoize_when_activated.<locals>.Foo.fooN)�__name__�
__module__�__qualname__rr<r6rtr6r7�Foo�srrrD)r<r@rP�cache_activate�cache_deactivate)r2r�fr6rtr7�test_memoize_when_activated�s z$TestMisc.test_memoize_when_activatedcCs�ddlm}dd�}|�|d�|d�di�|�|d�|d�d|d	�d
i�|�|d�|d�d|d	�di�|�|d
�|d�d|d	�d
i�|�|d�|d�di�|�|d�|d�di�|�|d�|d�di�dS)Nr)�parse_environ_blockcSstr|��S|Sr{)r�upper)rQr6r6r7�ksz,TestMisc.test_parse_environ_block.<locals>.kza=1�arlz	a=1b=2�b�2za=1b=�z
a=1b=2c=3zxxxa=1z	a=1=b=2za=1b=2)�psutil._commonr�r@)r2r�r�r6r6r7�test_parse_environ_blocks"

�
�
�
�z!TestMisc.test_parse_environ_blockc	Cs>|�tj�t�r�t�d��}d|_t��t�r6t�W5QRXt��tjdtjd��}t�rdt�|j	snt�W5QRXt��tjdtj
d��"}t�r�t�t��|j	s�t�W5QRXt��tjdtj
d��"}t�r�t�t��|j	s�t�W5QRXn@|�t��0t�tj
tj�}z|�d�W5|��XW5QRXdS)Nzpsutil._common.socketFzpsutil._common.socket.socketr z!psutil._common.socket.socket.bind)z::1r)Z
addCleanuprrxrr+�has_ipv6�AssertionError�socket�error�called�gaierror�assertRaises�	Exception�AF_INET6�SOCK_STREAM�close�bind)r2rQ�sockr6r6r7�test_supports_ipv6sD�
�
�
zTestMisc.test_supports_ipv6c	Cs�ddlm}tj�t�}||�s$t�|tj�|��r8t�tj	dt
tjd�d��|�
t
||�W5QRXtj	dt
tjd�d��|�
t
||�W5QRXtj	dt
tjd�d��||�r�t�W5QRXtj	ddd��||�r�t�W5QRXdS)	Nr)�
isfile_strictzpsutil._common.os.statr<r zpsutil._common.stat.S_ISREGF�Zreturn_value)r�r�r.�path�abspath�__file__r��dirnamerr+�OSError�errno�EPERMr��EACCES�ENOENT)r2r�Z	this_filer6r6r7�test_isfile_strict=s$
�
�
�zTestMisc.test_isfile_strictcs��fdd�}|t�����|t���|t���|t���|tjdd��|t���trnt	j
�d�snnts~|t�
��|t���|t�t	����|t���dS)Ncs<tdk	rt�t�|��t�|�}t�|�}��||�dSr{)�json�loads�dumps�pickler@)ryr�r�r9r6r7�checkOs


z*TestMisc.test_serialization.<locals>.checkr)�intervalz/proc/diskstats)r"r#rmZvirtual_memoryZswap_memoryZ	cpu_timesZcpu_times_percent�net_io_countersrr.r��existsr
�disk_io_countersZdisk_partitions�
disk_usage�getcwd�users)r2r�r6r9r7�test_serializationNszTestMisc.test_serializationcCsTtj�td�}tr(tj�|�s(|�d�St|�}|�t	|j
�|�|��t
j�dS)Nzsetup.pyzcan't find setup.py)r.r�rhrrr��skipTestrr��
SystemExit�setupr@�get_versionr"rj)r2Zsetup_py�moduler6r6r7�test_setup_scriptes
zTestMisc.test_setup_scriptc
Cs�tjjtjdtjd��}t��|js*t�W5QRXtjjtjdt�d�d��}t��|jsbt�W5QRXtjjtjdt	d��.}|�
t	��t��W5QRX|js�t�W5QRXdS)NZcreate_timer rD)rr+r,r"r#r1r�r�r-�
ValueErrorr�)r2�methr6r6r7�test_ad_on_process_creationms&���z$TestMisc.test_ad_on_process_creationc
CsRtjddd��:|�t��}tt�W5QRX|�dt|j��	��W5QRXdS)Nzpsutil._psplatform.cext.versionz0.0.0r�zversion conflict)
rr+r�r\rr"r%r&�	exceptionr`)r2�cmr6r6r7�test_sanity_version_check~s�z"TestMisc.test_sanity_version_checkN)r|r}r~rAr8r:rCrFrGrJrNrRrcrkrnrzr�r�r�r�r�r�r�r�r6r6r6r7r;s($##rr<za b cc@s�eZdZdd�ZeZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Ze�ed�dd��ZdS)�TestWrapNumberscCst��dSr{)rrxr9r6r6r7�setUp�szTestWrapNumbers.setUpcCs&dtddd�i}|�t|d�|�dS�N�disk1��disk_io��ntr@r�r2�inputr6r6r7�test_first_call�szTestWrapNumbers.test_first_callcCs8dtddd�i}|�t|d�|�|�t|d�|�dSr�r�r�r6r6r7�test_input_hasnt_changed�sz(TestWrapNumbers.test_input_hasnt_changedcCs�dtddd�i}|�t|d�|�dtddd�i}|�t|d�|�dtddd�i}|�t|d�|�dtddd�i}|�t|d�|�dS)	Nr�r�r��
����r�r�r6r6r7�test_increase_but_no_wrap�sz)TestWrapNumbers.test_increase_but_no_wrapcCs�dtddd�i}|�t|d�|�dtddd�i}|�t|d�dtddd�i�dtddd�i}|�t|d�dtddd�i�dtddd�i}|�t|d�dtddd�i�dtddd�i}|�t|d�dtddd	�i�dtddd�i}|�t|d�dtddd	�i�dtd
dd�i}|�t|d�dtddd	�i�dtddd�i}|�t|d�dtddd	�i�dtddd�i}|�t|d�dtddd	�i�dS)
Nr��dr�r��n�Z�r����2��(r�r�r6r6r7�	test_wrap�sD��������zTestWrapNumbers.test_wrapcCstdtddd�i}|�t|d�|�tddd�tddd�d�}|�t|d�|�dtddd�i}|�t|d�|�dS)Nr�r�r���r�Zdisk2�r�r�r6r6r7�test_changing_keys�s

�z"TestWrapNumbers.test_changing_keyscCs.tddd�tddd�d�}|�t|d�|�tddd�tddd�d�}|�t|d�tddd�tddd�d��dtddd�i}|�t|d�|�tddd�tddd�d�}|�t|d�|�tddd�tddd�d�}|�t|d�|�tddd�tddd�d�}|�t|d�tddd�tddd�d��dS)Nr�r�r�r�r�r�r�r�r�r6r6r7�test_changing_keys_w_wrap�s<

�

�

��

�

�

�

��z)TestWrapNumbers.test_changing_keys_w_wrapcCsbddddd�}|�t|d�|�|�t|d�|�ddddd�}t|d�}|�|dd	d
�dS)N)	i,���#�R������ȷ)	i�ritUiirrrr�)	�6r�i�$i�Nrv�r�i��)	iU	i�i"r�i�i4i�i�i\)�nvme0n1Z	nvme0n1p1Z	nvme0n1p2Z	nvme0n1p3r�)	r�r�r�r�r�r�r�r�r�r�ri�)r@r)r2�d�outr6r6r7�test_real_data�s��
zTestWrapNumbers.test_real_datacCsbdtddd�i}t|d�t��}|�|dd|i�|�|ddii�|�|ddii�dS)Nr�r�r�rrDr�r�r�
cache_infor@�r2r��cacher6r6r7�test_cache_first_call	s
z%TestWrapNumbers.test_cache_first_callcCs�dtddd�i}t|d�dtddd�i}t|d�t��}|�|dd|i�|�|dddddd�i�|�|ddii�dS)	Nr�r�r�r�rrD�)r�r)r�rD�r�rrr�r�r6r6r7�test_cache_call_twices

�z%TestWrapNumbers.test_cache_call_twicecs�dtddd�i}t|d�dtddd�i}t|d�t��}��|dd|i���|dddddd�i���|dddtd	g�ii��fd
d�}dtddd�i}t|d�t��}��|dd|i�|�dtddd�i}t|d�t��}��|dd|i�|�dtddd
�i}t|d�t��}��|dd|i���|dddddd�i���|dddtd	g�ii�dS)Nr�r�r�r�rrDr�rr�csFt��}��|dddddd�i���|dddtdg�ii�dS)	NrDr�rr�r�rr�r�)rr�r@rO)r�r9r6r7�assert_,s��
�z0TestWrapNumbers.test_cache_wrap.<locals>.assert_r�r�r�)r�rr�r@rO)r2r�r�r�r6r9r7�test_cache_wraps>

�



�zTestWrapNumbers.test_cache_wrapcCs�dtddd�i}t|d�tddd�tddd�d�}t|d�t��}|�|dd|i�|�|dddddd�i�|�|d	dii�dS)
Nr�r�r�r�r�rrDr�rr�r�r6r6r7�test_cache_changing_keysMs


�
�z(TestWrapNumbers.test_cache_changing_keyscCs\dtddd�i}t|d�t|d�t�d�|�t��iiif�t�d�t�d�dS)Nr�r�r�z?!?)r�rrxr@r�r�r6r6r7�test_cache_clearZs



z TestWrapNumbers.test_cache_clear�
not supportedcCs�t��rt��s|�d�St��t��t��}|D]}|�d|�|�d|�q6tj��t��}|D]}|�d|�|�d|�qjtj��t��}|�	|iiif�dS)Nzno disks or NICs availablezpsutil.disk_io_counterszpsutil.net_io_counters)
r"r�r�r�rr�r%rxr(r@)r2Zcachesr�r6r6r7�test_cache_clear_public_apiscs 


z,TestWrapNumbers.test_cache_clear_public_apisN)r|r}r~r�ZtearDownr�r�r�r�r�r�r�r�r�r�r�r�r�skipIfrr�r6r6r6r7r��s 
%0
	r�zcan't locate scripts directoryc@s~eZdZdZedd��Zed<dd��Zdd�Ze�	e
d	�d
d��Zdd
�Zdd�Z
dd�Zdd�Ze�	eote��d�dd��Zdd�Zdd�Zdd�Zdd�Ze�	ed�d d!��Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Ze�	e d.�d/d0��Z!d1d2�Z"e�	e#d�d3d4��Z$e�	e%d�d5d6��Z&e�	e'd�e�	e(d7�d8d9���Z)e�	e'd�e�	e(d7�d:d;���Z*dS)=�TestScriptsz-Tests for scripts in the "scripts" directory.c
Os�dtj�t|�}t|g}|D]}|�|�qzt|f|���}Wn@tk
r�}z"dt	|�krpt	|�WY�S�W5d}~XYnX|s�t
|��|S)Nz%sr1)r.r�rhrrrqr�strip�RuntimeErrorr&r�)�exerrrs�cmd�argr��errr6r6r7�
assert_stdout�szTestScripts.assert_stdoutNc	CsRtj�t|�}tr"t|ddd�}n
t|d�}|�|��}W5QRXt�|�dS)N�rt�utf8)�encoding)	r.r�rhrr	�open�read�ast�parse)rrrr��srcr6r6r7�
assert_syntax�s
zTestScripts.assert_syntaxcCsVt|�}t�t�D]>}|�d�rdtj�|�d|kr|�dtj�t|��qdS)N�.pyZtest_rzno test defined for %r script)	rYr.�listdirr�endswithr��splitextrarh)r2Zmethsrr6r6r7�
test_coverage�s
�zTestScripts.test_coveragez
POSIX onlycCsPt�t�D]@}|�d�r
tj�t|�}tjt�|�tj@s
|�	d|�q
dS)Nrz%r is not executable)
r.rrrr�rh�stat�S_IXUSR�ST_MODEra)r2rr�r6r6r7�test_executable�s

zTestScripts.test_executablecCs|�d�dS)Nz
disk_usage.py�rr9r6r6r7�test_disk_usage�szTestScripts.test_disk_usagecCs|�d�dS)Nzfree.pyrr9r6r6r7�	test_free�szTestScripts.test_freecCs|�d�dS)Nz
meminfo.pyrr9r6r6r7�test_meminfo�szTestScripts.test_meminfocCs|�dtt����dS)Nzprocinfo.py�rr&r.r/r9r6r6r7�
test_procinfo�szTestScripts.test_procinfozno userscCs|�d�dS)Nzwho.pyrr9r6r6r7�test_who�szTestScripts.test_whocCs|�d�dS)Nzps.pyrr9r6r6r7�test_ps�szTestScripts.test_pscCs|�d�dS)Nz	pstree.pyrr9r6r6r7�test_pstree�szTestScripts.test_pstreecCs|�d�dS)Nz
netstat.pyrr9r6r6r7�test_netstat�szTestScripts.test_netstatcCs|�d�dS)Nzifconfig.pyrr9r6r6r7�
test_ifconfig�szTestScripts.test_ifconfigr�cCs|�dtt����dS)Nzpmap.pyrr9r6r6r7�	test_pmap�szTestScripts.test_pmapcCs*dt����jkr|�d��|�d�dS)NZussr�zprocsmem.py)r"r#Zmemory_full_info�_fieldsr�rr9r6r6r7�
test_procsmem�s
zTestScripts.test_procsmemcCs|�d�dS)Nz
killall.py�rr9r6r6r7�test_killall�szTestScripts.test_killallcCs|�d�dS)Nz	nettop.pyr&r9r6r6r7�test_nettop�szTestScripts.test_nettopcCs|�d�dS)Nztop.pyr&r9r6r6r7�test_top�szTestScripts.test_topcCs|�d�dS)Nziotop.pyr&r9r6r6r7�
test_iotop�szTestScripts.test_iotopcCs,|�dt�����}|�tt���|�dS)Nzpidof.py)rr"r#rr%r&r.r/)r2�outputr6r6r7�
test_pidof�szTestScripts.test_pidofzWINDOWS onlycCs|�d�dS)Nzwinservices.pyrr9r6r6r7�test_winservices�szTestScripts.test_winservicescCs|�d�dS)Nzcpu_distribution.pyr&r9r6r6r7�test_cpu_distribution�sz!TestScripts.test_cpu_distributioncCs t��s|�d�|�d�dS)Nzno temperaturesztemperatures.py)r"Zsensors_temperaturesr�rr9r6r6r7�test_temperatures�s
zTestScripts.test_temperaturescCs t��s|�d�|�d�dS)Nzno fanszfans.py)r"Zsensors_fansr�rr9r6r6r7�	test_fans�s
zTestScripts.test_fansz
no batterycCs|�d�dS)Nz
battery.pyrr9r6r6r7�test_battery�szTestScripts.test_batterycCs|�d�dS)Nz
sensors.pyrr9r6r6r7�test_sensors�szTestScripts.test_sensors)N)+r|r}r~r_�staticmethodrrrrr�rrrrrrrr"r�rrr r!r"r
r#r%r'r(r)r*r,rr-r.rr/rr0rrr1r2r6r6r6r7r�~sN








r��__main__)�
run_from_name)5r_r�collectionsr�r�r.r�r�r�sysr"rrrr�rrrrZpsutil._compatr	Zpsutil.testsr
rrr
rrrrrrrrrrrrrriZ	PYTHON_39r�
namedtupler�r�r�r�r�r�r|Zpsutil.tests.runnerr5r�r6r6r6r7�<module>sfSp�