Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/site-packages/psutil/tests/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/site-packages/psutil/tests/__pycache__/test_osx.cpython-35.pyc



Cs[�%�@s�dZddlZddlZddlZddlZddlmZddlmZddlmZddlm	Z	ddlm
Z
ddlmZdd	lmZdd
lm
Z
ddlmZddlmZer�ejd
�ndZdd�Zdd�Zdd�Zejed�Gdd�dej��Zejed�Gdd�dej��Zejed�Gdd�dej��Zedkr�e
e�dS)zMACOS specific tests.�N)�MACOS)�create_zombie_proc)�get_test_subprocess)�HAS_BATTERY)�MEMORY_TOLERANCE)�
reap_children)�retry_before_failing)�run_test_module_by_name)�sh)�unittest�SC_PAGE_SIZEcCsGt|�}|j�d}yt|�SWntk
rB|SYnXdS)zmExpects a sysctl command with an argument and parse the result
    returning only the value of interest.
    �N)r
�split�int�
ValueError)�cmdline�out�result�r�H/opt/alt/python35/lib64/python3.5/site-packages/psutil/tests/test_osx.py�sysctls
rcCsbtd�}x0|jd�D]}||krPqWtd��ttjd|�jd��tS)z)Wrapper around 'vm_stat' cmdline utility.�vm_stat�
zline not foundz\d+r)r
rrr�re�search�group�PAGESIZE)�fieldr�linerrrr)src	
CsEddi}|}d}xT|r7|dd
�j�sM|dd
�dkrn||d7}|d
d�}qWt|�}|j�}x\|j�D]\}}||kr�Pq�W|dkr�|d}|j�}ntd|��|dd
i}x:t|d
d��D]"\}}d
|d
d>||<q
Wt|||�S)NZ	customary�B�K�M�G�T�P�E�Z�Y�rr
�.�kzcan't interpret %r�
)	rr r!r"r#r$r%r&r')�isdigit�float�strip�items�upperr�	enumerater)	�sZSYMBOLS�init�num�letter�nameZsset�prefix�irrr�human2bytes5s&5
#r9z
MACOS onlyc@s@eZdZedd��Zedd��Zdd�ZdS)�TestProcesscCst�j|_dS)N)r�pid)�clsrrr�
setUpClassRszTestProcess.setUpClasscCst�dS)N)r)r<rrr�
tearDownClassVszTestProcess.tearDownClasscCs�td|j�}|jdd�j�}|jd�d	}|jd�d
}tj|j�j�}|j|t	j
dt	j|���|j|t	j
dt	j|���dS)Nzps -o lstart -p %sZSTARTEDr(� �r
z%H:%M:%Sz%Y������)r
r;�replacer.r�psutil�Process�create_time�assertEqual�time�strftime�	localtime)�self�outputZstart_psZhhmmss�yearZstart_psutilrrr�test_process_create_timeZsz$TestProcess.test_process_create_timeN)�__name__�
__module__�__qualname__�classmethodr=r>rNrrrrr:Osr:c@s�eZdZedd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!S)"�TestZombieProcessAPIscCst�}tj|�|_dS)N)rrDrE�p)r<Zzpidrrrr=ks	z TestZombieProcessAPIs.setUpClasscCstdd�dS)N�	recursiveT)r)r<rrrr>psz#TestZombieProcessAPIs.tearDownClasscCsa|j|jj�tj�|jj�|jj�|jj�|jj�|jj	�dS)N)
rGrT�statusrD�
STATUS_ZOMBIEZppidZuidsZgids�terminalrF)rKrrr�test_pidtask_infots



