§
    ±ÛgßN  ã                   ó4  — d Z ddlZddlZddlZddl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
 ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ er4ddlmZ  e¦   «         Z ej        ¦   «         dk    o ej        d¦  «        ZndZdZd„ Zd„ Zej                             e d¬¦  «         G d„ de¦  «        ¦   «         Zej                             e d¬¦  «         G d„ de¦  «        ¦   «         Zej                             e d¬¦  «         G d„ de¦  «        ¦   «         Z ej                             e
 d¬¦  «         G d„ de¦  «        ¦   «         Z!ej                             e	 d ¬¦  «         G d!„ d"e¦  «        ¦   «         Z"dS )#z$Tests specific to all BSD platforms.é    N)ÚBSD)ÚFREEBSD)ÚNETBSD)ÚOPENBSD)ÚHAS_BATTERY)ÚTOLERANCE_SYS_MEM)ÚPsutilTestCase)Úpytest)Úretry_on_failure)Úsh)Úspawn_testproc)Ú	terminate)ÚgetpagesizeÚmuseFc                 ó  — t          d| z   ¦  «        }t          r!||                     d¦  «        dz   d…         }n.t          st          r ||                     d¦  «        dz   d…         }	 t          |¦  «        S # t          $ r |cY S w xY w)zmExpects a sysctl command with an argument and parse the result
    returning only the value of interest.
    zsysctl z: é   Nú=é   )r   r   Úfindr   r   ÚintÚ
ValueError)ÚcmdlineÚresults     úK/granary/edev/quantum/lib/python3.11/site-packages/psutil/tests/test_bsd.pyÚsysctlr   ,   s¦   € õ �	˜GÑ#Ñ$Ô$€FÝð 0Ø˜Ÿš DÑ)Ô)¨AÑ-Ð/Ð/Ô0ˆˆÝ	ð 0•Fð 0Ø˜Ÿš CÑ(Ô(¨1Ñ,Ð.Ð.Ô/ˆðÝ�6‰{Œ{ÐøÝð ð ð Øˆˆˆðøøøs   Á*A9 Á9BÂBc                 óê   — t          d¦  «        }|                     d¦  «        D ]}|                     | ¦  «        r nŒt          d¦  «        ‚t	          |                     ¦   «         d         ¦  «        S )z+Thin wrapper around 'muse' cmdline utility.r   ú
zline not foundr   )r   ÚsplitÚ
startswithr   r   )ÚfieldÚoutÚlines      r   r   r   ;   so   € å
ˆV‰*Œ*€CØ—	’	˜$‘”ð +ð +ˆØ�?Š?˜5Ñ!Ô!ð 	ØˆEð	õ Ð)Ñ*Ô*Ð*Ýˆt�zŠz‰|Œ|˜AŒÑÔÐó    zBSD only©Úreasonc                   ó
  — e Zd ZdZed„ ¦   «         Zed„ ¦   «         Zej         	                    e
d¬¦  «        d„ ¦   «         Zd„ Zej         	                     ej        d¦  «         d	¬¦  «        d
„ ¦   «         Zej         	                     ej        d¦  «         d	¬¦  «        ej         	                    e
d¬¦  «        d„ ¦   «         ¦   «         Zej         	                     ej        d¦  «         d¬¦  «        d„ ¦   «         ZdS )ÚBSDTestCasez)Generic tests common to all BSD variants.c                 ó6   — t          ¦   «         j        | _        d S ©N©r   Úpid©Úclss    r   Ú
setUpClasszBSDTestCase.setUpClassO   ó   € å Ñ"Ô"Ô&ˆŒˆˆr#   c                 ó.   — t          | j        ¦  «         d S r)   ©r   r+   r,   s    r   ÚtearDownClasszBSDTestCase.tearDownClassS   ó   € å�#”'ÑÔÐÐÐr#   z -o lstart doesn't work on NETBSDr$   c                 ó8  — t          d| j        › �¦  «        }|                     dd¦  «                             ¦   «         }t	          j        | j        ¦  «                             ¦   «         }t          j        dt          j	        |¦  «        ¦  «        }||k    sJ ‚d S )Nzps -o lstart -p ÚSTARTEDÚ z%a %b %e %H:%M:%S %Y)
r   r+   ÚreplaceÚstripÚpsutilÚProcessÚcreate_timeÚtimeÚstrftimeÚ	localtime)ÚselfÚoutputÚstart_psÚstart_psutils       r   Útest_process_create_timez$BSDTestCase.test_process_create_timeW   s�   € åÐ1 t¤xÐ1Ð1Ñ2Ô2ˆØ—>’> )¨RÑ0Ô0×6Ò6Ñ8Ô8ˆÝ”~ d¤hÑ/Ô/×;Ò;Ñ=Ô=ˆÝ”}Ø"¥D¤N°<Ñ$@Ô$@ñ
ô 
ˆð ˜<Ò'Ð'Ð'Ð'Ð'Ð'r#   c                 ó¸  — d„ }t          j        d¬¦  «        D ]À}t          j        |j        ¦  «        } ||j        ¦  «        \  }}}}|j        |k    sJ ‚|j        |k    sJ ‚t          |j        |z
  ¦  «        dk    r |                      d|j        › d|› �¦  «        ‚t          |j	        |z
  ¦  «        dk    r |                      d|j	        › d|› �¦  «        ‚ŒÁd S )Nc                 ó”  — t          d| › d�¦  «                             ¦   «         }|                     d¦  «        }|                     d¦  «         |                     d¦  «        }|                     ¦   «         d d…         \  }}}}|dk    rd}t	          |¦  «        dz  }t	          |¦  «        dz  }t	          |¦  «        dz  }||||fS )	Nzdf -k "ú"r   r   é   Únoner6   é   )r   r8   r   Úpopr   )Úpathr!   Úlinesr"   ÚdevÚtotalÚusedÚfrees           r   Údfz"BSDTestCase.test_disks.<locals>.dfd   sÀ   € ÝÐ&˜tÐ&Ð&Ð&Ñ'Ô'×-Ò-Ñ/Ô/ˆCØ—I’I˜d‘O”OˆEØ�IŠI�a‰LŒLˆLØ—9’9˜Q‘<”<ˆDØ%)§Z¢Z¡\¤\°"°1°"Ô%5Ñ"ˆC�˜˜dØ�fŠ}ˆ}Ø�Ý˜‘J”J Ñ%ˆEÝ�t‘9”9˜tÑ#ˆDÝ�t‘9”9˜tÑ#ˆDØ˜˜t TÐ)Ð)r#   F)Úalli    zpsutil=z, df=)
