
    Xh8                         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                  j                  e d       G d	 d
e             Z
y)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y)AIXSpecificTestCasec                 f   t        d      }d}dD ]  }|d| dz  } t        j                  ||      }|J d}t        |j	                  d            |z  }t        |j	                  d            |z  }t        |j	                  d	            |z  }t        |j	                  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 y )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               a/var/www/html/cjf29f/d23bf782/d32178f2/venv/lib/python3.12/site-packages/psutil/tests/test_aix.pytest_virtual_memoryz'AIXSpecificTestCase.test_virtual_memory   sJ   ,-!

 		2E T%11J		2 99Z-###HNN6*+b0{34r9	8>>'*+b08>>&)*R/--/
 FRK""e+++=%%,-0AAAA=**Y67:KKKK=%%,-0AAAA    c                     t        d      }t        j                  d|      }|J t        |j	                  d            }d}t        j                         }t        |j                  |z        |k(  sJ y )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{    $%
 99 
 ###x~~f-.**, =&&+,888r(   c                 F   t        d      }d}dD ]  }|d| dz  } t        j                  ||      }|J d}t        j                         }t        |j                  t        |j                  d            z
        |k  sJ t        |j                  t        |j                  d            z
        |k  sJ t        |j                  t        |j                  d	            z
        |k  sJ t        |j                  t        |j                  d
            z
        |k  sJ y )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>   %&

 	2E0 T%11J1	22 99Z-### #((***S1E-FFG!"	
" &&X^^F-C)DDE!"	
" ((3x~~e/D+EEF!"	
" --HNN64J0KKL!"	
"r(   c                     t        d      }t        t        j                  d|      j	                  d            }t        j                  d      }||k(  sJ y )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   sK    %&"))M37==a@A&&t4k)))r(   c                     t        d      }t        |j                               }t        t        j                         j                               }||k(  sJ y )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   sG    #$SYY[)6..05578---r(   N)__name__
__module____qualname__r'   r-   rL   rS   r[    r(   r&   r	   r	      s     BD9.3
j*.r(   r	   )__doc__r   r   r   psutil.testsr   r   r   markskipifr	   r_   r(   r&   <module>rd      sP     	   '   GJ/y.. y. 0y.r(   