z'TestZombieProcessAPIs.test_pidtask_infocCs|jtj|jj�dS)N)�assertRaisesrD�
ZombieProcessrTZexe)rKrrr�test_exe|szTestZombieProcessAPIs.test_execCs|jtj|jj�dS)N)rZrDr[rTr)rKrrr�test_cmdlinesz"TestZombieProcessAPIs.test_cmdlinecCs|jtj|jj�dS)N)rZrDr[rT�environ)rKrrr�test_environ�sz"TestZombieProcessAPIs.test_environcCs|jtj|jj�dS)N)rZrDr[rT�cwd)rKrrr�test_cwd�szTestZombieProcessAPIs.test_cwdcCs|jtj|jj�dS)N)rZrDr[rTZmemory_full_info)rKrrr�test_memory_full_info�sz+TestZombieProcessAPIs.test_memory_full_infocCs|jtj|jj�dS)N)rZrDr[rTZ	cpu_times)rKrrr�test_cpu_times�sz$TestZombieProcessAPIs.test_cpu_timescCs|jtj|jj�dS)N)rZrDr[rTZnum_ctx_switches)rKrrr�test_num_ctx_switches�sz+TestZombieProcessAPIs.test_num_ctx_switchescCs|jtj|jj�dS)N)rZrDr[rTZnum_threads)rKrrr�test_num_threads�sz&TestZombieProcessAPIs.test_num_threadscCs|jtj|jj�dS)N)rZrDr[rTZ
open_files)rKrrr�test_open_files�sz%TestZombieProcessAPIs.test_open_filescCs|jtj|jj�dS)N)rZrDr[rTZconnections)rKrrr�test_connections�sz&TestZombieProcessAPIs.test_connectionscCs|jtj|jj�dS)N)rZrDr[rTZnum_fds)rKrrr�test_num_fds�sz"TestZombieProcessAPIs.test_num_fdscCs&|jtjtjf|jj�dS)N)rZrDr[ZAccessDeniedrT�threads)rKrrr�test_threads�sz"TestZombieProcessAPIs.test_threadscCs|jtj|jj�dS)N)rZrDr[rTZmemory_maps)rKrrr�test_memory_maps�sz&TestZombieProcessAPIs.test_memory_mapsN)rOrPrQrRr=r>rYr\r]r_rarbrcrdrerfrgrhrjrkrrrrrShs rSc@s
eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Ze�dd��Z	e�d
d��Z
e�dd��Ze�dd��Ze�dd��Z
e�dd��Ze�dd��Zdd�Zejed�dd��ZdS)�TestSystemAPIscCs�dd�}x�tjdd�D]�}tj|j�}||j�\}}}}|j|j|�|j|j|�t|j|�d	kr�|j	d|j|�t|j
|�dkr|j	d|j
|�qWdS)NcSs�td|�j�}|jd�}|jd�|jd�}|j�dd�\}}}}|dkrud}t|�d}t|�d}t|�d}||||fS)Nz
df -k "%s"rr�Znoner(i)r
r.r�popr)�pathr�linesr�dev�total�used�freerrr�df�s
"z%TestSystemAPIs.test_disks.<locals>.df�allFr+izpsutil=%s, df=%si(i�i(i�)rDZdisk_partitions�
disk_usage�
mountpointrG�devicerr�absrtZfailrs)rKru�part�usagerqrrrsrtrrr�
test_disks�s
zTestSystemAPIs.test_diskscCs,td�}|j|tjdd��dS)Nzsysctl hw.logicalcpu�logicalT)rrGrD�	cpu_count)rKr4rrr�test_cpu_count_logical�sz%TestSystemAPIs.test_cpu_count_logicalcCs,td�}|j|tjdd��dS)Nzsysctl hw.physicalcpur~F)rrGrDr)rKr4rrr�test_cpu_count_physical�sz&TestSystemAPIs.test_cpu_count_physicalcCsstj�}|j|jddtd��|j|jddtd��|j|jddtd��dS)Ni�zsysctl hw.cpufrequencyzsysctl hw.cpufrequency_minzsysctl hw.cpufrequency_max)rDZcpu_freqrG�currentr�min�max)rKZfreqrrr�
test_cpu_freq�szTestSystemAPIs.test_cpu_freqcCs)td�}|j|tj�j�dS)Nzsysctl hw.memsize)rrGrD�virtual_memoryrr)rKZsysctl_hwphymemrrr�test_vmem_total�szTestSystemAPIs.test_vmem_totalcCs5td�}tj�j}|j||dt�dS)Nrt�delta)rrDr�rt�assertAlmostEqualr)rK�
vmstat_val�
psutil_valrrr�test_vmem_free�szTestSystemAPIs.test_vmem_freecCs?td�td�}tj�j}|j||dt�dS)N�inactivertr�)rrDr��	availabler�r)rKr�r�rrr�test_vmem_available�sz"TestSystemAPIs.test_vmem_availablecCs5td�}tj�j}|j||dt�dS)N�activer�)rrDr�r�r�r)rKr�r�rrr�test_vmem_active�szTestSystemAPIs.test_vmem_activecCs5td�}tj�j}|j||dt�dS)Nr�r�)rrDr�r�r�r)rKr�r�rrr�test_vmem_inactive�sz!TestSystemAPIs.test_vmem_inactivecCs5td�}tj�j}|j||dt�dS)N�wiredr�)rrDr�r�r�r)rKr�r�rrr�test_vmem_wired�szTestSystemAPIs.test_vmem_wiredcCs/td�}tj�j}|j||�dS)NZPageins)rrD�swap_memory�sinrG)rKr�r�rrr�test_swapmem_sin�szTestSystemAPIs.test_swapmem_sincCs/td�}tj�j}|j||�dS)NZPageout)rrDr��soutrG)rKr�r�rrr�test_swapmem_soutsz TestSystemAPIs.test_swapmem_soutcCs�x�tj�j�D]}\}}ytd|�}Wntk
rGYqX|j|jd|kd|�|j|jtt	j
d|�d��qWdS)Nzifconfig %sZRUNNING�msgz	mtu (\d+)r)rDZnet_if_statsr/r
�RuntimeErrorrG�isup�mturr�findall)rKr6Zstatsrrrr�test_net_if_statss
z TestSystemAPIs.test_net_if_statsz
no batterycCs�td�}tjd|�jd�}tjd|�jd�}|dk}tj�}|j|j|�|j|jt	|��dS)Nz
pmset -g battz(\d+)%r
zNow drawing from '([^']+)'zAC Power)
r
rrrrDZsensors_batteryrG�
power_plugged�percentr)rKrr�Zdrawing_fromr�Z
psutil_resultrrr�test_sensors_battery#sz#TestSystemAPIs.test_sensors_batteryN)rOrPrQr}r�r�r�r�rr�r�r�r�r�r�r�r�r�skipIfrr�rrrrrl�s
rl�__main__)�__doc__�osrrHrDrZpsutil.testsrrrrrrr	r
r�sysconfrrrr9r�ZTestCaser:rSrlrO�__file__rrrr�<module>s4<