r9   Údisk_partitionsÚ
disk_usageÚ
mountpointÚdevicerN   ÚabsrP   ÚfailrO   )r?   rQ   ÚpartÚusagerM   rN   rO   rP   s           r   Ú
test_diskszBSDTestCase.test_disksa   s  € ð	*ð 	*ð 	*õ Ô*¨uÐ5Ñ5Ô5ð 		Cð 		CˆDÝÔ% d¤oÑ6Ô6ˆEØ%' R¨¬Ñ%8Ô%8Ñ"ˆC�˜˜dØ”; #Ò%Ð%Ð%Ð%Ø”; %Ò'Ð'Ð'Ð'å�5”: Ñ$Ñ%Ô%Ð(8Ò8Ð8Ø—i’iÐ A¨%¬*Ð AÐ A¸4Ð AÐ AÑBÔBÐBÝ�5”: Ñ$Ñ%Ô%Ð(8Ò8Ð8Ø—i’iÐ A¨%¬*Ð AÐ A¸4Ð AÐ AÑBÔBÐBð 9ð		Cð 		Cr#   r   zsysctl cmd not availablec                 óZ   — t          d¦  «        }t          j        d¬¦  «        |k    sJ ‚d S )Nzhw.ncpuT)Úlogical)r   r9   Ú	cpu_count©r?   Úsysts     r   Útest_cpu_count_logicalz"BSDTestCase.test_cpu_count_logical|   s6   € õ �iÑ Ô ˆÝÔ¨Ð-Ñ-Ô-°Ò5Ð5Ð5Ð5Ð5Ð5r#   zskipped on NETBSDc                 ó`   — t          d¦  «        }|t          j        ¦   «         j        k    sJ ‚d S )Nz
hw.physmem)r   r9   Úvirtual_memoryrN   ©r?   Únums     r   Útest_virtual_memory_totalz%BSDTestCase.test_virtual_memory_totalƒ   s4   € õ �\Ñ"Ô"ˆØ•fÔ+Ñ-Ô-Ô3Ò3Ð3Ð3Ð3Ð3Ð3r#   Úifconfigzifconfig cmd not availablec                 ó.  — t          j        ¦   «                              ¦   «         D ]n\  }}	 t          d|› �¦  «        }|j        d|v k    sJ ‚d|v r3|j        t          t          j        d|¦  «        d         ¦  «        k    sJ ‚Œ_# t          $ r Y Œkw xY wd S )Nz	ifconfig ÚRUNNINGÚmtuz	mtu (\d+)r   )
r9   Únet_if_statsÚitemsr   Úisuprj   r   ÚreÚfindallÚRuntimeError)r?   ÚnameÚstatsr!   s       r   Útest_net_if_statszBSDTestCase.test_net_if_stats�   sÈ   € õ "Ô.Ñ0Ô0×6Ò6Ñ8Ô8ð 	Nð 	N‰KˆD�%ðNÝÐ+ TÐ+Ð+Ñ,Ô,�ð ”z i°3Ð&6Ò7Ð7Ð7Ð7Ø˜C�<�<Ø œ9­­B¬J°|ÀSÑ,IÔ,IÈ!Ô,LÑ(MÔ(MÒMÐMÐMÐMøøõ  ð ð ð Ø�ðøøøð	Nð 	Ns   ¬BÂ
BÂBN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úclassmethodr.   r2   r
   ÚmarkÚskipifr   rC   r[   ÚshutilÚwhichra   rf   rs   © r#   r   r'   r'   K   s¢  € € € € € à3Ð3àð'ð 'ñ „[ð'ð ðð ñ „[ðð „[×Ò˜Ð'IÐÑJÔJð(ð (ñ KÔJð(ðCð Cð Cð6 „[×ÒØˆFŒL˜Ñ"Ô"Ð"Ð+Eð ñ ô ð6ð 6ñô ð6ð „[×ÒØˆFŒL˜Ñ"Ô"Ð"Ð+Eð ñ ô ð „[×ÒØÐ*ð ñ ô ð4ð 4ñô ñô ð4ð „[×ÒØˆFŒL˜Ñ$Ô$Ð$Ð-Ið ñ ô ð	Nð 	Nñô ð	Nð 	Nð 	Nr#   r'   zFREEBSD onlyc                   ó¾   — e Zd Zed„ ¦   «         Zed„ ¦   «         Z e¦   «         d„ ¦   «         Zd„ Zd„ Z	d„ Z
 e¦   «         d„ ¦   «         Z e¦   «         d„ ¦   «         Zd	S )
ÚFreeBSDPsutilTestCasec                 ó6   — t          ¦   «         j        | _        d S r)   r*   r,   s    r   r.   z FreeBSDPsutilTestCase.setUpClass£   r/   r#   c                 ó.   — t          | j        ¦  «         d S r)   r1   r,   s    r   r2   z#FreeBSDPsutilTestCase.tearDownClass§   r3   r#   c                 ó  — t          d| j        › �¦  «        }t          j        | j        ¦  «                             d¬¦  «        }|                     d¦  «        dd …         }|r©|                     ¦   «         }|                     ¦   «         }|d d…         \  }}}}	}
|                     ¦   «         }|› d|› �|j        k    sJ ‚t          |
¦  «        |j	        k    sJ ‚|j
                             d¦  «        s|d	         |j
        k    sJ ‚|°§d S d S )
