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



Cs[%@sdZddlZddlZddlZddlZddlmZddlmZddlmZddlm	Z	ddlm
Z
ddlmZdd	lmZdd
lm
Z
ddlmZddlmZerejd
ndZddZddZddZejedGdddejZejedGdddejZejedGdddejZedkre
edS)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|}|jd}yt|SWntk
rB|SYnXdS)zmExpects a sysctl command with an argument and parse the result
    returning only the value of interest.
    N)r
splitint
ValueError)cmdlineoutresultr/test_osx.pysysctls
rcCsbtd}x0|jdD]}||krPqWtdttjd|jdtS)z)Wrapper around 'vm_stat' cmdline utility.vm_stat
zline not foundz\d+r)r
rrrresearchgroupPAGESIZE)Zfieldrlinerrrr)src	
CsEddi}|}d}xT|r7|dd
jsM|dd
dkrn||d7}|d
d}qWt|}|j}x\|jD]\}}||krPqW|dkr|d}|j}ntd||dd
i}x:t|d
dD]"\}}d
|d
d>||<q
Wt|||S)NZ	customaryBKMGTPEZYrr
.kzcan't interpret %r
)	rrr r!r"r#r$r%r&)isdigitfloatstripitemsupperr	enumerater)	sZSYMBOLSZinitnumZletternameZssetprefixirrrhuman2bytes5s&5
#r6z
MACOS onlyc@s@eZdZeddZeddZddZdS)TestProcesscCstj|_dS)N)rpid)clsrrr
setUpClassRszTestProcess.setUpClasscCstdS)N)r)r9rrr
tearDownClassVszTestProcess.tearDownClasscCstd|j}|jddj}|jdd	}|jdd
}tj|jj}|j|t	j
dt	j||j|t	j
dt	j|dS)Nzps -o lstart -p %sZSTARTEDr' r
z%H:%M:%Sz%Y)r
r8replacer-rpsutilProcesscreate_timeassertEqualtimestrftime	localtime)selfoutputZstart_psZhhmmssZyearZstart_psutilrrrtest_process_create_timeZsz$TestProcess.test_process_create_timeN)__name__
__module____qualname__classmethodr:r;rJrrrrr7Osr7c@seZdZeddZeddZddZddZd	d
ZddZ	d
dZ
ddZddZddZ
ddZddZddZddZddZdd Zd!S)"TestZombieProcessAPIscCst}tj||_dS)N)rrArBp)r9Zzpidrrrr:ks	z TestZombieProcessAPIs.setUpClasscCstdddS)NZ	recursiveT)r)r9rrrr;psz#TestZombieProcessAPIs.tearDownClasscCsa|j|jjtj|jj|jj|jj|jj|jj	dS)N)
rDrPstatusrAZ
STATUS_ZOMBIEZppidZuidsZgidsZterminalrC)rHrrrtest_pidtask_infots



