<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
JZm                 @   sx   d Z ddlZddlmZ ddlmZ ddlmZ ddlmZ ddlZeje dG dd	 d	ej	Z
ed
krtee dS )zAIX specific tests.    N)AIX)run_test_module_by_name)sh)unittestzAIX onlyc               @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )AIXSpecificTestCasec             C   s   t d}d}xdj D ]}|d|f 7 }qW tj||}| j|d d}t|jd| }t|jd| }t|jd	| }t|jd
| }	tj }
d| | }| j	|
j
| | j|
j||d | j|
j||d | j|
j|	|d d S )Nz/usr/bin/svmon -O unit=KBz	memory\s*z+size inuse free pin virtual available mmodez(?P<%s>\S+)\s+z(svmon command returned unexpected outputi   size	availableZinusefree   )delta)r   splitresearchassertIsNotNoneintgrouppsutilZvirtual_memoryassertEqualtotalassertAlmostEqualusedr   r	   )selfout
re_patternfieldmatchobjZKBr   r   r   r	   psutil_resultZMEMORY_TOLERANCE r    /usr/lib64/python3.6/test_aix.pytest_virtual_memory   s*    z'AIXSpecificTestCase.test_virtual_memoryc             C   sT   t d}tjd|}| j|d t|jd}d}tj }| jt|j	| | d S )Nz/usr/sbin/lsps -az=(?P<space>\S+)\s+(?P<vol>\S+)\s+(?P<vg>\S+)\s+(?P<size>\d+)MBz'lsps command returned unexpected outputr   i   r
   i   )
r   r   r   r   r   r   r   Zswap_memoryr   r   )r   r   r   Ztotal_mbZMBr   r   r   r   test_swap_memory4   s    z$AIXSpecificTestCase.test_swap_memoryc             C   s   t d}d}xdj D ]}|d|f 7 }qW tj||}| j|d d}tj }| j|jt	|j
d|d | j|jt	|j
d	|d | j|jt	|j
d
|d | j|jt	|j
d|d d S )Nz/usr/bin/mpstat -azALL\s*zfmin maj mpcs mpcr dev soft dec ph cs ics bound rq push S3pull S3grd S0rd S1rd S2rd S3rd S4rd S5rd syscz(?P<%s>\S+)\s+z)mpstat command returned unexpected outputi  Zcs)r   ZsyscZdevZsoft)r   r   r   r   r   r   Z	cpu_statsr   Zctx_switchesr   r   ZsyscallsZ
interruptsZsoft_interrupts)r   r   r   r   r   ZCPU_STATS_TOLERANCEr   r   r   r   test_cpu_statsI   s2    z"AIXSpecificTestCase.test_cpu_statsc             C   s:   t d}ttjd|jd}tjdd}| j|| d S )Nz/usr/bin/mpstat -az
lcpu=(\d+)   T)Zlogical)r   r   r   r   r   r   	cpu_countr   )r   r   Zmpstat_lcpuZpsutil_lcpur   r   r   test_cpu_count_logicalj   s    z*AIXSpecificTestCase.test_cpu_count_logicalc             C   s4   t d}t|j }ttj j }| j|| d S )Nz/etc/ifconfig -l)r   setr   r   Znet_if_addrskeysZassertSetEqual)r   r   Zifconfig_namesZpsutil_namesr   r   r   test_net_if_addrs_namesp   s    z+AIXSpecificTestCase.test_net_if_addrs_namesN)__name__
__module____qualname__r   r    r!   r$   r'   r   r   r   r   r      s
   !r   __main__)__doc__r   r   r   Zpsutil.testsr   r   r   ZskipIfZTestCaser   r(   __file__r   r   r   r   <module>   s   
c