Nzprocstat -v F)Úgroupedr   r   é   ú-ú[é
   )r   r+   r9   r:   Úmemory_mapsr   rJ   Úaddrr   ÚrssrK   r   )r?   r!   ÚmapsrL   r"   ÚfieldsÚ_ÚstartÚstopÚ_permsÚresÚmaps               r   Útest_memory_mapsz&FreeBSDPsutilTestCase.test_memory_maps«   s"  € åÐ* ¤Ð*Ð*Ñ+Ô+ˆÝŒ~˜dœhÑ'Ô'×3Ò3¸EÐ3ÑBÔBˆØ—	’	˜$‘”   Ô#ˆØð 	.Ø—9’9‘;”;ˆDØ—Z’Z‘\”\ˆFØ*0°°!°¬*Ñ'ˆAˆu�d˜F CØ—(’(‘*”*ˆCØÐ$Ð$˜dÐ$Ð$¨¬Ò0Ð0Ð0Ð0Ý�s‘8”8˜sœwÒ&Ð&Ð&Ð&Ø”8×&Ò& sÑ+Ô+ð .Ø˜b”z S¤XÒ-Ð-Ð-Ð-ð ð 	.ð 	.ð 	.ð 	.ð 	.r#   c                 óø   — t          d| j        › �¦  «        }t          j        | j        ¦  «                             ¦   «         |                     d¦  «        d                              ¦   «         d         k    sJ ‚d S )Nzprocstat -b r   r   éÿÿÿÿ)r   r+   r9   r:   Úexer   ©r?   r!   s     r   Útest_exezFreeBSDPsutilTestCase.test_exeº   si   € ÝÐ* ¤Ð*Ð*Ñ+Ô+ˆÝŒ~˜dœhÑ'Ô'×+Ò+Ñ-Ô-°·²¸4±´ÀÔ1C×1IÒ1IÑ1KÔ1KÈBÔ1OÒOÐOÐOÐOÐOÐOr#   c                 óH  — t          d| j        › �¦  «        }d                     t          j        | j        ¦  «                             ¦   «         ¦  «        d                     |                     d¦  «        d                              ¦   «         dd …         ¦  «        k    sJ ‚d S )Nzprocstat -c ú r   r   r   )r   r+   Újoinr9   r:   r   r   r—   s     r   Útest_cmdlinez"FreeBSDPsutilTestCase.test_cmdline¾   s˜   € ÝÐ* ¤Ð*Ð*Ñ+Ô+ˆØ�xŠx�œ t¤xÑ0Ô0×8Ò8Ñ:Ô:Ñ;Ô;¸s¿xºxØ�IŠI�d‰OŒO˜AÔ×$Ò$Ñ&Ô& q r rÔ*ñ@
ô @
ò 
ð 
ð 
ð 
ð 
ð 
r#   c                 óf  — t          d| j        › �¦  «        }|                     d¦  «        d                              ¦   «         dd…         \  }}}}}}t          j        | j        ¦  «        }|                     ¦   «         }	|                     ¦   «         }
|	j        t          |¦  «        k    sJ ‚|	j	        t          |¦  «        k    sJ ‚|	j
        t          |¦  «        k    sJ ‚|
j        t          |¦  «        k    sJ ‚|
j	        t          |¦  «        k    sJ ‚|
j
        t          |¦  «        k    sJ ‚d S )Nzprocstat -s r   r   r   é   )r   r+   r   r9   r:   ÚuidsÚgidsÚrealr   Ú	effectiveÚsaved)r?   r!   ÚeuidÚruidÚsuidÚegidÚrgidÚsgidÚprŸ   r    s              r   Útest_uids_gidsz$FreeBSDPsutilTestCase.test_uids_gidsÄ   s  € ÝÐ* ¤Ð*Ð*Ñ+Ô+ˆØ-0¯YªY°t©_¬_¸QÔ-?×-EÒ-EÑ-GÔ-GÈÈ!ÈÔ-LÑ*ˆˆd�D˜$  dÝŒN˜4œ8Ñ$Ô$ˆØ�vŠv‰xŒxˆØ�vŠv‰xŒxˆØŒy�C ™IœIÒ%Ð%Ð%Ð%ØŒ~¥ T¡¤Ò*Ð*Ð*Ð*ØŒz�S ™YœYÒ&Ð&Ð&Ð&ØŒy�C ™IœIÒ%Ð%Ð%Ð%ØŒ~¥ T¡¤Ò*Ð*Ð*Ð*ØŒz�S ™YœYÒ&Ð&Ð&Ð&Ð&Ð&r#   c                 ó°  — g }t          d| j        › �¦  «        }t          j        | j        ¦  «        }|                     d¦  «        D ]ë}|                     ¦   «                              ¦   «         }d|v r^t          |                     ¦   «         d         ¦  «        }|                     ¦   «         j	        }||k    sJ ‚| 
                    d ¦  «         ŒŠd|v r]t          |                     ¦   «         d         ¦  «        }|                     ¦   «         j        }||k    sJ ‚| 
                    d ¦  «         Œìt          |¦  «        dk    rt          d¦  «        ‚d S )Núprocstat -r r   z voluntary contextr•   z involuntary contextr   ú)couldn't find lines match in procstat out)r   r+   r9   r:   r   Úlowerr8   r   Únum_ctx_switchesÚ	voluntaryÚappendÚinvoluntaryÚlenrp   ©r?   Útestedr!   rª   r"   Úpstat_valueÚpsutil_values          r   Útest_ctx_switchesz'FreeBSDPsutilTestCase.test_ctx_switchesÑ   sF  € àˆÝÐ* ¤Ð*Ð*Ñ+Ô+ˆÝŒN˜4œ8Ñ$Ô$ˆØ—I’I˜d‘O”Oð 	$ð 	$ˆDØ—:’:‘<”<×%Ò%Ñ'Ô'ˆDØ# tÐ+Ð+Ý! $§*¢*¡,¤,¨rÔ"2Ñ3Ô3�Ø ×1Ò1Ñ3Ô3Ô=�Ø" lÒ2Ð2Ð2Ð2Ø—’˜dÑ#Ô#Ð#Ð#Ø'¨4Ð/Ð/Ý! $§*¢*¡,¤,¨rÔ"2Ñ3Ô3�Ø ×1Ò1Ñ3Ô3Ô?�Ø" lÒ2Ð2Ð2Ð2Ø—’˜dÑ#Ô#Ð#øÝˆv‰;Œ;˜!ÒÐÝÐJÑKÔKÐKð Ðr#   c                 ó$  — g }t          d| j        › �¦  «        }t          j        | j        ¦  «        }|                     d¦  «        D �]$}|                     ¦   «                              ¦   «         }d|v rzt          d|                     ¦   «         d                              d¦  «        d         z   ¦  «        }|                     ¦   «         j	        }||k    sJ ‚| 
                    d ¦  «         Œ§d|v ryt          d|                     ¦   «         d                              d¦  «        d         z   ¦  «        }|                     ¦   «         j        }||k    sJ ‚| 
                    d ¦  «         �Œ&t          |¦  «        dk    rt          d	¦  «        ‚d S )
