§ x<ˆj9ãó—dZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl m Z ddl m Z ddl m Z ddlmZddlmZddlmZdd l mZdd l mZdd l mZdd l mZdd l mZddl mZddl mZddl mZddl mZddl mZddl mZddl mZddl mZddl mZddl m Z ddl m!Z!ddl m"Z"ddl m#Z#ddl m$Z$ddl m%Z%ddl m&Z&ddl m'Z'ddl m(Z(dd l m)Z)dd!l m*Z*dd"l m+Z+dd#l m,Z,dd$l m-Z-Gd%„d&e¦«Z.Gd'„d(e¦«Z/Gd)„d*e¦«Z0Gd+„d,e¦«Z1Gd-„d.e¦«Z2e'Gd/„d0e¦«¦«Z3Gd1„d2e¦«Z4Gd3„d4e¦«Z5e6d5krdd6l7m8Z8e8e9¦«dSdS)7z3 Tests for testing utils (psutil.tests namespace). éN)ÚFREEBSD)ÚNETBSD)ÚPOSIX)Ú open_binary)Ú open_text)Ú supports_ipv6)Ú CI_TESTING)ÚCOVERAGE)ÚHAS_CONNECTIONS_UNIX)Ú PYTHON_EXE)ÚPYTHON_EXE_ENV)ÚPsutilTestCase)ÚTestMemoryLeak)Ú bind_socket)Úbind_unix_socket)Ú call_until)Úchdir)Úcreate_sockets)Ú get_free_port)Ú is_namedtuple)Úmock)Úprocess_namespace)Ú reap_children)Úretry)Úretry_on_failure)Ú safe_mkdir)Ú safe_rmpath)Ú serialrun)Úsystem_namespace)Útcp_socketpair)Ú terminate)Úunix_socketpair)Ú wait_for_file)Ú wait_for_pidcó:—eZdZejd¦«d„¦«Zejd¦«d„¦«Zejd¦«d„¦«Zejd¦«d„¦«Zejd¦«d„¦«Z ejd¦«d„¦«Z dS) ÚTestRetryDecoratorz time.sleepcó쇗tddd¬¦«ˆfd„¦«}ttd¦«¦«Š| |¦«d¦«| |jd¦«dS)Néé©ÚretriesÚintervalÚlogfuncóB•—‰r‰ ¦«ddz ‰°dS©Nr)r©Úpop©Úqueues€úo/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib64/python3.11/site-packages/psutil/tests/test_testutils.pyÚfooz2TestRetryDecorator.test_retry_success..fooFó2ø€àð Ø— ’ ‘ ” � Ø�A‘�ðð ð�1óé)rÚlistÚrangeÚ assertEqualÚ call_count©ÚselfÚsleepr5r3s @r4Útest_retry_successz%TestRetryDecorator.test_retry_successBs†ø€õ �q 1¨TÐ 2Ñ 2Ô 2ð ð ð ð ñ 3Ô 2ð õ •U˜1‘X”X‘”ˆØ ×Ò˜˜™œ Ñ"Ô"Ð"Ø ×Ò˜Ô)¨1Ñ-Ô-Ð-Ð-Ð-r7c󿇗tddd¬¦«ˆfd„¦«}ttd¦«¦«Š| t|¦«| |jd¦«dS)Nr(r)r*cóB•—‰r‰ ¦«ddz ‰°dSr/r0r2s€r4r5z2TestRetryDecorator.test_retry_failure..fooTr6r7é)rr9r:Ú assertRaisesÚZeroDivisionErrorr;r<r=s @r4Útest_retry_failurez%TestRetryDecorator.test_retry_failureQs�ø€õ �q 1¨TÐ 2Ñ 2Ô 2ð ð ð ð ñ 3Ô 2ð õ •U˜1‘X”X‘”ˆØ ×ÒÕ+¨SÑ1Ô1Ð1Ø ×Ò˜Ô)¨1Ñ-Ô-Ð-Ð-Ð-r7có°—ttd¬¦«d„¦«}| t|¦«| |jd¦«dS)Nr))Ú exceptionr,có—t‚©N)Ú TypeError©r7r4r5z2TestRetryDecorator.test_exception_arg..fooas€åˆOr7r)rÚ ValueErrorrDrKr;r<©r>r?r5s r4Útest_exception_argz%TestRetryDecorator.test_exception_arg_s`€å �¨aÐ 0Ñ 0Ô 0ð ð ñ 1Ô 0ð ð ×Ò�) SÑ)Ô)Ð)Ø ×Ò˜Ô)¨1Ñ-Ô-Ð-Ð-Ð-r7có¨—tddd¬¦«d„¦«}| t|¦«| |jd¦«dS)Nr(r*có—ddz dSr/rLrLr7r4r5z4TestRetryDecorator.test_no_interval_arg..fooló€à �‰EˆEˆEˆEr7r©rrDrEr;r<rNs r4Útest_no_interval_argz'TestRetryDecorator.test_no_interval_arghse€õ �q 4°Ð 5Ñ 5Ô 5ð ð ñ 6Ô 5ð ð ×ÒÕ+¨SÑ1Ô1Ð1Ø ×Ò˜Ô)¨1Ñ-Ô-Ð-Ð-Ð-r7có¨—tddd¬¦«d„¦«}| t|¦«| |jd¦«dS)Nr(r)r*có—ddz dSr/rLrLr7r4r5z0TestRetryDecorator.test_retries_arg..foovrRr7rSrNs r4Útest_retries_argz#TestRetryDecorator.test_retries_argsse€õ �q 1¨TÐ 2Ñ 2Ô 2ð ð ñ 3Ô 2ð ð ×ÒÕ+¨SÑ1Ô1Ð1Ø ×Ò˜Ô)¨1Ñ-Ô-Ð-Ð-Ð-r7cóL—| ttdd¬¦«dS)Nr(r))r+Útimeout)rDrMr)r>r?s r4Útest_retries_and_timeout_argsz0TestRetryDecorator.test_retries_and_timeout_args}s%€à ×Ò�*¥e°QÀÐÑBÔBÐBÐBÐBr7N) Ú__name__Ú __module__Ú __qualname__rÚpatchr@rFrOrTrWrZrLr7r4r&r&@s€€€€€à€T„Z� ÑÔð .ð .ñÔð .ð€T„Z� ÑÔð .ð .ñÔð .ð€T„Z� ÑÔð.ð.ñÔð.ð€T„Z� ÑÔð.ð.ñÔð.ð€T„Z� ÑÔð.ð.ñÔð.ð€T„Z� ÑÔðCðCñÔðCðCðCr7r&có2—eZdZd„Zd„Zd„Zd„Zd„Zd„ZdS)ÚTestSyncTestUtilscóR—ttj¦«¦«tt j¦«¦«dz}t jdtdg¦«¬¦«5|  tj t|¦«ddd¦«dS#1swxYwYdS)NiŸ†úpsutil.tests.retry.__iter__r©Ú return_value) r$ÚosÚgetpidÚmaxÚpsutilÚpidsrr^ÚiterrDÚ NoSuchProcess)r>Únopids r4Útest_wait_for_pidz#TestSyncTestUtils.test_wait_for_pid„s߀Ý•R”Y‘[”[Ñ!Ô!Ð!Ý•F”K‘M”MÑ"Ô" UÑ*ˆÝ ŒZÐ5ÅDÈ!ÈÁIÄIÐ NÑ NÔ Nð Ið IØ × Ò �fÔ2µLÀ%Ñ HÔ HÐ Hð Ið Ið Iñ Iô Ið Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Ið Ið IsÁ('BÂB Â#B có—| ¦«}t|d¦«5}| d¦«ddd¦«n #1swxYwYt|¦«tj |¦«rJ‚dS)NÚwr5©Ú get_testfnÚopenÚwriter#reÚpathÚexists©r>ÚtestfnÚfs r4Útest_wait_for_filez$TestSyncTestUtils.test_wait_for_fileŠs°€Ø—’Ñ"Ô"ˆÝ �&˜#Ñ Ô ð  !Ø �GŠG�E‰NŒNˆNð ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å�fÑÔÐÝ”7—>’> &Ñ)Ô)Ð)Ð)Ð)Ð)Ð)ó¥AÁA ÁA cóä—| ¦«}t|d¦«5 ddd¦«n #1swxYwYt|d¬¦«tj |¦«rJ‚dS)NroT)Úempty)rqrrr#rertru©r>rws r4Útest_wait_for_file_emptyz*TestSyncTestUtils.test_wait_for_file_empty‘s¬€Ø—’Ñ"Ô"ˆÝ �&˜#Ñ Ô ð ð Ø ð ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å�f DÐ)Ñ)Ô)Ð)Ý”7—>’> &Ñ)Ô)Ð)Ð)Ð)Ð)Ð)s ¥3³7º7cóê—| ¦«}tjdtdg¦«¬¦«5| t t |¦«ddd¦«dS#1swxYwYdS)Nrbrrc)rqrr^rjrDÚIOErrorr#r}s r4Útest_wait_for_file_no_filez,TestSyncTestUtils.test_wait_for_file_no_file˜s«€Ø—’Ñ"Ô"ˆÝ ŒZÐ5ÅDÈ!ÈÁIÄIÐ NÑ NÔ Nð >ð >Ø × Ò �g¥}°fÑ =Ô =Ð =ð >ð >ð >ñ >ô >ð >ð >ð >ð >ð >ð >ð >øøøð >ð >ð >ð >ð >ð >s¹"A(Á(A,Á/A,có —| ¦«}t|d¦«5}| d¦«ddd¦«n #1swxYwYt|d¬¦«tj |¦«sJ‚dS)Nror5F)Údeleterprvs r4Útest_wait_for_file_no_deletez.TestSyncTestUtils.test_wait_for_file_no_delete�sµ€Ø—’Ñ"Ô"ˆÝ �&˜#Ñ Ô ð  !Ø �GŠG�E‰NŒNˆNð ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å�f UÐ+Ñ+Ô+Ð+ÝŒw�~Š~˜fÑ%Ô%Ð%Ð%Ð%Ð%Ð%rzcóT—td„d¦«}| |d¦«dS)Ncó—dS)Nr)rLrLr7r4úz3TestSyncTestUtils.test_call_until..¥s€ €r7zret == 1r))rr;)r>Úrets r4Útest_call_untilz!TestSyncTestUtils.test_call_until¤s/€Ý˜˜ JÑ/Ô/ˆØ ×Ò˜˜aÑ Ô Ð Ð Ð r7N) r[r\r]rmryr~r�r„r‰rLr7r4r`r`‚sq€€€€€ðIðIðIð *ð*ð*ð*ð*ð*ð>ð>ð>ð &ð&ð&ð!ð!ð!ð!ð!r7r`có,—eZdZd„Zd„Zd„Zd„Zd„ZdS)ÚTestFSTestUtilscó–—tt¦«5}| |jd¦«ddd¦«dS#1swxYwYdS)NÚrt)rÚ__file__r;Úmode©r>rxs r4Útest_open_textzTestFSTestUtils.test_open_text«s‰€Ý •xÑ Ô ð + AØ × Ò ˜QœV TÑ *Ô *Ð *ð +ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +ó•>¾AÁAcó–—tt¦«5}| |jd¦«ddd¦«dS#1swxYwYdS)NÚrb)rrŽr;r�r�s r4Útest_open_binaryz TestFSTestUtils.test_open_binary¯s‰€Ý �Ñ "Ô "ð + aØ × Ò ˜QœV TÑ *Ô *Ð *ð +ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +r’cóî—| ¦«}t|¦«tj |¦«sJ‚t|¦«tj |¦«sJ‚dSrJ)rqrrertÚisdirr}s r4Útest_safe_mkdirzTestFSTestUtils.test_safe_mkdir³sg€Ø—’Ñ"Ô"ˆÝ�6ÑÔÐÝŒw�}Š}˜VÑ$Ô$Ð$Ð$Ð$Ý�6ÑÔÐÝŒw�}Š}˜VÑ$Ô$Ð$Ð$Ð$Ð$Ð$r7cóœ—| ¦«}t|d¦« ¦«t|¦«tj |¦«rJ‚t|¦«t j|¦«t|¦«tj |¦«rJ‚tj dttj d¦«¬¦«5}|  t¦«5t|¦«ddd¦«n #1swxYwY|jsJ‚ ddd¦«dS#1swxYwYdS)Nrozpsutil.tests.os.statÚ)Ú side_effect)rqrrÚcloserrertruÚmkdirrr^ÚOSErrorÚerrnoÚEINVALrDÚcalled)r>rwÚms r4Útest_safe_rmpathz TestFSTestUtils.test_safe_rmpathºsª€à—’Ñ"Ô"ˆÝ ˆV�SÑÔ×ÒÑ!Ô!Ð!Ý�FÑÔÐÝ”7—>’> &Ñ)Ô)Ð)Ð)Ð)å�FÑÔÐå Œ�ÑÔÐÝ�FÑÔÐÝ”7—>’> &Ñ)Ô)Ð)Ð)Ð)å ŒZÐ.Ý$+­E¬L¸"Ñ$=Ô$=ð?ñ?ô?ð ØBCØ×"Ò"¥7Ñ+Ô+ð $ð $ݘFÑ#Ô#Ð#ð $ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $à”8ˆOˆO�8ˆOð  ð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s6Ã(EÄDÄ EÄD# Ä#EÄ&D# Ä' EÅEÅEcó¢—| ¦«}tj¦«}tj|¦«t |¦«5| tj¦«tj ||¦«¦«ddd¦«n #1swxYwY| tj¦«|¦«dSrJ)rqreÚgetcwdr�rr;rtÚjoin)r>rwÚbases r4Ú test_chdirzTestFSTestUtils.test_chdirÍsì€Ø—’Ñ"Ô"ˆÝŒy‰{Œ{ˆÝ Œ�ÑÔÐÝ �6‰]Œ]ð Fð FØ × Ò �RœY™[œ[­"¬'¯,ª,°t¸VÑ*DÔ*DÑ EÔ EÐ Eð Fð Fð Fñ Fô Fð Fð Fð Fð Fð Fð Føøøð Fð Fð Fð Fà ×Ò�œ™œ dÑ+Ô+Ð+Ð+Ð+sÁ ABÂB!Â$B!N)r[r\r]r‘r•r˜r£r¨rLr7r4r‹r‹©s_€€€€€ð+ð+ð+ð+ð+ð+ð%ð%ð%ðððð&,ð,ð,ð,ð,r7r‹cóV—eZdZd„Zd„Zeje d¦«d„¦«Zd„Z dS)ÚTestProcessUtilscó —| ¦«}tj|j¦«}| ¦«sJ‚t ¦«| ¦«rJ‚tjjrJ‚tjjrJ‚dSrJ) Úspawn_testprocrhÚProcessÚpidÚ is_runningrÚtestsÚ _pids_startedÚ_subprocesses_started)r>ÚsubpÚps r4Útest_reap_childrenz#TestProcessUtils.test_reap_childrenØs|€Ø×"Ò"Ñ$Ô$ˆÝ ŒN˜4œ8Ñ $Ô $ˆØ�|Š|‰~Œ~ÐЈ~݉ŒˆØ—<’<‘>”>Ð!Ð!Ð!Ý”<Ô-Ð-Ð-Ð-Ý”<Ô5Ð5Ð5Ð5Ð5Ð5r7có¼—| ¦«\}}| |j|j¦«| ¦«sJ‚| ¦«sJ‚t j¦« ¦«}| ||g¦«t j¦« d¬¦«}| t|¦«d¦«|  ||¦«|  ||¦«| |  ¦«tj ¦«¦«| |  ¦«|j¦«t|¦«| ¦«rJ‚| ¦«sJ‚t|¦«| ¦«rJ‚dS)NT)Ú recursiveé)Úspawn_children_pairÚassertNotEqualr®r¯rhr­Úchildrenr;ÚlenÚassertInÚppidrerfr!)r>ÚchildÚ grandchildr»s r4Útest_spawn_children_pairz)TestProcessUtils.test_spawn_children_pairás¥€Ø ×4Ò4Ñ6Ô6шˆzØ ×Ò˜EœI z¤~Ñ6Ô6Ð6Ø×ÒÑ!Ô!Ð!Ð!Ð!Ø×$Ò$Ñ&Ô&Ð&Ð&Ð&Ý”>Ñ#Ô#×,Ò,Ñ.Ô.ˆØ ×Ò˜ E 7Ñ+Ô+Ð+Ý”>Ñ#Ô#×,Ò,°tÐ,Ñ<Ô<ˆØ ×Ò�˜X™œ¨Ñ*Ô*Ð*Ø � Š �e˜XÑ&Ô&Ð&Ø � Š �j (Ñ+Ô+Ð+Ø ×Ò˜Ÿš™œ¥r¤y¡{¤{Ñ3Ô3Ð3Ø ×Ò˜ŸšÑ*Ô*¨E¬IÑ6Ô6Ð6å�%ÑÔÐØ×#Ò#Ñ%Ô%Ð%Ð%Ð%Ø×$Ò$Ñ&Ô&Ð&Ð&Ð&å�*ÑÔÐØ×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*Ð*r7ú POSIX onlycó˜—| ¦«\}}| | ¦«tj¦«dSrJ)Ú spawn_zombier;ÚstatusrhÚ STATUS_ZOMBIE)r>ÚparentÚzombies r4Útest_spawn_zombiez"TestProcessUtils.test_spawn_zombieös>€à×*Ò*Ñ,Ô,‰ˆ�Ø ×Ò˜Ÿš™œ­&Ô*>Ñ?Ô?Ð?Ð?Ð?r7có”—| ¦«}t|¦«| |¦«t|¦«tj| ¦«j¦«}t|¦«| |¦«t|¦«t ddg}tj|tj tj t¬¦«}t|¦«| |¦«t|¦«| ¦«j}t|¦«| |¦«t|¦«tra|  ¦«\}}t|¦«t|¦«| |¦«| |¦«dSdS)Nz-czimport time; time.sleep(60);)ÚstdoutÚstderrÚenv) r¬r!ÚassertProcessGonerhr­r®r ÚPopenÚ subprocessÚPIPEr rrÄ)r>r´Úcmdr®rÇrÈs r4Útest_terminatezTestProcessUtils.test_terminateûsŽ€à × Ò Ñ !Ô !ˆÝ�!‰ Œ ˆ Ø ×Ò˜qÑ!Ô!Ð!Ý�!‰ Œ ˆ å ŒN˜4×.Ò.Ñ0Ô0Ô4Ñ 5Ô 5ˆÝ�!‰ Œ ˆ Ø ×Ò˜qÑ!Ô!Ð!Ý�!‰ Œ ˆ å˜4Ð!?Ð@ˆÝ ŒL˜¥Z¤_½Z¼_Ý+ð -ñ -ô -ˆå�!‰ Œ ˆ Ø ×Ò˜qÑ!Ô!Ð!Ý�!‰ Œ ˆ à×!Ò!Ñ#Ô#Ô'ˆÝ�#‰ŒˆØ ×Ò˜qÑ!Ô!Ð!Ý�#‰Œˆå ð +Ø!×.Ò.Ñ0Ô0‰NˆF�FÝ �fÑ Ô Ð Ý �fÑ Ô Ð Ø × "Ò " 6Ñ *Ô *Ð *Ø × "Ò " 6Ñ *Ô *Ð *Ð *Ð *ð  +ð +r7N) r[r\r]rµrÁÚunittestÚskipIfrrÉrÓrLr7r4rªrªÖsp€€€€€ð6ð6ð6ð+ð+ð+ð*€X„_˜�Y  Ñ-Ô-ð@ð@ñ.Ô-ð@ð+ð+ð+ð+ð+r7rªcó¾—eZdZd„Zeje d¦«d„¦«Zd„Zeje d¦«eje pe d¦«d„¦«¦«Z d„Z dS) Ú TestNetUtilscóø—t¦«}tjtd|f¬¦«¦«5}| | ¦«d|¦«ddd¦«dS#1swxYwYdS)Nrš©Úaddrr))rÚ contextlibÚclosingrr;Ú getsockname)r>ÚportÚss r4rzTestNetUtils.bind_sockets¯€Ý‰ŒˆÝ Ô ¥ °"°d°Ð <Ñ <Ô <Ñ =Ô =ð 7ÀØ × Ò ˜QŸ]š]™_œ_¨QÔ/°Ñ 6Ô 6Ð 6ð 7ð 7ð 7ñ 7ô 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7øøøð 7ð 7ð 7ð 7ð 7ð 7s³/A/Á/A3Á6A3rÂcó(—| ¦«}t|¦«}tj|¦«5| |jt j¦«| |jt j ¦«| |  ¦«|¦«tj   |¦«sJ‚tjtj|¦«j¦«sJ‚ ddd¦«n #1swxYwY| ¦«}t|t j¬¦«}tj|¦«5| |jt j¦«ddd¦«dS#1swxYwYdS)N)Útype)rqrrÛrÜr;ÚfamilyÚsocketÚAF_UNIXráÚ SOCK_STREAMrÝrertruÚstatÚS_ISSOCKÚst_modeÚ SOCK_DGRAM)r>ÚnameÚsocks r4Útest_bind_unix_socketz"TestNetUtils.test_bind_unix_socket"sÏ€à�ŠÑ Ô ˆÝ Ñ%Ô%ˆÝ Ô  Ñ %Ô %ð 8ð 8Ø × Ò ˜Tœ[­&¬.Ñ 9Ô 9Ð 9Ø × Ò ˜TœY­Ô(:Ñ ;Ô ;Ð ;Ø × Ò ˜T×-Ò-Ñ/Ô/°Ñ 6Ô 6Ð 6Ý”7—>’> $Ñ'Ô'Ð 'Ð 'Ð'Ý”=¥¤¨¡¤Ô!6Ñ7Ô7Ð 7Ð 7Ð7Ð 7ð  8ð 8ð 8ñ 8ô 8ð 8ð 8ð 8ð 8ð 8ð 8øøøð 8ð 8ð 8ð 8ð�ŠÑ Ô ˆÝ ­6Ô+<Ð=Ñ=Ô=ˆÝ Ô  Ñ %Ô %ð ;ð ;Ø × Ò ˜TœY­Ô(9Ñ :Ô :Ð :ð ;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð ;ð ;s$¸CDÄD Ä D Å&FÆF ÆF có—dt¦«f}ttj|¬¦«\}}t j|¦«5t j|¦«5| | ¦«|¦«| | ¦«|¦«|  | ¦«|¦«ddd¦«n #1swxYwYddd¦«dS#1swxYwYdS)Nz 127.0.0.1rÙ) rr rãÚAF_INETrÛrÜr;rÝÚ getpeernamerº)r>rÚÚserverÚclients r4Útcp_tcp_socketpairzTestNetUtils.tcp_tcp_socketpair2s�€Ø�]™_œ_Ð-ˆÝ'­¬¸TÐBÑBÔB‰ˆ�Ý Ô  Ñ 'Ô 'ð @ð @ÝÔ# FÑ+Ô+ð @ð @ð× Ò  ×!3Ò!3Ñ!5Ô!5°tÑ<Ô<Ð<Ø× Ò  ×!3Ò!3Ñ!5Ô!5°tÑ<Ô<Ð<Ø×#Ò# F×$6Ò$6Ñ$8Ô$8¸$Ñ?Ô?Ð?ð  @ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð @ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð @ð @s7ÁC5ÁA9Cà C5ÃC! Ã!C5Ã$C! Ã%C5Ã5C9Ã<C9z*/var/run/log UNIX socket opened by defaultcó|—tj¦«}| ¦«}| d¬¦«rJ‚| ¦«}t |¦«\}} t j |¦«sJ‚tj t j |¦«j ¦«sJ‚|  | ¦«|z d¦«|  t| d¬¦«¦«d¦«|  | ¦«|¦«|  | ¦«|¦«| ¦«| ¦«dS#| ¦«| ¦«wxYw)NÚunix)Úkindr¸)rhr­Únum_fdsÚ connectionsrqr"rertrurærçrèr;r¼rÝrïrœ)r>r´rörêrðrñs r4Útest_unix_socketpairz!TestNetUtils.test_unix_socketpair=sk€õ ŒNÑ Ô ˆØ—)’)‘+”+ˆØ—=’= f�=Ñ-Ô-Ð-Ð-Ð-Ø�ŠÑ Ô ˆÝ(¨Ñ.Ô.‰ˆ�ð Ý”7—>’> $Ñ'Ô'Ð 'Ð 'Ð'Ý”=¥¤¨¡¤Ô!6Ñ7Ô7Ð 7Ð 7Ð7Ø × Ò ˜QŸYšY™[œ[¨7Ñ2°AÑ 6Ô 6Ð 6Ø × Ò �S §¢°F Ñ!;Ô!;Ñ<Ô<¸aÑ @Ô @Ð @Ø × Ò ˜V×/Ò/Ñ1Ô1°4Ñ 8Ô 8Ð 8Ø × Ò ˜V×/Ò/Ñ1Ô1°4Ñ 8Ô 8Ð 8à �LŠL‰NŒNˆNØ �LŠL‰NŒNˆNˆNˆNøð �LŠL‰NŒNˆNØ �LŠL‰NŒNˆNˆNøøøs Á'DFÆ*F;có—t¦«5}tjt¦«}tjt¦«}|D]O}||jxxdz cc<|| t jt j¦«xxdz cc<ŒP|  |t j d¦«t¦«r&|  |t j d¦«tr-tr&|  |t jd¦«|  |t jd¦«|  |t jd¦«ddd¦«dS#1swxYwYdS)Nr)r¸)rÚ collectionsÚ defaultdictÚintrâÚ getsockoptrãÚ SOL_SOCKETÚSO_TYPEÚassertGreaterEqualrîrÚAF_INET6rr räråré)r>ÚsocksÚfamsÚtypesrßs r4Útest_create_socketsz TestNetUtils.test_create_socketsQs¯€Ý Ñ Ô ð A ÝÔ*­3Ñ/Ô/ˆDÝÔ+­CÑ0Ô0ˆEØð Lð L�Ø�Q”X��” !Ñ#��‘à�a—l’l¥6Ô#4µf´nÑEÔEÐFÐFÔFÈ!ÑKÐFÐFÑFÐFØ × #Ò # D­¬Ô$8¸!Ñ <Ô <Ð <݉Œð BØ×'Ò'¨­V¬_Ô(=¸qÑAÔAÐAÝð AÕ-ð AØ×'Ò'¨­V¬^Ô(<¸aÑ@Ô@Ð@Ø × #Ò # E­&Ô*<Ô$=¸qÑ AÔ AÐ AØ × #Ò # E­&Ô*;Ô$<¸aÑ @Ô @Ð @ð Að Að Añ Aô Að Að Að Að Að Að Að Aøøøð Að Að Að Að Að As�EE;Å;E?ÆE?N) r[r\r]rrÔrÕrrìròrrrørrLr7r4r×r×sÊ€€€€€ð7ð7ð7ð €X„_˜�Y  Ñ-Ô-ð ;ð ;ñ.Ô-ð ;ð @ð @ð @ð€X„_˜�Y  Ñ-Ô-Ø€X„_�VÐ&˜wØAñCôCððñCôCñ.Ô-ðð"AðAðAðAðAr7r×cóΗeZdZe¦«d„¦«Zd„Ze¦«ejed¦«eje d¦«d„¦«¦«¦«Z d„Z d„Z d„Z d S) ÚTestMemLeakClassc󂇗ˆfd„}ddiŠ| |dd¬¦«| ‰dd¦«dS)Ncó(•—‰dxxdz cc<dS)NÚcntr)rL)r s€r4Úfunz(TestMemLeakClass.test_times..fungsø€Ø �ˆJˆJŒJ˜!‰OˆJˆJ‰JˆJˆJr7r ré é)ÚtimesÚ warmup_timesé)Úexecuter;)r>r r s @r4Ú test_timeszTestMemLeakClass.test_timeses]ø€ð ð ð ð ð à�aˆjˆØ � Š �S °ˆ Ñ4Ô4Ð4Ø ×Ò˜˜Uœ RÑ(Ô(Ð(Ð(Ð(r7cón—| t|jd„d¬¦«| t|jd„d¬¦«| t|jd„d¬¦«| t|jd„d¬ ¦«| t|jd „d¬ ¦«dS) Ncó—dS©NrrLrLr7r4r‡z1TestMemLeakClass.test_param_err..nó€¸A€r7r©rcó—dSrrLrLr7r4r‡z1TestMemLeakClass.test_param_err..orr7éÿÿÿÿcó—dSrrLrLr7r4r‡z1TestMemLeakClass.test_param_err..prr7)rcó—dSrrLrLr7r4r‡z1TestMemLeakClass.test_param_err..qrr7)Ú tolerancecó—dSrrLrLr7r4r‡z1TestMemLeakClass.test_param_err..rrr7)r+)rDrMr©r>s r4Útest_param_errzTestMemLeakClass.test_param_errms­€Ø ×Ò�* d¤l°I°IÀQÐÑGÔGÐGØ ×Ò�* d¤l°I°IÀRÐÑHÔHÐHØ ×Ò�* d¤l°I°IÈBÐÑOÔOÐOØ ×Ò�* d¤l°I°IÈÐÑLÔLÐLØ ×Ò�* d¤l°I°IÀrÐÑJÔJÐJÐJÐJr7z skipped on CIzskipped during test coveragecól—g}|fd„} | td|j|d¬¦«~dS#~wxYw)Ncó6—| ddz¦«dS©NÚxxxxxxxxxxxxxxxxxxxxxxxxi©Úappend©Úlss r4r z+TestMemLeakClass.test_leak_mem..funzs€Ø �IŠI�h ‘oÑ &Ô &Ð &Ð &Ð &r7z extra-memé2r)ÚassertRaisesRegexÚAssertionErrorr)r>r'r s r4Ú test_leak_memzTestMemLeakClass.test_leak_memtsf€ðˆàð 'ð 'ð 'ð 'ð à × "Ò "¥>°;Ø#'¤<°¸Bð #ñ @ô @ð @ð��ø�ˆFˆFˆFˆFs‰$0°3cóz‡‡—ˆˆfd„}gŠtrdnd}‰ td|z‰j|¦«dS)NcóŽ•—tt¦«}‰ |j¦«‰ |¦«dSrJ)rrrŽÚ addCleanuprœr%)rxÚboxr>s €€r4r z1TestMemLeakClass.test_unclosed_files..fun…s5ø€Ý•X‘”ˆAØ �OŠO˜AœGÑ $Ô $Ð $Ø �JŠJ�q‰MŒMˆMˆMˆMr7ÚfdÚhandlez unclosed )rr)r*r)r>r rõr/s` @r4Útest_unclosed_filesz$TestMemLeakClass.test_unclosed_files„siøø€ð ð ð ð ð ð ð ˆÝÐ*ˆtˆt (ˆØ ×Ò�~¨{¸TÑ/AØ#œ|¨Sñ 2ô 2ð 2ð 2ð 2r7c󘇗ˆfd„}gŠd}| ||dd¬¦«| t‰¦«|dz¦«dS)Ncó8•—‰ ddz¦«dSr"r$r&s€r4r z,TestMemLeakClass.test_tolerance..fun�sø€Ø �IŠI�h ‘oÑ &Ô &Ð &Ð &Ð &r7édri€ )rrrr))rr;r¼)r>r rr's @r4Útest_tolerancezTestMemLeakClass.test_tolerance�spø€ð 'ð 'ð 'ð 'ð 'à ˆØˆØ � Š �S °AØ0ð ñ 2ô 2ð 2à ×Ò�˜R™œ %¨!¡)Ñ,Ô,Ð,Ð,Ð,r7có~—d„}| t|¦«| t¦«5| t|¦«ddd¦«n #1swxYwYd„}| t¦«5| t|¦«ddd¦«dS#1swxYwYdS)Ncó—ddz dSr/rLrLr7r4Úfun_1z2TestMemLeakClass.test_execute_w_exc..fun_1™s€Ø �‰EˆEˆEˆEr7có—dSrJrLrLr7r4Úfun_2z2TestMemLeakClass.test_execute_w_exc..fun_2Ÿs€Ø ˆDr7)Ú execute_w_excrErDržr*)r>r9r;s r4Útest_execute_w_excz#TestMemLeakClass.test_execute_w_exc˜sF€ð ð ð à ×ÒÕ,¨eÑ4Ô4Ð4Ø × Ò Õ0Ñ 1Ô 1ð /ð /Ø × Ò �w¨Ñ .Ô .Ð .ð /ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð ð ð à × Ò �~Ñ .Ô .ð 9ð 9Ø × Ò Õ0°%Ñ 8Ô 8Ð 8ð 9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9ð 9ð 9s#¹A!Á!A%Á(A% B2Â2B6Â9B6N)r[r\r]rrrrÔrÕr r r+r2r6r=rLr7r4rrbsЀ€€€€ðÐÑÔð)ð)ñÔð)ðKðKðKðÐÑÔØ€X„_�Z Ñ1Ô1Ø€X„_�XÐ=Ñ>Ô>ð ð ñ?Ô>ñ2Ô1ñÔð ð 2ð 2ð 2ð-ð-ð-ð 9ð 9ð 9ð 9ð 9r7rcó—eZdZd„Zd„ZdS)ÚTestTestingUtilscó2—tj¦«}t|¦«}| ¦«d„| |j¦«D¦«dd}| |¦«| ¦«¦«dS)Ncó*—g|]}|ddk¯|‘ŒS)r)r¾rL©Ú.0Úxs r4ú z;TestTestingUtils.test_process_namespace..«s!€Ð@Ð@Ð@�Q°°1´¸²°ˆq°°°r7r)rhr­rÚtestrjÚgettersr;r¾)r>r´Únsr s r4Útest_process_namespacez'TestTestingUtils.test_process_namespace§s~€Ý ŒNÑ Ô ˆÝ ˜qÑ !Ô !ˆØ �Љ Œ ˆ Ø@Ð@˜"Ÿ'š' "¤*Ñ-Ô-Ð@Ñ@Ô@ÀÔCÀAÔFˆØ ×Ò˜˜™œ §¢¡¤Ñ)Ô)Ð)Ð)Ð)r7cóà—t¦«}d„| |j¦«D¦«dd}| |¦«t j¦«¦«dS)Ncó*—g|]}|ddk¯|‘ŒS)r)Ú net_if_addrsrLrBs r4rEz:TestTestingUtils.test_system_namespace..°s&€ÐHÐHÐH�Q°°1´¸Ò1GÐ1GˆqÐ1GÐ1GÐ1Gr7r)rrjrGr;rhrL)r>rHr s r4Útest_system_namespacez&TestTestingUtils.test_system_namespace®sc€Ý Ñ Ô ˆØHÐH˜"Ÿ'š' "¤*Ñ-Ô-ÐHÑHÔHÈÔKÈAÔNˆØ ×Ò˜˜™œ¥Ô 3Ñ 5Ô 5Ñ6Ô6Ð6Ð6Ð6r7N)r[r\r]rIrMrLr7r4r?r?¥s2€€€€€ð*ð*ð*ð7ð7ð7ð7ð7r7r?có—eZdZd„ZdS)ÚTestOtherUtilscóž—ttjdd¦«ddd¦«¦«sJ‚tt¦«¦«rJ‚dS)Nr5za b cr)r¸r8)rrúÚ namedtupleÚtuplers r4Útest_is_namedtuplez!TestOtherUtils.test_is_namedtuple¶sP€ÝÐC�[Ô3°E¸7ÑCÔCÀAÀqÈ!ÑLÔLÑMÔMÐMÐMÐMÝ ¥¡¤Ñ)Ô)Ð)Ð)Ð)Ð)Ð)r7N)r[r\r]rSrLr7r4rOrO´s#€€€€€ð*ð*ð*ð*ð*r7rOÚ__main__)Ú run_from_name):Ú__doc__rúrÛrŸrerãrærÐrÔrhÚ psutil.testsrrrÚpsutil._commonrrrr r r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r&r`r‹rªr×rr?rOr[Úpsutil.tests.runnerrUrŽrLr7r4úrZsšððððÐÐÐØÐÐÐØ € € € Ø € € € Ø € € € Ø € € € ØÐÐÐØ€€€à € € € ØÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØ&Ð&Ð&Ð&Ð&Ð&Ø$Ð$Ð$Ð$Ð$Ð$Ø(Ð(Ð(Ð(Ð(Ð(Ø#Ð#Ð#Ð#Ð#Ð#Ø!Ð!Ð!Ð!Ð!Ð!Ø-Ð-Ð-Ð-Ð-Ð-Ø#Ð#Ð#Ð#Ð#Ð#Ø'Ð'Ð'Ð'Ð'Ð'Ø'Ð'Ð'Ð'Ð'Ð'Ø'Ð'Ð'Ð'Ð'Ð'Ø$Ð$Ð$Ð$Ð$Ð$Ø)Ð)Ð)Ð)Ð)Ð)Ø#Ð#Ð#Ð#Ð#Ð#ØÐÐÐÐÐØ'Ð'Ð'Ð'Ð'Ð'Ø&Ð&Ð&Ð&Ð&Ð&Ø&Ð&Ð&Ð&Ð&Ð&ØÐÐÐÐÐØ*Ð*Ð*Ð*Ð*Ð*Ø&Ð&Ð&Ð&Ð&Ð&ØÐÐÐÐÐØ)Ð)Ð)Ð)Ð)Ð)Ø#Ð#Ð#Ð#Ð#Ð#Ø$Ð$Ð$Ð$Ð$Ð$Ø"Ð"Ð"Ð"Ð"Ð"Ø)Ð)Ð)Ð)Ð)Ð)Ø'Ð'Ð'Ð'Ð'Ð'Ø"Ð"Ð"Ð"Ð"Ð"Ø(Ð(Ð(Ð(Ð(Ð(Ø&Ð&Ð&Ð&Ð&Ð&Ø%Ð%Ð%Ð%Ð%Ð%ð?Cð?Cð?Cð?Cð?C˜ñ?Cô?Cð?CðD$!ð$!ð$!ð$!ð$!˜ñ$!ô$!ð$!ðN*,ð*,ð*,ð*,ð*,�nñ*,ô*,ð*,ðZB+ðB+ðB+ðB+ðB+�~ñB+ôB+ðB+ðJDAðDAðDAðDAðDA�>ñDAôDAðDAðN ð?9ð?9ð?9ð?9ð?9�~ñ?9ô?9ñ „ð?9ðD 7ð 7ð 7ð 7ð 7�~ñ 7ô 7ð 7ð*ð*ð*ð*ð*�^ñ*ô*ð*ð ˆzÒÐØ1Ð1Ð1Ð1Ð1Ð1Ø€M�(ÑÔÐÐÐðÐr7