hyb
2026-01-30 7657e1b2fa251a2ea372710ad75cb395a3c0e374
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
Ë
IñúhŠJãó —dZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddlm
Z
ddl Z ddl Z ddl m Z ddl mZddl mZddlmZddlmZdd    lmZdd
l mZdd l mZdd l mZdd l 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(ddl m)Z)dd l m*Z*dd!l m+Z+dd"l m,Z,dd#l m-Z-dd$l m.Z.dd%l m/Z/dd&l m0Z0dd'l m1Z1Gd(„d)e«Z2Gd*„d+e«Z3Gd,„d-e«Z4Gd.„d/e«Z5Gd0„d1e«Z6e&jnjqd2¬3«Gd4„d5e««Z9Gd6„d7e«Z:Gd8„d9e«Z;Gd:„d;e«Z<y)<z1Tests for testing utils (psutil.tests namespace).éN)Úmock)ÚFREEBSD)ÚNETBSD)ÚPOSIX)Ú open_binary)Ú    open_text)Ú supports_ipv6)Ú
CI_TESTING)ÚCOVERAGE)ÚHAS_NET_CONNECTIONS_UNIX)ÚHERE)Ú
PYTHON_EXE)ÚPYTHON_EXE_ENV)ÚPsutilTestCase)ÚTestMemoryLeak)Ú bind_socket)Úbind_unix_socket©Ú
call_until)Úchdir)Úcreate_sockets)Ú fake_pytest)Úfilter_proc_net_connections)Ú get_free_port)Ú is_namedtuple)Úprocess_namespace)Úpytest)Ú reap_children)Úretry)Úretry_on_failure)Ú
safe_mkdir)Ú safe_rmpath)Ú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
y)    ÚTestRetryDecoratorz
time.sleepc󔇗tddd¬«ˆfd„«}ttd««Š|«dk(sJ‚|jdk(sJ‚y)Néé©ÚretriesÚintervalÚlogfuncó:•—‰r‰j«ddz ‰rŒy©Nr-r©Úpop©Úqueues€úNH:\Change_password\venv_build\Lib\site-packages\psutil/tests/test_testutils.pyÚfooz2TestRetryDecorator.test_retry_success.<locals>.fooEó ø€áØ—    ‘    ” ؐA’òðóé)rÚlistÚrangeÚ
call_count©ÚselfÚsleepr9r7s   @r8Útest_retry_successz%TestRetryDecorator.test_retry_successAsQø€ô
q 1¨TÔ    2ó    ó
3ð    ô ”U˜1“X“ˆÙ‹u˜ŠzЈzØ×Ñ 1Ò$Ð$Ñ$r;c󿇗tddd¬«ˆfd„«}ttd««Štjt
«5|«ddd«|j dk(sJ‚y#1swYŒxYw)Nr,r-r.có:•—‰r‰j«ddz ‰rŒyr3r4r6s€r8r9z2TestRetryDecorator.test_retry_failure.<locals>.fooSr:r;é)rr=r>rÚraisesÚZeroDivisionErrorr?r@s   @r8Útest_retry_failurez%TestRetryDecorator.test_retry_failurePsjø€ô
q 1¨TÔ    2ó    ó
3ð    ô ”U˜1“X“ˆÜ ]‰]Ô,Ó -ñ    Ù ŒE÷    à×Ñ 1Ò$Ð$Ñ$÷    ð    ús ÁA'Á'A0có¾—ttd¬«d„«}tjt«5|«ddd«|j
dk(sJ‚y#1swYŒxYw)Nr-)Ú    exceptionr0có—t‚©N)Ú    TypeError©r;r8r9z2TestRetryDecorator.test_exception_arg.<locals>.fooas€äˆOr;r)rÚ
ValueErrorrrGrNr?©rArBr9s   r8Útest_exception_argz%TestRetryDecorator.test_exception_arg_sW€ä    œ¨aÔ    0ñ    ó
1ð    ô]‰]œ9Ó %ñ    Ù ŒE÷    à×Ñ 1Ò$Ð$Ñ$÷    ð    ús ±AÁAcó¸—tddd¬«d„«}tjt«5|«ddd«|jdk(sJ‚y#1swYŒxYw)Nr,r.có—ddz yr3rOrOr;r8r9z4TestRetryDecorator.test_no_interval_arg.<locals>.foomó    €à ‹Er;r©rrrGrHr?rQs   r8Útest_no_interval_argz'TestRetryDecorator.test_no_interval_argis\€ô
q 4°Ô    5ñ    ó
6ð    ô]‰]Ô,Ó -ñ    Ù ŒE÷    à×Ñ 1Ò$Ð$Ñ$÷    ð    úó ®AÁAcó¸—tddd¬«d„«}tjt«5|«ddd«|jdk(sJ‚y#1swYŒxYw)Nr,r-r.có—ddz yr3rOrOr;r8r9z0TestRetryDecorator.test_retries_arg.<locals>.foowrUr;rVrQs   r8Útest_retries_argz#TestRetryDecorator.test_retries_argusZ€ä    q 1¨TÔ    2ñ    ó
3ð    ô]‰]Ô,Ó -ñ    Ù ŒE÷    à×Ñ 1Ò$Ð$Ñ$÷    ð    úrXcóz—tjt«5tdd¬«ddd«y#1swYyxYw)Nr,r-)r/Útimeout)rrGrPr)rArBs  r8Útest_retries_and_timeout_argsz0TestRetryDecorator.test_retries_and_timeout_argss-€ä ]‰]œ:Ó &ñ    (Ü ˜! QÕ '÷    (÷    (ñ    (úsš1±:N) Ú__name__Ú
__module__Ú __qualname__rÚpatchrCrIrRrWr[r^rOr;r8r*r*@sº„Ø€T‡ZZ Óñ %óð %ð€T‡ZZ Óñ %óð %ð€T‡ZZ Óñ%óð%ð€T‡ZZ Óñ    %óð    %ð€T‡ZZ Óñ%óð%ð€T‡ZZ Óñ(óñ(r;r*có0—eZdZd„Zd„Zd„Zd„Zd„Zd„Zy)ÚTestSyncTestUtilscóp—ttj««tt    j
««dz}t jdtdg«¬«5tjtj«5t|«ddd«ddd«y#1swYŒxYw#1swYyxYw)NiŸ†úpsutil.tests.retry.__iter__r©Ú return_value) r(ÚosÚgetpidÚmaxÚpsutilÚpidsrrbÚiterrrGÚ NoSuchProcess)rAÚnopids  r8Útest_wait_for_pidz#TestSyncTestUtils.test_wait_for_pid†sƒ€Ü”R—Y‘Y“[Ô!Ü”F—K‘K“MÓ" UÑ*ˆÜ Z‰ZÐ5ÄDÈ!ÈÃIÔ Nñ    $Ü—‘œv×3Ñ3Ó4ñ $ܘUÔ#÷ $÷    $ð    $÷ $ð $ú÷    $ð    $ús$Á$B, B ÂB, B)    Â%B,Â,B5cóà—|j«}t|d«5}|jd«ddd«t|«tj
j |«rJ‚y#1swYŒ6xYw)NÚwr9©Ú
get_testfnÚopenÚwriter'riÚpathÚexists©rAÚtestfnÚfs   r8Útest_wait_for_filez$TestSyncTestUtils.test_wait_for_files[€Ø—‘Ó"ˆÜ &˜#Ó ð     !Ø G‰GEŒN÷    äfÔÜ—7‘7—>‘> &Ô)Ð)Ð)Ð)÷    ð    ús A$Á$A-cóė|j«}t|d«5    ddd«t|d¬«tjj |«rJ‚y#1swYŒ8xYw)NrsT)Úempty)rurvr'rirxry©rAr{s  r8Útest_wait_for_file_emptyz*TestSyncTestUtils.test_wait_for_file_empty”sS€Ø—‘Ó"ˆÜ &˜#Ó ñ    Ø ÷    äf DÕ)Ü—7‘7—>‘> &Ô)Ð)Ð)Ð)÷    ð    ús AÁAcó—|j«}tjdtdg«¬«5t    j
t «5t|«ddd«ddd«y#1swYŒxYw#1swYyxYw)Nrfrrg)rurrbrnrrGÚOSErrorr'r€s  r8Útest_wait_for_file_no_filez,TestSyncTestUtils.test_wait_for_file_no_file›sf€Ø—‘Ó"ˆÜ Z‰ZÐ5ÄDÈ!ÈÃIÔ Nñ    &Ü—‘œwÓ'ñ &ܘfÔ%÷ &÷    &ð    &÷ &ð &ú÷    &ð    &ús#²A5Á A)ÁA5Á)A2    Á.A5Á5A>cóä—|j«}t|d«5}|jd«ddd«t|d¬«tj
j |«sJ‚y#1swYŒ8xYw)Nrsr9F)Údeletertrzs   r8Útest_wait_for_file_no_deletez.TestSyncTestUtils.test_wait_for_file_no_delete¡sZ€Ø—‘Ó"ˆÜ &˜#Ó ð     !Ø G‰GEŒN÷    äf UÕ+܏w‰w~‰~˜fÔ%Ð%Ñ%÷    ð    ús A&Á&A/có—td„«y)Ncó—y©Nr-rOrOr;r8ú<lambda>z3TestSyncTestUtils.test_call_until.<locals>.<lambda>©ór;r©rAs r8Útest_call_untilz!TestSyncTestUtils.test_call_until¨s
€Ü‘9Õr;N)    r_r`rarqr}rr„r‡rŽrOr;r8rdrd…s „ò$ò*ò*ò&ò &ór;rdcó*—eZdZd„Zd„Zd„Zd„Zd„Zy)ÚTestFSTestUtilscóp—tt«5}|jdk(sJ‚    ddd«y#1swYyxYw)NÚr)rÚ__file__Úmode©rAr|s  r8Útest_open_textzTestFSTestUtils.test_open_text®s1€Ü ”xÓ  ð    ! AØ—6‘6˜S’=Ð  ‘=÷    !÷    !ñ    !úó,¬5cóp—tt«5}|jdk(sJ‚    ddd«y#1swYyxYw)NÚrb)rr“r”r•s  r8Útest_open_binaryz TestFSTestUtils.test_open_binary²s1€Ü œÓ "ð    " aØ—6‘6˜T’>Ð !‘>÷    "÷    "ñ    "úr—cóԗ|j«}t|«tjj    |«sJ‚t|«tjj    |«sJ‚yrM)rur!rirxÚisdirr€s  r8Útest_safe_mkdirzTestFSTestUtils.test_safe_mkdir¶sJ€Ø—‘Ó"ˆÜ6Ô܏w‰w}‰}˜VÔ$Ð$Ð$ܐ6Ô܏w‰w}‰}˜VÔ$Ð$Ñ$r;có`—|j«}t|d«j«t|«tj
j |«rJ‚t|«t    j|«t|«tj
j |«rJ‚tjdttjd«¬«5}tjt«5t|«ddd«|jsJ‚    ddd«y#1swYŒ!xYw#1swYyxYw)Nrszpsutil.tests.os.statÚ)Ú side_effect)rurvÚcloser"rirxryÚmkdirrrbrƒÚerrnoÚEINVALrrGÚcalled)rAr{Úms   r8Útest_safe_rmpathz TestFSTestUtils.test_safe_rmpath½sހà—‘Ó"ˆÜ ˆVSÓ×ÑÔ!ܐFÔÜ—7‘7—>‘> &Ô)Ð)Ð)äFÔä
‰ÔܐFÔÜ—7‘7—>‘> &Ô)Ð)Ð)ä Z‰ZØ "´¼¿ ¹ ÀbÓ0Iô
ð    à Ü—‘œwÓ'ñ $ܘFÔ#÷ $à—8’8ˆO‘8÷     ð    ÷ $ð $ú÷    ð    ús$ÃD$Ã, DÃ8D$ÄD!    ÄD$Ä$D-cóX—|j«}tj«}tj|«t    |«5tj«tj
j ||«k(sJ‚    ddd«tj«|k(sJ‚y#1swYŒ#xYwrM)ruriÚgetcwdr¢rrxÚjoin)rAr{Úbases   r8Ú
test_chdirzTestFSTestUtils.test_chdirÑsx€Ø—‘Ó"ˆÜy‰y‹{ˆÜ
‰ÔÜ 6‹]ñ    =Ü—9‘9“;¤"§'¡'§,¡,¨t°VÓ"<Ò<Ð <Ñ<÷    =äy‰y‹{˜dÒ"Ð"Ñ"÷    =ð    =ús Á8B  B)N)r_r`rar–ršrr§r¬rOr;r8rr­s„ò!ò"ò%òó(#r;rcóf—eZdZd„Zd„Zej je d¬«d„«Z    d„Z
y)ÚTestProcessUtilscó.—|j«}tj|j«}|j    «sJ‚t «|j    «rJ‚tj jrJ‚tj jrJ‚yrM)    Ú spawn_subprocrlÚProcessÚpidÚ
is_runningrÚtestsÚ _pids_startedÚ_subprocesses_started)rAÚsubpÚps   r8Útest_reap_childrenz#TestProcessUtils.test_reap_childrenÛsm€Ø×!Ñ!Ó#ˆÜ N‰N˜4Ÿ8™8Ó $ˆØ|‰|Œ~Ј~܌ؗ<‘<”>Ð!Ð!Ü—<‘<×-Ò-Ð-Ð-Ü—<‘<×5Ò5Ð5Ð5Ð5r;có —|j«\}}|j|jk7sJ‚|j«sJ‚|j«sJ‚tj«j «}||gk(sJ‚tj«j d¬«}t |«dk(sJ‚||vsJ‚||vsJ‚|j«tj«k(sJ‚|j«|jk(sJ‚t|«|j«rJ‚|j«sJ‚t|«|j«rJ‚y)NT)Ú    recursiveé) Úspawn_children_pairr²r³rlr±ÚchildrenÚlenÚppidrirjr%)rAÚchildÚ
grandchildr¾s    r8Útest_spawn_children_pairz)TestProcessUtils.test_spawn_children_pairäs8€Ø ×4Ñ4Ó6шˆz؏y‰y˜JŸN™NÒ*Ð*Ð*Ø×ÑÔ!Ð!Ð!Ø×$Ñ$Ô&Ð&Ð&Ü—>‘>Ó#×,Ñ,Ó.ˆØ˜E˜7Ò"Ð"Ð"Ü—>‘>Ó#×,Ñ,°tÐ,Ó<ˆÜ8‹} Ò!Ð!Ð!ؘѠРРؘXÑ%Ð%Ð%؏z‰z‹|œrŸy™y›{Ò*Ð*Ð*؏‰Ó  E§I¡IÒ-Ð-Ð-ä%ÔØ×#Ñ#Ô%Ð%Ð%Ø×$Ñ$Ô&Ð&Ð&ä*ÔØ×(Ñ(Ô*Ð*Ð*Ð*r;ú
POSIX only©Úreasoncóp—|j«\}}|j«tjk(sJ‚yrM)Ú spawn_zombieÚstatusrlÚ STATUS_ZOMBIE)rAÚ_parentÚzombies   r8Útest_spawn_zombiez"TestProcessUtils.test_spawn_zombieùs.€à×+Ñ+Ó-‰ˆØ}‰}‹¤&×"6Ñ"6Ò6Ð6Ñ6r;cóŠ—|j«}t|«|j|j«t|«t    j
|j«j«}t|«|j|j«t|«t ddg}t    j|tjtjt¬«}t|«|j|j«t|«|j«j}t|«|j|j«t|«tr`|j«\}}t|«t|«|j|j«|j|j«yy)Nz-cz3import time; [time.sleep(0.1) for x in range(100)];)ÚstdoutÚstderrÚenv) r°r%Úassert_pid_goner²rlr±rÚPopenÚ
subprocessÚPIPErrrÈ)rAr¸Úcmdr²ÚparentrÌs      r8Útest_terminatezTestProcessUtils.test_terminateþsG€à × Ñ Ó  ˆÜ!Œ Ø ×јQŸU™UÔ#ܐ!Œ ä N‰N˜4×-Ñ-Ó/×3Ñ3Ó 4ˆÜ!Œ Ø ×јQŸU™UÔ#ܐ!Œ ô Ø Ø Að
ˆô
L‰LØ Ü—?‘?Ü—?‘?Üô    
ˆô     !Œ Ø ×јQŸU™UÔ#ܐ!Œ à× Ñ Ó"×&Ñ&ˆÜ#ŒØ ×јQŸU™UÔ#ܐ#Œå Ø!×.Ñ.Ó0‰NˆFFÜ fÔ Ü fÔ Ø ×  Ñ   §¡Ô ,Ø ×  Ñ   §¡Õ ,ð r;N) r_r`rar¹rÃrÚmarkÚskipifrrÍrØrOr;r8r®r®Ús;„ò6ò+ð* ‡[[×јE˜    ¨,ÐÓ7ñ7ó8ð7ó%-r;r®có8—eZdZd„Zej
j e d¬«d„«Zd„Z    ej
j e d¬«ej
j e
xse d¬«ej
j e d¬«d„«««Z d    „Zy
) Ú TestNetUtilscó—t«}td|f¬«5}|j«d|k(sJ‚    ddd«y#1swYyxYw)NrŸ©Úaddrr-)rrÚ getsockname)rAÚportÚss   r8rzTestNetUtils.bind_socket'sE€Ü‹ˆÜ ˜r 4˜jÔ )ð    .¨QØ—=‘=“? 1Ñ%¨Ò-Ð -Ñ-÷    .÷    .ñ    .ús    ™<¼ArÄrÅcóv—|j«}t|«5}|jtjk(sJ‚|j
tj k(sJ‚|j«|k(sJ‚tjj|«sJ‚tjtj|«j«sJ‚    ddd«|j«}t|tj¬«5}|j
tjk(sJ‚    ddd«y#1swYŒ^xYw#1swYyxYw)N)Útype)rurÚfamilyÚsocketÚAF_UNIXräÚ SOCK_STREAMràrirxryÚstatÚS_ISSOCKÚst_modeÚ
SOCK_DGRAM)rAÚnameÚsocks   r8Útest_bind_unix_socketz"TestNetUtils.test_bind_unix_socket,sú€à‰Ó ˆÜ ˜dÓ #ð    8 tØ—;‘;¤&§.¡.Ò0Ð 0Ð0Ø—9‘9¤× 2Ñ 2Ò2Ð 2Ð2Ø×#Ñ#Ó%¨Ò-Ð -Ð-Ü—7‘7—>‘> $Ô'Ð 'Ð'Ü—=‘=¤§¡¨£×!6Ñ!6Ô7Ð 7Ñ7÷     8ð‰Ó ˆÜ ˜d¬×):Ñ):Ô ;ð    2¸tØ—9‘9¤× 1Ñ 1Ò1Ð 1Ñ1÷    2ð    2÷    8ð    8ú÷    2ð    2úsœB)D#Ã9 D/Ä#D,Ä/D8có4—dt«f}ttj|¬«\}}|5|5|j    «|k(sJ‚|j «|k(sJ‚|j    «|k7sJ‚    ddd«ddd«y#1swYŒxYw#1swYyxYw)Nz    127.0.0.1rÞ)rr$ræÚAF_INETràÚ getpeername)rArßÚserverÚclients    r8Útest_tcp_socketpairz TestNetUtils.test_tcp_socketpair:s–€Øœ]›_Ð-ˆÜ'¬¯©¸TÔB‰ˆØ ñ    0Vñ    0à×%Ñ%Ó'¨4Ò/Ð /Ð/Ø×%Ñ%Ó'¨4Ò/Ð /Ð/Ø×%Ñ%Ó'¨4Ò/Ð /Ñ/÷        0÷    0÷    0ñ    0ú÷    0ð    0ús#­B°ABÁ1BÂB     ÂBÂBz*/var/run/log UNIX socket opened by defaultzcan't list UNIX socketscóЗtj«}|j«}t|j    d¬««rJ‚|j «}t |«\}}    tjj|«sJ‚tjtj|«j«sJ‚|j«|z
dk(sJ‚tt|j    d¬«««dk(sJ‚|j«|k(sJ‚|j«|k(sJ‚    |j!«|j!«y#|j!«|j!«wxYw)NÚunix)Úkindr¼)rlr±Únum_fdsrÚnet_connectionsrur&rirxryrérêrër¿ràròr¡)rAr¸rùrírórôs      r8Útest_unix_socketpairz!TestNetUtils.test_unix_socketpairCs/€ô N‰NÓ ˆØ—)‘)“+ˆÜ.¨q×/@Ñ/@ÀfÐ/@Ó/MÔNÐNÐN؏‰Ó ˆÜ(¨Ó.‰ˆð    Ü—7‘7—>‘> $Ô'Ð 'Ð'Ü—=‘=¤§¡¨£×!6Ñ!6Ô7Ð 7Ð7Ø—9‘9“; Ñ(¨AÒ-Ð -Ð-äÜ/°×0AÑ0AÀvÐ0AÓ0NÓOóðòð ðð
×%Ñ%Ó'¨4Ò/Ð /Ð/Ø×%Ñ%Ó'¨4Ò/Ð /Ñ/à L‰LŒNØ L‰LNøð L‰LŒNØ L‰LNús Á!CEÅ"E%cór—t«5}tjt«}tjt«}|D]R}||jxxdz cc<||j t jt j«xxdz cc<ŒT|t jdk\sJ‚t«r|t jdk\sJ‚trtr|t jdk\sJ‚|t jdk\sJ‚|t j dk\sJ‚    ddd«y#1swYyxYw)Nr-r¼)rÚ collectionsÚ defaultdictÚintråÚ
getsockoptræÚ
SOL_SOCKETÚSO_TYPErñr    ÚAF_INET6rr rçrèrì)rAÚsocksÚfamsÚtypesrâs     r8Útest_create_socketsz TestNetUtils.test_create_sockets`s €Ü Ó ð     1 Ü×*Ñ*¬3Ó/ˆDÜ×+Ñ+¬CÓ0ˆEØò LØQ—X‘X“ !Ñ#“àa—l‘l¤6×#4Ñ#4´f·n±nÓEÓFÈ!ÑKÔFð L𜟙Ñ'¨1Ò,Ð ,Ð,܌؜FŸO™OÑ,°Ò1Ð1Ð1ÝÕ1ØœFŸN™NÑ+¨qÒ0Ð0Ð0Øœ×+Ñ+Ñ,°Ò1Ð 1Ð1Øœ×*Ñ*Ñ+¨qÒ0Ð 0Ñ0÷     1÷     1ñ     1ús ‹DD-Ä-D6N)r_r`rarrrÙrÚrrïrõrrr rûrrOr;r8rÜrÜ&s³„ò.ð
 ‡[[×јE˜    ¨,ÐÓ7ñ 2ó8ð 2ò0ð ‡[[×јE˜    ¨,ÐÓ7Ø ‡[[×ÑØÒ'Ð"Nðóð ‡[[×ÑØ $Ð$Ð-Fðóñóóó8ðó,1r;rÜÚserial©rícóؗeZdZe«d„«Zd„Ze«ejje    d¬«ejje
d¬«d„«««Z d„Z d„Z d    „Zy
) ÚTestMemLeakClasscóT‡—ˆfd„}ddiŠ|j|dd¬«‰ddk(sJ‚y)Ncó •—‰dxxdz cc<y)NÚcntr-rO)rs€r8Úfunz(TestMemLeakClass.test_times.<locals>.funusø€Ø ‹J˜!‰OŒJr;rré
é)ÚtimesÚ warmup_timesé)Úexecute)rArrs  @r8Ú
test_timeszTestMemLeakClass.test_timesss7ø€ô    ðaˆjˆØ  ‰ S °ˆ Ô4ؐ5‰z˜RÒÐÑr;có˜—tjt«5|jd„d¬«ddd«tjt«5|jd„d¬«ddd«tjt«5|jd„d¬«ddd«tjt«5|jd„d¬    «ddd«tjt«5|jd
„d¬ «ddd«y#1swYŒâxYw#1swYŒ¸xYw#1swYŒŽxYw#1swYŒdxYw#1swYyxYw) Ncó—y©NrrOrOr;r8r‹z1TestMemLeakClass.test_param_err.<locals>.<lambda>~rŒr;r©rcó—yrrOrOr;r8r‹z1TestMemLeakClass.test_param_err.<locals>.<lambda>€rŒr;éÿÿÿÿcó—yrrOrOr;r8r‹z1TestMemLeakClass.test_param_err.<locals>.<lambda>‚rŒr;)rcó—yrrOrOr;r8r‹z1TestMemLeakClass.test_param_err.<locals>.<lambda>„rŒr;)Ú    tolerancecó—yrrOrOr;r8r‹z1TestMemLeakClass.test_param_err.<locals>.<lambda>†rŒr;)r/)rrGrPrrs r8Útest_param_errzTestMemLeakClass.test_param_err|sü€Ü ]‰]œ:Ó &ñ    -Ø L‰L™¨!ˆLÔ ,÷    -ä ]‰]œ:Ó &ñ    .Ø L‰L™¨"ˆLÔ -÷    .ä ]‰]œ:Ó &ñ    5Ø L‰L™°ˆLÔ 4÷    5ä ]‰]œ:Ó &ñ    2Ø L‰L™¨bˆLÔ 1÷    2ä ]‰]œ:Ó &ñ    0Ø L‰L™¨BˆLÔ /÷    0ð    0÷    -ð    -ú÷    .ð    .ú÷    5ð    5ú÷    2ð    2ú÷    0ð    0ús;šDÁDÂD(Â<D4Ã2EÄDÄD%Ä(D1Ä4D=ÅE    z skipped on CIrÅzskipped during test coveragecóҗg}|fd„}    tjtjjd¬«5|j    |d¬«ddd«~y#1swY~yxYw#~wxYw)Ncó,—|jddz«y)NÚøxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxé©Úappend©Úlss r8rz+TestMemLeakClass.test_leak_mem.<locals>.funŽs€Ø I‰Ii $Ñ&Õ 'r;z    extra-mem©Úmatchédr)rrGÚfailÚ    Exceptionr)rAr)rs   r8Ú test_leak_memzTestMemLeakClass.test_leak_memˆs[€ðˆàó    (ð    ä—‘œvŸ{™{×4Ñ4¸KÔHñ -Ø— ‘ ˜S¨ Ô,÷ -ñ÷ -ñû‘ús(‰/A#¸AÁ A#ÁA ÁA#Á A#Á#A&có܇‡—ˆˆfd„}gŠtrdnd}tjtjjd|z¬«5‰j |«ddd«y#1swYyxYw)Ncó|•—tt«}‰j|j«‰j    |«yrM)rvr“Ú
addCleanupr¡r')r|ÚboxrAs €€r8rz1TestMemLeakClass.test_unclosed_files.<locals>.fun™s'ø€Ü”X“ˆAØ O‰O˜AŸG™GÔ $Ø J‰JqMr;ÚfdÚhandlez    unclosed r*)rrrGr-r.r)rArrør3s`  @r8Útest_unclosed_filesz$TestMemLeakClass.test_unclosed_files˜sVù€õ    ð
ˆÝ‰t (ˆÜ ]‰]œ6Ÿ;™;×0Ñ0¸ ÀdÑ8JÔ Kñ    Ø L‰L˜Ô ÷    ÷    ñ    ús ÁA"Á"A+cóh‡—ˆfd„}gŠd}|j||dd¬«t‰«|dzk(sJ‚y)Ncó.•—‰jddz«y)NÚxxxxxxxxxxxxxxxxxxxxxxxxr%r&r(s€r8rz,TestMemLeakClass.test_tolerance.<locals>.fun¤sø€Ø I‰Ih ‘oÕ &r;r,ri€ )rrrr-)rr¿)rArrr)s   @r8Útest_tolerancezTestMemLeakClass.test_tolerance£sGø€ô    'ðˆØˆØ  ‰ Ø u¨1Ð8Ið    ô    
ô2‹w˜% !™)Ò#Ð#Ñ#r;cót—d„}|jt|«tjt«5|jt|«ddd«d„}tjtj
j «5|jt|«ddd«y#1swYŒYxYw#1swYyxYw)Ncó—ddz yr3rOrOr;r8Úfun_1z2TestMemLeakClass.test_execute_w_exc.<locals>.fun_1¯s    €Ø ‹Er;có—yrMrOrOr;r8Úfun_2z2TestMemLeakClass.test_execute_w_exc.<locals>.fun_2¶s€Ø r;)Ú execute_w_excrHrrGrƒr-r.)rAr=r?s   r8Útest_execute_w_excz#TestMemLeakClass.test_execute_w_exc®s”€ò    ð     ×ÑÔ,¨eÔ4Ü ]‰]Ô,Ó -ñ    /Ø × Ñ œw¨Ô .÷    /ò    ô]‰]œ6Ÿ;™;×0Ñ0Ó 1ñ    9Ø × Ñ Ô0°%Ô 8÷    9ð    9÷     /ð    /ú÷     9ð    9ús³B"ÂB.Â"B+Â.B7N)r_r`rar rr!rrÙrÚr
r r/r6r:rArOr;r8r r qs|„áÓñ óð ò
0ñÓØ ‡[[×ј
¨?ÐÓ;Ø ‡[[×јÐ)GÐÓHñ óIó<óð ò    ò    $ó 9r;r có<—eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
y    )
ÚTestFakePytestcóš—tj«}|j|«tj«}|j    |«}|SrM)ÚunittestÚ    TestSuiteÚaddTestÚTextTestRunnerÚrun)rAÚklassÚsuiteÚrunnerÚresults     r8Úrun_test_classzTestFakePytest.run_test_class¾s=€Ü×"Ñ"Ó$ˆØ  ‰ eÔÜ×(Ñ(Ó*ˆØ—‘˜EÓ"ˆØˆ r;cóæ—tjt«5}ddz ddd«tjt«sJ‚tjt
d¬«5}t d«‚#1swYŒLxYw#1swYnxYw    tjt
d¬«5}t d«‚#1swYnxYw    t jd«S#t$r}t|«dk(sJ‚Yd}~yd}~wwxYw)Nr-rr9r*Úbarúexception not raisedz"foo" does not match "bar")
rrGrHÚ
isinstanceÚvaluerPrr-ÚAssertionErrorÚstr)rAÚcmÚerrs   r8Ú test_raiseszTestFakePytest.test_raisesÅsß€Ü × Ñ Ô 1Ó 2ð    °bØ ŠE÷    ä˜"Ÿ(™(Ô$5Ô6Ð6Ð6ä × Ñ ¤
°%Ô 8ð    $¸BܘUÓ#Ð #÷     ð    ú÷    $ð    $úð    7Ü×#Ñ#¤J°eÔ<ð (ÀÜ  Ó'Ð'÷ (ð (úð (ô
—;‘;Ð5Ó6Ð 6øôò    <ܐs“8Ð;Ò;Ð ;Õ;ûð    <úsAšA+Á A7Á+A4Á7BÂC  B+Â+B4Â0C à     C0ÃC+Ã+C0cóö—tjjd¬«d„«}|«dk(sJ‚tjjd¬«Gd„d««}|«j«dk(sJ‚y)Nrr    có—yrŠrOrOr;r8r9z%TestFakePytest.test_mark.<locals>.fooÖs€àr;r-có—eZdZd„Zy)ú%TestFakePytest.test_mark.<locals>.Foocó—yrŠrOrs r8rPz)TestFakePytest.test_mark.<locals>.Foo.barÞs€Ør;N)r_r`rarPrOr;r8ÚFoor\Üs„ó r;r^)rrÙÚ xdist_grouprP)rAr9r^s   r8Ú    test_markzTestFakePytest.test_markÕs{€Ü    ×    Ñ    ×    %Ñ    %¨8Р   %Ó    4ñ    ó
5ð    ñ‹u˜ŠzЈzä    ×    Ñ    ×    %Ñ    %¨8Р   %Ó    4÷    ð    ó
5ð    ñ‹uy‰y‹{˜aÒÐÑr;có¢—Gd„dtj«}|j|d««}|j«sJ‚t    |j
«dk(sJ‚|j
dddk(sJ‚Gd„dtj«}|j|d««}|j«sJ‚t    |j
«dk(sJ‚y)NcóR—eZdZejj dd¬«d„«Zy)ú,TestFakePytest.test_skipif.<locals>.TestCaseTrÆrÅcó—ddk(sJ‚yrŠrOrs r8r9z0TestFakePytest.test_skipif.<locals>.TestCase.fooåó €à˜A’v ‘vr;N©r_r`rarrÙrÚr9rOr;r8ÚTestCasercäs*„Ø × Ñ × $Ñ $ T°(Ð $Ó ;ñ ó<ñ r;rgr9r-rrÆcóR—eZdZejj dd¬«d„«Zy)rcFrÆrÅcó—ddk(sJ‚yrŠrOrs r8r9z0TestFakePytest.test_skipif.<locals>.TestCase.fooïrer;NrfrOr;r8rgz,TestFakePytest.test_skipif.<locals>.TestCaseîs*„Ø × Ñ × $Ñ $ U°8Ð $Ó <ñ ó=ñ r;©rErgrNÚ wasSuccessfulr¿Úskipped©rArgrMs   r8Ú test_skipifzTestFakePytest.test_skipifãsÀ€ô    ”x×(Ñ(ô    ð
×$Ñ$¡X¨e£_Ó5ˆØ×#Ñ#Ô%Ð%Ð%ܐ6—>‘>Ó" aÒ'Ð'Ð'؏~‰~˜aÑ  Ñ# xÒ/Ð/Ð/ô    ”x×(Ñ(ô    ð
×$Ñ$¡X¨e£_Ó5ˆØ×#Ñ#Ô%Ð%Ð%ܐ6—>‘>Ó" aÒ'Ð'Ñ'r;cóê—Gd„dtj«}|j|d««}|j«sJ‚t    |j
«dk(sJ‚|j
dddk(sJ‚y)Ncó—eZdZd„Zy)ú*TestFakePytest.test_skip.<locals>.TestCasecó<—tjd«ddk(sJ‚y)NrÆr-r)rÚskiprs r8r9z.TestFakePytest.test_skip.<locals>.TestCase.fooùs€Ü× Ñ  Ô*ؘA’v ‘vr;N)r_r`rar9rOr;r8rgrqøs„ó r;rgr9r-rrÆrjrms   r8Ú    test_skipzTestFakePytest.test_skip÷so€ô    ”x×(Ñ(ô    ð
×$Ñ$¡X¨e£_Ó5ˆØ×#Ñ#Ô%Ð%Ð%ܐ6—>‘>Ó" aÒ'Ð'Ð'؏~‰~˜aÑ  Ñ# xÒ/Ð/Ñ/r;có˜—|jt¬«}tj|«t    tj
j |d«d«5    ddd«t    tj
j |d«d«5}|jtjd«j««ddd«tjjtjd|«5t!j"«}|j%«dk(sJ‚    ddd«y#1swYŒÑxYw#1swYŒxxYw#1swYyxYw)N)Údirz __init__.pyrsz test_file.pyz¬                import unittest
 
                class TestCase(unittest.TestCase):
                    def test_passed(self):
                        pass
                r r-)rur rir¢rvrxrªrwÚtextwrapÚdedentÚlstriprrbÚobjectrlr´rÚmainÚcountTestCases)rAÚtmpdirr|rKs    r8Ú    test_mainzTestFakePytest.test_mainsÿ€Ø—‘¤TÓ*ˆÜ
‰ÔÜ ”"—'‘'—,‘,˜v }Ó5°sÓ ;ñ    Ø ÷    ä ”"—'‘'—,‘,˜v ~Ó6¸Ó <ð    ÀØ G‰G”H—O‘Oð%ó÷ ‘V“Xô  ÷    ôZ‰Z× Ñ œvŸ|™|¨V°VÓ <ñ    /Ü×$Ñ$Ó&ˆEØ×'Ñ'Ó)¨QÒ.Ð .Ñ.÷    /ð    /÷    ð    ú÷    ð    ú÷    /ð    /ús$ÁD(Â
3D4Ã4*EÄ(D1Ä4D=ÅE    cóò—tjt«5tjdtd¬«ddd«    tjt«5tjdt
d¬«ddd«t jd«S#1swYŒ]xYw#1swYŒ*xYw#t$rYnwxYwtjtd¬«5tjdtd¬«ddd«n #1swYnxYw    tjtd¬«5tjdtd¬«ddd«n #1swYnxYwt jd«S#t$rYywxYw)Nr9r-)Ú
stacklevelrQr*rP)    rÚwarnsÚ UserWarningÚwarningsÚwarnÚDeprecationWarningrr-rTrs r8Ú
test_warnszTestFakePytest.test_warnss0€ä × Ñ œ{Ó +ñ    <Ü M‰M˜%¤¸Õ ;÷    <ð    7Ü×"Ñ"¤;Ó/ñ GÜ— ‘ ˜eÔ%7ÀAÕF÷ Gô
—;‘;Ð5Ó6Ð 6÷    <ð    <ú÷
 Gð Gûäò    Ù ð    úô × Ñ œ{°%Ô 8ñ    <Ü M‰M˜%¤¸Õ ;÷    <÷    <ñ    <úð    7Ü×"Ñ"¤;°eÔ<ñ @Ü— ‘ ˜e¤[¸QÕ?÷ @÷ @ñ @úô
—;‘;Ð5Ó6Ð 6øôò    Ù ð    úskšBÁB+ÁBÁ6B+ÂBÂB(Â$B+Â+    B7Â6B7ÃC;Ã;DÄE*Ä#E    Å    E*Å    EÅE*Å*    E6Å5E6có —tjtjj«5tjd«‚#1swYyxYw)NrÆ)rrGr-r.rs r8Ú    test_failzTestFakePytest.test_fail.s=€Ü × Ñ ¤ × 0Ñ 0× :Ñ :Ó ;ñ    -Ü×"Ñ" 8Ó,Ð ,÷    -ð    -ús ®AÁA N) r_r`rarNrXr`rnrtr~r†rˆrOr;r8rCrC½s*„òò7ò   ò(ò(    0ò/ò"7ó6-r;rCcó—eZdZd„Zd„Zy)ÚTestTestingUtilscóò—tj«}t|«}|j«t    d„|j |j «D««d}|«|j«k(sJ‚y)Nc3ó2K—|]}|ddk(sŒ |–—Œy­w)r-rÀNrO©Ú.0Úxs  r8ú    <genexpr>z:TestTestingUtils.test_process_namespace.<locals>.<genexpr>8sèø€ÒD˜°Q°q±T¸V³^”1ÑDùó‚ r)rlr±rÚtestÚnextrnÚgettersrÀ)rAr¸Únsrs    r8Útest_process_namespacez'TestTestingUtils.test_process_namespace4sY€Ü N‰NÓ ˆÜ ˜qÓ !ˆØ
‰Œ    ÜÑD˜bŸg™g b§j¡jÓ1ÔDÓDÀQÑGˆÙ‹u˜Ÿ™›Ò Ð Ñ r;có°—t«}td„|j|j«D««d}|«t    j
«k(sJ‚y)Nc3ó2K—|]}|ddk(sŒ |–—Œy­w)r-Ú net_if_addrsNrOrs  r8rz9TestTestingUtils.test_system_namespace.<locals>.<genexpr>=sèø€ÒL˜°Q°q±T¸^Ó5K”1ÑLùr‘r)r#r“rnr”rlr™)rAr•rs   r8Útest_system_namespacez&TestTestingUtils.test_system_namespace;sE€Ü Ó ˆÜÑL˜bŸg™g b§j¡jÓ1ÔLÓLÈQÑOˆÙ‹uœ×+Ñ+Ó-Ò-Ð-Ñ-r;N)r_r`rar–ršrOr;r8rŠrŠ3s „ò!ó.r;rŠcó—eZdZd„Zy)ÚTestOtherUtilscó€—ttjdd«ddd««sJ‚tt««rJ‚y)Nr9za b cr-r¼r<)rrýÚ
namedtupleÚtuplers r8Útest_is_namedtuplez!TestOtherUtils.test_is_namedtupleBs<€ÜÐCœ[×3Ñ3°E¸7ÓCÀAÀqÈ!ÓLÔMÐMÐMÜ ¤£Ô)Ð)Ð)Ð)r;N)r_r`rar rOr;r8rœrœAs„ó*r;rœ)=Ú__doc__rýr£rirærérÔrwrErƒrrlÚ psutil.testsrrrÚpsutil._commonrrr    r
r r r rrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r*rdrr®rÜrÙr_r rCrŠrœrOr;r8ú<module>r¤s9ðñ8ãÛ Û    Û Û ÛÛÛÛÝã ÛÝÝÝÝ&Ý$Ý(Ý#Ý!Ý1ÝÝ#Ý'Ý'Ý'Ý$Ý)Ý#ÝÝ'Ý$Ý4Ý&Ý&Ý*ÝÝ&ÝÝ)Ý#Ý$Ý)Ý'Ý"Ý(Ý&Ý%ôB(˜ôB(ôJ$˜ô$ôP*#nô*#ôZI-~ôI-ôXH1>ôH1ðV‡×јhÐÓ'ôH9~óH9ó(ðH9ôVs-^ôs-ôl .~ô .ô*^õ*r;