Nr­   r   z	user timez0.r•   ú.zsystem timer   r®   )r   r+   r9   r:   r   r¯   r8   ÚfloatÚ	cpu_timesÚuserr²   Úsystemr´   rp   rµ   s          r   Útest_cpu_timesz$FreeBSDPsutilTestCase.test_cpu_timeså   sn  € àˆÝÐ* ¤Ð*Ð*Ñ+Ô+ˆÝŒN˜4œ8Ñ$Ô$ˆØ—I’I˜d‘O”Oð 	$ñ 	$ˆDØ—:’:‘<”<×%Ò%Ñ'Ô'ˆDØ˜dÐ"Ð"Ý# D¨4¯:ª:©<¬<¸Ô+;×+AÒ+AÀ#Ñ+FÔ+FÀrÔ+JÑ$JÑKÔK�Ø Ÿ{š{™}œ}Ô1�Ø" lÒ2Ð2Ð2Ð2Ø—’˜dÑ#Ô#Ð#Ð#Ø $Ð&Ð&Ý# D¨4¯:ª:©<¬<¸Ô+;×+AÒ+AÀ#Ñ+FÔ+FÀrÔ+JÑ$JÑKÔK�Ø Ÿ{š{™}œ}Ô3�Ø" lÒ2Ð2Ð2Ð2Ø—’˜dÑ#Ô#Ð#ùÝˆv‰;Œ;˜!ÒÐÝÐJÑKÔKÐKð Ðr#   N)rt   ru   rv   rx   r.   r2   r   r“   r˜   rœ   r«   r¹   rÀ   r}   r#   r   r   r   ¡   sï   € € € € € àð'ð 'ñ „[ð'ð ðð ñ „[ðð ÐÑÔð.ð .ñ Ôð.ðPð Pð Pð
ð 
ð 
ð'ð 'ð 'ð ÐÑÔðLð Lñ ÔðLð& ÐÑÔðLð Lñ ÔðLð Lð Lr#   r   c                   ó  — e Zd Zed„ ¦   «         Zd„ Z e¦   «         d„ ¦   «         Z e¦   «         d„ ¦   «         Z e¦   «         d„ ¦   «         Z	 e¦   «         d„ ¦   «         Z
 e¦   «         d„ ¦   «         Z e¦   «         d„ ¦   «         Zej                             e d	¬