z'TestZombieProcessAPIs.test_pidtask_infocCs|jtj|jjdS)N)assertRaisesrA
ZombieProcessrPZexe)rHrrrtest_exe|szTestZombieProcessAPIs.test_execCs|jtj|jjdS)N)rSrArTrPr)rHrrrtest_cmdlinesz"TestZombieProcessAPIs.test_cmdlinecCs|jtj|jjdS)N)rSrArTrPenviron)rHrrrtest_environsz"TestZombieProcessAPIs.test_environcCs|jtj|jjdS)N)rSrArTrPcwd)rHrrrtest_cwdszTestZombieProcessAPIs.test_cwdcCs|jtj|jjdS)N)rSrArTrPZmemory_full_info)rHrrrtest_memory_full_infosz+TestZombieProcessAPIs.test_memory_full_infocCs|jtj|jjdS)N)rSrArTrPZ	cpu_times)rHrrrtest_cpu_timessz$TestZombieProcessAPIs.test_cpu_timescCs|jtj|jjdS)N)rSrArTrPZnum_ctx_switches)rHrrrtest_num_ctx_switchessz+TestZombieProcessAPIs.test_num_ctx_switchescCs|jtj|jjdS)N)rSrArTrPZnum_threads)rHrrrtest_num_threadssz&TestZombieProcessAPIs.test_num_threadscCs|jtj|jjdS)N)rSrArTrPZ
open_files)rHrrrtest_open_filessz%TestZombieProcessAPIs.test_open_filescCs|jtj|jjdS)N)rSrArTrPZconnections)rHrrrtest_connectionssz&TestZombieProcessAPIs.test_connectionscCs|jtj|jjdS)N)rSrArTrPZnum_fds)rHrrrtest_num_fdssz"TestZombieProcessAPIs.test_num_fdscCs&|jtjtjf|jjdS)N)rSrArTZAccessDeniedrPthreads)rHrrrtest_threadssz"TestZombieProcessAPIs.test_threadscCs|jtj|jjdS)N)rSrArTrPZmemory_maps)rHrrrtest_memory_mapssz&TestZombieProcessAPIs.test_memory_mapsN)rKrLrMrNr:r;rRrUrVrXrZr[r\r]r^r_r`rarcrdrrrrrOhs rOc@s
eZdZddZddZddZddZd	d
ZeddZ	ed
dZ
eddZeddZeddZ
eddZeddZddZejedddZdS)TestSystemAPIscCsdd}xtjddD]}tj|j}||j\}}}}|j|j||j|j|t|j|d	kr|j	d|j|t|j
|dkr|j	d|j
|qWdS)NcSstd|j}|jd}|jd|jd}|jdd\}}}}|dkrud}t|d}t|d}t|d}||||fS)Nz
df -k "%s"rrZnoner'i)r
r-rpopr)pathrlinesrdevtotalusedfreerrrdfs
"z%TestSystemAPIs.test_disks.<locals>.dfallFr*izpsutil=%s, df=%si(ii(i)rAZdisk_partitions
disk_usageZ
mountpointrDZdevicerkabsrmZfailrl)rHrnpartusagerjrkrlrmrrr
test_diskss
zTestSystemAPIs.test_diskscCs,td}|j|tjdddS)Nzsysctl hw.logicalcpulogicalT)rrDrA	cpu_count)rHr2rrrtest_cpu_count_logicalsz%TestSystemAPIs.test_cpu_count_logicalcCs,td}|j|tjdddS)Nzsysctl hw.physicalcpuruF)rrDrArv)rHr2rrrtest_cpu_count_physicalsz&TestSystemAPIs.test_cpu_count_physicalcCsstj}|j|jddtd|j|jddtd|j|jddtddS)Nizsysctl hw.cpufrequencyzsysctl hw.cpufrequency_minzsysctl hw.cpufrequency_max)rAZcpu_freqrDcurrentrminmax)rHZfreqrrr
test_cpu_freqszTestSystemAPIs.test_cpu_freqcCs)td}|j|tjjdS)Nzsysctl hw.memsize)rrDrAvirtual_memoryrk)rHZsysctl_hwphymemrrrtest_vmem_totalszTestSystemAPIs.test_vmem_totalcCs5td}tjj}|j||dtdS)Nrmdelta)rrAr}rmassertAlmostEqualr)rH
vmstat_val
psutil_valrrrtest_vmem_freeszTestSystemAPIs.test_vmem_freecCs?tdtd}tjj}|j||dtdS)Ninactivermr)rrAr}Z	availablerr)rHrrrrrtest_vmem_availablesz"TestSystemAPIs.test_vmem_availablecCs5td}tjj}|j||dtdS)Nactiver)rrAr}rrr)rHrrrrrtest_vmem_activeszTestSystemAPIs.test_vmem_activecCs5td}tjj}|j||dtdS)Nrr)rrAr}rrr)rHrrrrrtest_vmem_inactivesz!TestSystemAPIs.test_vmem_inactivecCs5td}tjj}|j||dtdS)Nwiredr)rrAr}rrr)rHrrrrrtest_vmem_wiredszTestSystemAPIs.test_vmem_wiredcCs/td}tjj}|j||dS)NZPageins)rrAswap_memorysinrD)rHrrrrrtest_swapmem_sinszTestSystemAPIs.test_swapmem_sincCs/td}tjj}|j||dS)NZPageout)rrArZsoutrD)rHrrrrrtest_swapmem_soutsz TestSystemAPIs.test_swapmem_soutcCsxtjjD]}\}}ytd|}Wntk
rGYqX|j|jd|kd||j|jtt	j
d|dqWdS)Nzifconfig %sRUNNINGmsgz	mtu (\d+)r)rAZnet_if_statsr.r
RuntimeErrorrDZisupZmturrfindall)rHr3Zstatsrrrrtest_net_if_statss
z TestSystemAPIs.test_net_if_statsz
no batterycCstd}tjd|jd}tjd|jd}|dk}tj}|j|j||j|jt	|dS)Nz
pmset -g battz(\d+)%r
zNow drawing from '([^']+)'zAC Power)
r
rrrrAZsensors_batteryrD
power_pluggedpercentr)rHrrZdrawing_fromrZ
psutil_resultrrrtest_sensors_battery#sz#TestSystemAPIs.test_sensors_batteryN)rKrLrMrtrwrxr|r~rrrrrrrrrrskipIfrrrrrrres
re__main__)__doc__osrrErArZpsutil.testsrrrrrrr	r
rsysconfrrrr6rZTestCaser7rOrerK__file__rrrr<module>s4<
Back to Directory File Manager