
    /h8                         d Z ddl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 ej        	                    e d           G d	 d
e                      Z
dS )zAIX specific tests.    N)AIX)PsutilTestCase)pytest)shzAIX only)reasonc                   ,    e Zd Zd Zd Zd Zd Zd ZdS )AIXSpecificTestCasec                    t          d          }d}dD ]}|d| dz  }t          j        ||          }|J d}t          |                    d                    |z  }t          |                    d                    |z  }t          |                    d	                    |z  }t          |                    d
                    |z  }	t          j                    }
d|z  |z  }|
j        |k    sJ t          |
j	        |z
            |k     sJ t          |
j
        |z
            |k     sJ t          |
j        |	z
            |k     sJ d S )Nz/usr/bin/svmon -O unit=KBz	memory\s*)sizeinusefreepinvirtual	availablemmode(?P<>\S+)\s+i   r   r   r   r      )r   researchintgrouppsutilvirtual_memorytotalabsusedr   r   )selfout
re_patternfieldmatchobjKBr   r   r   r   psutil_resultTOLERANCE_SYS_MEMs               H/var/www/html/venv/lib/python3.11/site-packages/psutil/tests/test_aix.pytest_virtual_memoryz'AIXSpecificTestCase.test_virtual_memory   sx   ,--!

 		2 		2E 1%1111JJ9Z--###HNN6**++b0{3344r9	8>>'**++b08>>&))**R/-//
 FRK"e++++=%,--0AAAAA=*Y677:KKKKK=%,--0AAAAAAA    c                     t          d          }t          j        d|          }|J t          |                    d                    }d}t          j                    }t          |j        |z            |k    sJ d S )Nz/usr/sbin/lsps -az=(?P<space>\S+)\s+(?P<vol>\S+)\s+(?P<vg>\S+)\s+(?P<size>\d+)MBr   i   )r   r   r   r   r   r   swap_memoryr   )r   r   r"   total_mbMBr$   s         r&   test_swap_memoryz$AIXSpecificTestCase.test_swap_memory8   s    $%%
 9 
 
 ###x~~f--..*,, =&+,,888888r(   c                    t          d          }d}dD ]}|d| dz  }t          j        ||          }|J d}t          j                    }t          |j        t          |                    d                    z
            |k     sJ t          |j	        t          |                    d                    z
            |k     sJ t          |j
        t          |                    d	                    z
            |k     sJ t          |j        t          |                    d
                    z
            |k     sJ d S )N/usr/bin/mpstat -azALL\s*)minmajmpcsmpcrdevsoftdecphcsicsboundrqpushS3pullS3grdS0rdS1rdS2rdS3rdS4rdS5rdsyscr   r   i  r8   rE   r4   r5   )r   r   r   r   	cpu_statsr   ctx_switchesr   r   syscalls
interruptssoft_interrupts)r   r   r    r!   r"   CPU_STATS_TOLERANCEr$   s          r&   test_cpu_statsz"AIXSpecificTestCase.test_cpu_statsO   s{   %&&

 	2 	2E0 1%1111JJ9Z--### #(***S1E1E-F-FFGG!" " " " &X^^F-C-C)D)DDEE!" " " " (3x~~e/D/D+E+EEFF!" " " " -HNN64J4J0K0KKLL!" " " " " "r(   c                     t          d          }t          t          j        d|                              d                    }t          j        d          }||k    sJ d S )Nr/   z
lcpu=(\d+)   T)logical)r   r   r   r   r   r   	cpu_count)r   r   mpstat_lcpupsutil_lcpus       r&   test_cpu_count_logicalz*AIXSpecificTestCase.test_cpu_count_logical   sa    %&&")M377==a@@AA&t444k))))))r(   c                     t          d          }t          |                                          }t          t          j                                                              }||k    sJ d S )Nz/etc/ifconfig -l)r   setsplitr   net_if_addrskeys)r   r   ifconfig_namespsutil_namess       r&   test_net_if_addrs_namesz+AIXSpecificTestCase.test_net_if_addrs_names   s^    #$$SYY[[))6.00557788------r(   N)__name__
__module____qualname__r'   r-   rL   rS   r[    r(   r&   r	   r	      sd         B  B  BD9 9 9.3
 3
 3
j* * *. . . . .r(   r	   )__doc__r   r   r   psutil.testsr   r   r   markskipifr	   r_   r(   r&   <module>rd      s      				        ' ' ' ' ' '             GJ//y. y. y. y. y.. y. y. 0/y. y. y.r(   