¦  «        d„ ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zej                             e d	¬
¦  «         e¦   «         d„ ¦   «         ¦   «         Zd„ Zd„ Zd„ Z e¦   «         d„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zej                             e  d¬
¦  «        d„ ¦   «         Z!ej                             e  d¬
¦  «        d„ ¦   «         Z"ej                             e d¬
¦  «        d„ ¦   «         Z#d„ Z$d S )!ÚFreeBSDSystemTestCasec                  óÜ   — t          d¦  «                             ¦   «         d         } t          j        d| ¦  «        }|st	          d| › �¦  «        ‚d„ |dd…         D ¦   «         \  }}}|||fS )Nzswapinfo -kr•   z\s+zCan't parse swapinfo: c              3   ó:   K  — | ]}t          |¦  «        d z  V — ŒdS )rI   N)r   )Ú.0rª   s     r   ú	<genexpr>z7FreeBSDSystemTestCase.parse_swapinfo.<locals>.<genexpr>  s,   è è € Ð?Ð?¨q�S ™VœV d™]Ð?Ð?Ð?Ð?Ð?Ð?r#   r   rG   )r   Ú
splitlinesrn   r   r   )r@   ÚpartsrN   rO   rP   s        r   Úparse_swapinfoz$FreeBSDSystemTestCase.parse_swapinfoü   s…   € õ �MÑ"Ô"×-Ò-Ñ/Ô/°Ô3ˆÝ”˜ Ñ(Ô(ˆàð 	@ÝÐ>°fÐ>Ð>Ñ?Ô?Ð?ð @Ð?°E¸!¸A¸#´JÐ?Ñ?Ô?Ñˆˆt�TØ�d˜DÐ Ð r#   c                 ó`  — d}	 t          t          |¦  «        ¦  «        }n"# t          $ r t          j        d¦  «        ‚w xY wt          j        ¦   «         j        |k    sJ ‚d}t          |¦  «        }t          |                     ¦   «         d                              d¦  «        d         ¦  «        }t          |                     ¦   «         d                              d¦  «        d         ¦  «        }t          j        ¦   «         j	        |k    sJ ‚t          j        ¦   «         j
        |k    sJ ‚d S )Nzdev.cpu.0.freqz#frequencies not supported by kernelzdev.cpu.0.freq_levelsr   ú/r•   )r   r   rp   r
   Úskipr9   Úcpu_freqÚcurrentr   ÚmaxÚmin)r?   ÚsensorÚsysctl_resultÚmax_freqÚmin_freqs        r   Ú!test_cpu_frequency_against_sysctlz7FreeBSDSystemTestCase.test_cpu_frequency_against_sysctl	  s"  € ð "ˆð	EÝ¥ v¡¤Ñ/Ô/ˆMˆMøÝð 	Eð 	Eð 	EÝ”+ÐCÑDÔDÐDð	EøøøåŒÑ Ô Ô(¨MÒ9Ð9Ð9Ð9à(ˆÝ˜v™œˆõ �}×*Ò*Ñ,Ô,¨QÔ/×5Ò5°cÑ:Ô:¸1Ô=Ñ>Ô>ˆÝ�}×*Ò*Ñ,Ô,¨RÔ0×6Ò6°sÑ;Ô;¸AÔ>Ñ?Ô?ˆÝŒÑ Ô Ô$¨Ò0Ð0Ð0Ð0ÝŒÑ Ô Ô$¨Ò0Ð0Ð0Ð0Ð0Ð0s	   „! ¡A c                 óš   — t          d¦  «        t          z  }t          t          j        ¦   «         j        |z
  ¦  «        t          k     sJ ‚d S )Nzvm.stats.vm.v_active_count)r   ÚPAGESIZErW   r9   rc   Úactiver   r_   s     r   Útest_vmem_activez&FreeBSDSystemTestCase.test_vmem_active  sF   € åÐ2Ñ3Ô3µhÑ>ˆÝ•6Ô(Ñ*Ô*Ô1°DÑ8Ñ9Ô9Õ<MÒMÐMÐMÐMÐMÐMr#   c                 óš   — t          d¦  «        t          z  }t          t          j        ¦   «         j        |z
  ¦  «        t          k     sJ ‚d S )Nzvm.stats.vm.v_inactive_count)r   r×   rW   r9   rc   Úinactiver   r_   s     r   Útest_vmem_inactivez(FreeBSDSystemTestCase.test_vmem_inactive$  sF   € åÐ4Ñ5Ô5½Ñ@ˆÝ•6Ô(Ñ*Ô*Ô3°dÑ:Ñ;Ô;Õ>OÒOÐOÐOÐOÐOÐOr#   c                 óš   — t          d¦  «        t          z  }t          t          j        ¦   «         j        |z
  ¦  «        t          k     sJ ‚d S )Nzvm.stats.vm.v_wire_count)r   r×   rW   r9   rc   Úwiredr   r_   s     r   Útest_vmem_wiredz%FreeBSDSystemTestCase.test_vmem_wired)  sF   € åÐ0Ñ1Ô1µHÑ<ˆÝ•6Ô(Ñ*Ô*Ô0°4Ñ7Ñ8Ô8Õ;LÒLÐLÐLÐLÐLÐLr#   c                 óš   — t          d¦  «        t          z  }t          t          j        ¦   «         j        |z
  ¦  «        t          k     sJ ‚d S )Nzvm.stats.vm.v_cache_count)r   r×   rW   r9   rc   Úcachedr   r_   s     r   Útest_vmem_cachedz&FreeBSDSystemTestCase.test_vmem_cached.  sF   € åÐ1Ñ2Ô2µXÑ=ˆÝ•6Ô(Ñ*Ô*Ô1°DÑ8Ñ9Ô9Õ<MÒMÐMÐMÐMÐMÐMr#   c                 óš   — t          d¦  «        t          z  }t          t          j        ¦   «         j        |z
  ¦  «        t          k     sJ ‚d S )Nzvm.stats.vm.v_free_count)r   r×   rW   r9   rc   rP   r   r_   s     r   Útest_vmem_freez$FreeBSDSystemTestCase.test_vmem_free3  sF   € åÐ0Ñ1Ô1µHÑ<ˆÝ•6Ô(Ñ*Ô*Ô/°$Ñ6Ñ7Ô7Õ:KÒKÐKÐKÐKÐKÐKr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )Nzvfs.bufspace)r   rW   r9   rc   Úbuffersr   r_   s     r   Útest_vmem_buffersz'FreeBSDSystemTestCase.test_vmem_buffers8  s@   € å�nÑ%Ô%ˆÝ•6Ô(Ñ*Ô*Ô2°TÑ9Ñ:Ô:Õ=NÒNÐNÐNÐNÐNÐNr#   zmuse not installedr$   c                 ó`   — t          d¦  «        }t          j        ¦   «         j        |k    sJ ‚d S )NÚTotal)r   r9   rc   rN   rd   s     r   Útest_muse_vmem_totalz*FreeBSDSystemTestCase.test_muse_vmem_total?  s0   € å�7‰mŒmˆÝÔ$Ñ&Ô&Ô,°Ò3Ð3Ð3Ð3Ð3Ð3r#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚActive)r   rW   r9   rc   rØ   r   rd   s     r   Útest_muse_vmem_activez+FreeBSDSystemTestCase.test_muse_vmem_activeD  s@   € õ �8‰nŒnˆÝ•6Ô(Ñ*Ô*Ô1°CÑ7Ñ8Ô8Õ;LÒLÐLÐLÐLÐLÐLr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚInactive)r   rW   r9   rc   rÛ   r   rd   s     r   Útest_muse_vmem_inactivez-FreeBSDSystemTestCase.test_muse_vmem_inactiveJ  sB   € õ �:ÑÔˆÝ•6Ô(Ñ*Ô*Ô3°cÑ9Ñ:Ô:Õ=NÒNÐNÐNÐNÐNÐNr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚWired)r   rW   r9   rc   rÞ   r   rd   s     r   Útest_muse_vmem_wiredz*FreeBSDSystemTestCase.test_muse_vmem_wiredP  s@   € õ �7‰mŒmˆÝ•6Ô(Ñ*Ô*Ô0°3Ñ6Ñ7Ô7Õ:KÒKÐKÐKÐKÐKÐKr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚCache)r   rW   r9   rc   rá   r   rd   s     r   Útest_muse_vmem_cachedz+FreeBSDSystemTestCase.test_muse_vmem_cachedV  s@   € õ �7‰mŒmˆÝ•6Ô(Ñ*Ô*Ô1°CÑ7Ñ8Ô8Õ;LÒLÐLÐLÐLÐLÐLr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚFree)r   rW   r9   rc   rP   r   rd   s     r   Útest_muse_vmem_freez)FreeBSDSystemTestCase.test_muse_vmem_free\  s@   € õ �6‰lŒlˆÝ•6Ô(Ñ*Ô*Ô/°#Ñ5Ñ6Ô6Õ9JÒJÐJÐJÐJÐJÐJr#   c                 óŠ   — t          d¦  «        }t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S )NÚBuffer)r   rW   r9   rc   ræ   r   rd   s     r   Útest_muse_vmem_buffersz,FreeBSDSystemTestCase.test_muse_vmem_buffersb  s@   € õ �8‰nŒnˆÝ•6Ô(Ñ*Ô*Ô2°SÑ8Ñ9Ô9Õ<MÒMÐMÐMÐMÐMÐMr#   c                 ó|   — t          t          j        ¦   «         j        t	          d¦  «        z
  ¦  «        dk     sJ ‚d S )Nzvm.stats.sys.v_swtchéè  )rW   r9   Ú	cpu_statsÚctx_switchesr   ©r?   s    r   Útest_cpu_stats_ctx_switchesz1FreeBSDSystemTestCase.test_cpu_stats_ctx_switchesh  sR   € åÝÔ Ñ"Ô"Ô/ÝÐ/Ñ0Ô0ñ1ñô ð ò	ð ð ð ð ð r#   c                 ó|   — t          t          j        ¦   «         j        t	          d¦  «        z
  ¦  «        dk     sJ ‚d S )Nzvm.stats.sys.v_intrrþ   )rW   r9   rÿ   Ú
interruptsr   r  s    r   Útest_cpu_stats_interruptsz/FreeBSDSystemTestCase.test_cpu_stats_interruptsq  sH   € å•Ô Ñ"Ô"Ô-µÐ7LÑ0MÔ0MÑMÑNÔNØòð ð ð ð ð r#   c                 ó|   — t          t          j        ¦   «         j        t	          d¦  «        z
  ¦  «        dk     sJ ‚d S )Nzvm.stats.sys.v_softrþ   )rW   r9   rÿ   Úsoft_interruptsr   r  s    r   Útest_cpu_stats_soft_interruptsz4FreeBSDSystemTestCase.test_cpu_stats_soft_interruptsw  sR   € åÝÔ Ñ"Ô"Ô2ÝÐ.Ñ/Ô/ñ0ñô ð ò	ð ð ð ð ð r#   c                 ó|   — t          t          j        ¦   «         j        t	          d¦  «        z
  ¦  «        dk     sJ ‚d S )Nzvm.stats.sys.v_syscalli@ )rW   r9   rÿ   Úsyscallsr   r  s    r   Útest_cpu_stats_syscallsz-FreeBSDSystemTestCase.test_cpu_stats_syscalls€  sJ   € õ •Ô Ñ"Ô"Ô+­fÐ5MÑ.NÔ.NÑNÑOÔOØòð ð ð ð ð r#   c                 óœ   — |                       ¦   «         \  }}}t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S r)   )rÉ   rW   r9   Úswap_memoryrP   r   )r?   Ú_totalÚ_usedrP   s       r   Útest_swapmem_freez'FreeBSDSystemTestCase.test_swapmem_freeŽ  sK   € Ø"×1Ò1Ñ3Ô3Ñˆ��tÝ•6Ô%Ñ'Ô'Ô,¨tÑ3Ñ4Ô4Õ7HÒHÐHÐHÐHÐHÐHr#   c                 óœ   — |                       ¦   «         \  }}}t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S r)   )rÉ   rW   r9   r  rO   r   )r?   r  rO   Ú_frees       r   Útest_swapmem_usedz'FreeBSDSystemTestCase.test_swapmem_used’  sK   € Ø"×1Ò1Ñ3Ô3Ñˆ��eÝ•6Ô%Ñ'Ô'Ô,¨tÑ3Ñ4Ô4Õ7HÒHÐHÐHÐHÐHÐHr#   c                 óœ   — |                       ¦   «         \  }}}t          t          j        ¦   «         j        |z
  ¦  «        t
          k     sJ ‚d S r)   )rÉ   rW   r9   r  rN   r   )r?   rN   r  r  s       r   Útest_swapmem_totalz(FreeBSDSystemTestCase.test_swapmem_total–  sK   € Ø"×1Ò1Ñ3Ô3Ñˆˆu�eÝ•6Ô%Ñ'Ô'Ô-°Ñ5Ñ6Ô6Õ9JÒJÐJÐJÐJÐJÐJr#   c                 óî   — t          d¦  «        }||                     d¦  «        dz   d …         }|d |                     d¦  «        …         }t          |¦  «        }|t          j        ¦   «         k    sJ ‚d S )Nzsysctl kern.boottimez sec = é   ú,)r   r   r   r9   Ú	boot_time)r?   ÚsÚbtimes      r   Útest_boot_timez$FreeBSDSystemTestCase.test_boot_timeœ  st   € ÝÐ)Ñ*Ô*ˆØˆa�fŠf�YÑÔ !Ñ#Ð%Ð%Ô&ˆØˆm�—’�s‘”ˆmÔˆÝ�A‘”ˆØ�Ô(Ñ*Ô*Ò*Ð*Ð*Ð*Ð*Ð*r#   z
no batteryc                 ót  — d„ }t          d¦  «        }d„ |                     d¦  «        D ¦   «         }t          j        ¦   «         }t	          |d                              dd¦  «        ¦  «        }|d         }|j        |k    sJ ‚|d	k    r|j        t          j        k    sJ ‚d S  ||j        ¦  «        |k    sJ ‚d S )
Nc                 ó’   — t          | d¦  «        \  }}t          |d¦  «        \  }}t          |¦  «        › dt          |¦  «        d›�S )Né<   ú:Ú02)Údivmodr   )ÚsecsÚmÚ_sÚhs       r   Ú
secs2hoursz>FreeBSDSystemTestCase.test_sensors_battery.<locals>.secs2hours§  sI   € Ý˜4 Ñ$Ô$‰EˆAˆrÝ˜!˜R‘=”=‰DˆAˆqÝ˜!‘f”fÐ*Ð*�s 1™vœvÐ*Ð*Ð*Ð*r#   zacpiconf -i 0c                 óx   — i | ]7}|                      d ¦  «        d         |                      d ¦  «        d         “Œ8S )ú	r   r•   )r   )rÅ   Úxs     r   ú
<dictcomp>z>FreeBSDSystemTestCase.test_sensors_battery.<locals>.<dictcomp>­  s8   € ÐOÐOÐO¸!�!—'’'˜$‘-”- Ô" A§G¢G¨D¡M¤M°"Ô$5ÐOÐOÐOr#   r   zRemaining capacity:ú%r6   zRemaining time:Úunknown)	r   r   r9   Úsensors_batteryr   r7   ÚpercentÚsecsleftÚPOWER_TIME_UNLIMITED)r?   r'  r!   rŒ   Úmetricsr/  Úremaining_times          r   Útest_sensors_batteryz*FreeBSDSystemTestCase.test_sensors_battery¥  sØ   € ð	+ð 	+ð 	+õ
 �Ñ!Ô!ˆØOÐO¸s¿yºyÈ¹¼ÐOÑOÔOˆÝÔ(Ñ*Ô*ˆÝ�fÐ2Ô3×;Ò;¸CÀÑDÔDÑEÔEˆØÐ 1Ô2ˆØŒ 'Ò)Ð)Ð)Ð)Ø˜YÒ&Ð&ØÔ#¥vÔ'BÒBÐBÐBÐBÐBÐBà�:˜gÔ.Ñ/Ô/°>ÒAÐAÐAÐAÐAÐAr#   c                 óT  — t          j        ¦   «         j        t          d¦  «        k    sJ ‚t          j        ¦   «         j        t          d¦  «        dk    k    sJ ‚t          j        ¦   «         j        }|dk     rt          d¦  «        dk    sJ ‚d S |t          d¦  «        dz  k    sJ ‚d S )Núhw.acpi.battery.lifeúhw.acpi.acliner   r   úhw.acpi.battery.timer•   r  )r9   r.  r/  r   Úpower_pluggedr0  )r?   r0  s     r   Ú#test_sensors_battery_against_sysctlz9FreeBSDSystemTestCase.test_sensors_battery_against_sysctl·  sË   € åÔ%Ñ'Ô'Ô/µ6Ø"ñ4
ô 4
ò 
ð 
ð 
ð 
õ Ô%Ñ'Ô'Ô5ÝÐ#Ñ$Ô$¨Ò)ò
ð 
ð 
ð 
õ Ô)Ñ+Ô+Ô4ˆØ�aŠ<ˆ<ÝÐ0Ñ1Ô1°RÒ7Ð7Ð7Ð7Ð7Ð7à�vÐ&<Ñ=Ô=ÀÑBÒBÐBÐBÐBÐBÐBr#   zhas batteryc                 óì   — t          j        t          ¦  «        5  t          d¦  «         t          d¦  «         t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t	          j        ¦   «         �J ‚d S )Nr6  r8  r7  )r
   Úraisesrp   r   r9   r.  r  s    r   Útest_sensors_battery_no_batteryz5FreeBSDSystemTestCase.test_sensors_battery_no_batteryÅ  s³   € õ
 Œ]�<Ñ(Ô(ð 	%ð 	%ÝÐ)Ñ*Ô*Ð*ÝÐ)Ñ*Ô*Ð*ÝÐ#Ñ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%õ Ô%Ñ'Ô'Ð/Ð/Ð/Ð/Ð/s   š.AÁAÁAc                 ó>  — t          j        d¦  «        }t          |¦  «        D ]ø}d|› d�}	 t          t	          t          |¦  «        d d…         ¦  «        ¦  «        }n"# t          $ r t          j        d¦  «        ‚w xY wt          t          j
        ¦   «         d         |         j        |z
  ¦  «        dk     sJ ‚d|› d�}t          t	          t          |¦  «        d d…         ¦  «        ¦  «        }t          j
        ¦   «         d         |         j        |k    sJ ‚Œùd S )	NTzdev.cpu.z.temperaturer•   z$temperatures not supported by kernelÚcoretempr‡   z.coretemp.tjmax)r9   r^   Úranger   r¼   r   rp   r
   rÌ   rW   Úsensors_temperaturesrÎ   Úhigh)r?   Únum_cpusÚcpurÑ   rÒ   s        r   Ú(test_sensors_temperatures_against_sysctlz>FreeBSDSystemTestCase.test_sensors_temperatures_against_sysctlÒ  sQ  € ÝÔ# DÑ)Ô)ˆÝ˜‘?”?ð 	ð 	ˆCØ1 Ð1Ð1Ð1ˆFðJÝ #¥E­&°©.¬.¸¸"¸Ô*=Ñ$>Ô$>Ñ ?Ô ?��øÝð Jð Jð JÝ”kÐ"HÑIÔIÐIðJøøøõ ÝÔ/Ñ1Ô1°*Ô=¸cÔBÔJØ#ñ$ñô ð ò	ð ð ð ð 5 Ð4Ð4Ð4ˆFÝ¥¥f¨V¡n¤n°S°b°SÔ&9Ñ :Ô :Ñ;Ô;ˆMåÔ+Ñ-Ô-¨jÔ9¸#Ô>ÔCØ ò!ð !ð !ð !ð !ð%	ð 	s   ­1AÁA>N)%rt   ru   rv   ÚstaticmethodrÉ   rÕ   r   rÙ   rÜ   rß   râ   rä   rç   r
   ry   rz   ÚMUSE_AVAILABLErê   rí   rð   ró   rö   rù   rü   r  r  r  r  r  r  r  r  r   r4  r:  r=  rE  r}   r#   r   rÂ   rÂ   ú   ss  € € € € € àð
!ð 
!ñ „\ð
!ð1ð 1ð 1ð, ÐÑÔðNð Nñ ÔðNð ÐÑÔðPð Pñ ÔðPð ÐÑÔðMð Mñ ÔðMð ÐÑÔðNð Nñ ÔðNð ÐÑÔðLð Lñ ÔðLð ÐÑÔðOð Oñ ÔðOð „[×Ò˜NÐ*Ð3GÐÑHÔHð4ð 4ñ IÔHð4ð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðMð Mñ Ôñ IÔHðMð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðOð Oñ Ôñ IÔHðOð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðLð Lñ Ôñ IÔHðLð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðMð Mñ Ôñ IÔHðMð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðKð Kñ Ôñ IÔHðKð „[×Ò˜NÐ*Ð3GÐÑHÔHØÐÑÔðNð Nñ Ôñ IÔHðNð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð ÐÑÔð
ð 
ñ Ôð
ðIð Ið IðIð Ið IðKð Kð Kð+ð +ð +ð „[×Ò˜K˜°ÐÑ=Ô=ðBð Bñ >Ô=ðBð" „[×Ò˜K˜°ÐÑ=Ô=ðCð Cñ >Ô=ðCð „[×Ò˜¨MÐÑ:Ô:ð0ð 0ñ ;Ô:ð0ðð ð ð ð r#   rÂ   zOPENBSD onlyc                   ó   — e Zd Zd„ ZdS )ÚOpenBSDTestCasec                 óÔ   — t          d¦  «        }t          j                             |d¦  «        }t          j                             t	          j        ¦   «         ¦  «        }||k    sJ ‚d S )Nzkern.boottimez%a %b %d %H:%M:%S %Y)r   ÚdatetimeÚstrptimeÚfromtimestampr9   r  )r?   r  Úsys_btÚ	psutil_bts       r   r  zOpenBSDTestCase.test_boot_timeò  s^   € Ý�?Ñ#Ô#ˆÝÔ"×+Ò+¨AÐ/EÑFÔFˆÝÔ%×3Ò3µFÔ4DÑ4FÔ4FÑGÔGˆ	Ø˜Ò"Ð"Ð"Ð"Ð"Ð"r#   N)rt   ru   rv   r  r}   r#   r   rI  rI  ð  s#   € € € € € ð#ð #ð #ð #ð #r#   rI  zNETBSD onlyc                   ó`   — e Zd Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ ZdS )ÚNetBSDTestCasec                 ó  — t          d¦  «        5 }|D ]O}|                     | ¦  «        r8t          |                     ¦   «         d         ¦  «        dz  c cd d d ¦  «         S ŒP	 d d d ¦  «         n# 1 swxY w Y   t	          d| › �¦  «        ‚)Nz/proc/meminfor   rI   zcan't find )Úopenr   r   r   r   )Úlook_forÚfr"   s      r   Úparse_meminfozNetBSDTestCase.parse_meminfo   sò   € å�/Ñ"Ô"ð 	7 aØð 7ð 7�Ø—?’? 8Ñ,Ô,ð 7Ý˜tŸzšz™|œ|¨AœÑ/Ô/°$Ñ6Ð6Ð6ð	7ð 	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð7ð7ð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7õ Ð1 xÐ1Ð1Ñ2Ô2Ð2s   �AA0Á"A0Á0A4Á7A4c                 óh   — t          j        ¦   «         j        |                      d¦  «        k    sJ ‚d S )Nz	MemTotal:)r9   rc   rN   rV  r  s    r   Útest_vmem_totalzNetBSDTestCase.test_vmem_total
  s3   € ÝÔ$Ñ&Ô&Ô,°×0BÒ0BÀ;Ñ0OÔ0OÒOÐOÐOÐOÐOÐOr#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )NzMemFree:)rW   r9   rc   rP   rV  r   r  s    r   rä   zNetBSDTestCase.test_vmem_free  sM   € å•Ô%Ñ'Ô'Ô,¨t×/AÒ/AÀ*Ñ/MÔ/MÑMÑNÔNÝò ð  ð  ð  ð  ð  r#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )NzBuffers:)rW   r9   rc   ræ   rV  r   r  s    r   rç   z NetBSDTestCase.test_vmem_buffers  sW   € åÝÔ%Ñ'Ô'Ô/Ø×$Ò$ ZÑ0Ô0ñ1ñô õ  ò	 ð  ð  ð  ð  ð  r#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )Nz
MemShared:)rW   r9   rc   ÚsharedrV  r   r  s    r   Útest_vmem_sharedzNetBSDTestCase.test_vmem_shared  sW   € åÝÔ%Ñ'Ô'Ô.Ø×$Ò$ \Ñ2Ô2ñ3ñô õ  ò	 ð  ð  ð  ð  ð  r#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )NzCached:)rW   r9   rc   rá   rV  r   r  s    r   râ   zNetBSDTestCase.test_vmem_cached%  sM   € å•Ô%Ñ'Ô'Ô.°×1CÒ1CÀIÑ1NÔ1NÑNÑOÔOÝò ð  ð  ð  ð  ð  r#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )Nz
SwapTotal:)rW   r9   r  rN   rV  r   r  s    r   r  z!NetBSDTestCase.test_swapmem_total-  sM   € å•Ô"Ñ$Ô$Ô*¨T×-?Ò-?ÀÑ-MÔ-MÑMÑNÔNÝò ð  ð  ð  ð  ð  r#   c                 ó’   — t          t          j        ¦   «         j        |                      d¦  «        z
  ¦  «        t
          k     sJ ‚d S )Nz	SwapFree:)rW   r9   r  rP   rV  r   r  s    r   r  z NetBSDTestCase.test_swapmem_free3  sM   € å•Ô"Ñ$Ô$Ô)¨D×,>Ò,>¸{Ñ,KÔ,KÑKÑLÔLÝò ð  ð  ð  ð  ð  r#   c                 ó`   — t          j        ¦   «         }|j        |j        |j        z
  k    sJ ‚d S r)   )r9   r  rO   rN   rP   )r?   Úsmems     r   r  z NetBSDTestCase.test_swapmem_used9  s2   € ÝÔ!Ñ#Ô#ˆØŒy˜DœJ¨¬Ñ2Ò2Ð2Ð2Ð2Ð2Ð2r#   c                 óX  — t          dd¦  «        5 }|D ]@}|                     d¦  «        r)t          |                     ¦   «         d         ¦  «        } nŒAt	          d¦  «        ‚	 d d d ¦  «         n# 1 swxY w Y   t          t          j        ¦   «         j        |z
  ¦  «        dk     sJ ‚d S )Nú
/proc/statÚrbs   intrr   úcouldn't find linerþ   )	rS  r   r   r   r   rW   r9   rÿ   r  )r?   rU  r"   r  s       r   r  z(NetBSDTestCase.test_cpu_stats_interrupts?  sò   € Ý�, Ñ%Ô%ð 	7¨Øð 7ð 7�Ø—?’? 7Ñ+Ô+ð Ý!$ T§Z¢Z¡\¤\°!¤_Ñ!5Ô!5�JØ�Eðõ !Ð!5Ñ6Ô6Ð6ð ð		7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7õ •6Ô#Ñ%Ô%Ô0°:Ñ=Ñ>Ô>ÀÒEÐEÐEÐEÐEÐEó   ‘AA1Á1A5Á8A5c                 óX  — t          dd¦  «        5 }|D ]@}|                     d¦  «        r)t          |                     ¦   «         d         ¦  «        } nŒAt	          d¦  «        ‚	 d d d ¦  «         n# 1 swxY w Y   t          t          j        ¦   «         j        |z
  ¦  «        dk     sJ ‚d S )Nrd  re  s   ctxtr   rf  rþ   )	rS  r   r   r   r   rW   r9   rÿ   r   )r?   rU  r"   r   s       r   r  z*NetBSDTestCase.test_cpu_stats_ctx_switchesI  sò   € Ý�, Ñ%Ô%ð 	7¨Øð 7ð 7�Ø—?’? 7Ñ+Ô+ð Ý#& t§z¢z¡|¤|°A¤Ñ#7Ô#7�LØ�Eðõ !Ð!5Ñ6Ô6Ð6ð ð		7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7õ •6Ô#Ñ%Ô%Ô2°\ÑAÑBÔBÀTÒIÐIÐIÐIÐIÐIrg  N)rt   ru   rv   rF  rV  rX  rä   rç   r]  râ   r  r  r  r  r  r}   r#   r   rQ  rQ  þ  sÎ   € € € € € àð3ð 3ñ „\ð3ðPð Pð Pð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð3ð 3ð 3ðFð Fð FðJð Jð Jð Jð Jr#   rQ  )#rw   rK  Úosrn   r{   r<   r9   r   r   r   r   Úpsutil.testsr   r   r	   r
   r   r   r   r   Úpsutil._psutil_posixr   r×   Úgetuidr|   rG  r   r   ry   rz   r'   r   rÂ   rI  rQ  r}   r#   r   ú<module>rm     s^  ðð +Ð *à €€€Ø 	€	€	€	Ø 	€	€	€	Ø €€€Ø €€€à €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø *Ð *Ð *Ð *Ð *Ð *Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø Ð Ð Ð Ð Ð Ø )Ð )Ð )Ð )Ð )Ð )Ø Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø "Ð "Ð "Ð "Ð "Ð "ð ð Ø0Ð0Ð0Ð0Ð0Ð0àˆ{‰}Œ}€Hà�R”Y‘[”[ AÒ%Ð>¨,¨&¬,°vÑ*>Ô*>€N€Nà€HØ€Nðð ð ð ð  ð  ð  „×Ò˜�G JÐÑ/Ô/ðMNð MNð MNð MNð MN�.ñ MNô MNñ 0Ô/ðMNðj „×Ò˜�K¨ÐÑ7Ô7ðULð ULð ULð ULð UL˜Nñ ULô ULñ 8Ô7ðULðp „×Ò˜�K¨ÐÑ7Ô7ðmð mð mð mð m˜Nñ mô mñ 8Ô7ðmðj „×Ò˜�K¨ÐÑ7Ô7ð#ð #ð #ð #ð #�nñ #ô #ñ 8Ô7ð#ð „×Ò˜�J }ÐÑ5Ô5ðRJð RJð RJð RJð RJ�^ñ RJô RJñ 6Ô5ðRJð RJð RJr#   