hyb
2026-01-30 15bc7727b58bf9ca0c8f21702fa893daac232b8d
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
Ë
Iñúhkãó„—dZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl m Z ddl Z ddl mZddl mZddl mZddl mZddl mZdd    l mZdd
l mZdd l mZdd l mZdd l mZddlmZddlmZddlmZddlmZddlmZddlmZddlm Z ddlm!Z!ddlm"Z"ddlm#Z#ddlm$Z$ddlm%Z%ddlm&Z&ddlm'Z'ddlm(Z(ddlm)Z)ddlm*Z*ddlm+Z+dd lm,Z,dd!lm-Z-Gd"„d#e*«Z.Gd$„d%e*«Z/Gd&„d'e*«Z0Gd(„d)e*«Z1Gd*„d+e*«Z2Gd,„d-e*«Z3Gd.„d/e*«Z4Gd0„d1e*«Z5y)2zTests for system APIS.éN)Úmock)ÚAIX)ÚBSD)ÚFREEBSD)ÚLINUX)ÚMACOS)ÚNETBSD)ÚOPENBSD)ÚPOSIX)ÚSUNOS)ÚWINDOWS)Úbroadcast_addr)ÚAARCH64)ÚASCII_FS)Ú
CI_TESTING)ÚGITHUB_ACTIONS)ÚGLOBAL_TIMEOUT)Ú HAS_BATTERY)Ú HAS_CPU_FREQ)ÚHAS_GETLOADAVG)ÚHAS_NET_IO_COUNTERS)ÚHAS_SENSORS_BATTERY)ÚHAS_SENSORS_FANS)ÚHAS_SENSORS_TEMPERATURES)Ú MACOS_12PLUS)ÚPYPY)ÚUNICODE_SUFFIX)ÚPsutilTestCase)Úcheck_net_address)Úpytest)Úretry_on_failurecó0—eZdZd„Zd„Zd„Zd„Zd„Zd„Zy)ÚTestProcessItercó,—tj«tj«Dcgc]}|j‘Œc}vsJ‚|j «}|jtj«Dcgc]}|j‘Œc}vsJ‚tj |j«}|j«|j«|jtj«Dcgc]}|j‘Œc}vsJ‚ycc}wcc}wcc}w©N)    ÚosÚgetpidÚpsutilÚ process_iterÚpidÚ spawn_subprocÚProcessÚkillÚwait)ÚselfÚxÚsprocÚps    úKH:\Change_password\venv_build\Lib\site-packages\psutil/tests/test_system.pyÚtest_pid_presencez!TestProcessIter.test_pid_presence;sÀ܏y‰y‹{¬f×.AÑ.AÓ.CÖD¨˜qŸu›uÒDÑDÐDÐDØ×"Ñ"Ó$ˆØy‰y¬F×,?Ñ,?Ó,AÖB q˜QŸU›UÒBÑBÐBÐBÜ N‰N˜5Ÿ9™9Ó %ˆØ    ‰ŒØ    ‰ŒØy‰y´×0CÑ0CÓ0EÖ F¨1 §£Ò FÑFÐFÑFùò EùâBùò!GsªDÁ4D Ã-DcóŽ—ttj««}t|d„¬«tt    |«d„¬«k(sJ‚y)Ncó—|jSr%©r*©r0s r3ú<lambda>z4TestProcessIter.test_no_duplicates.<locals>.<lambda>Fs
€¨¯©€ó)Úkeycó—|jSr%r7r8s r3r9z4TestProcessIter.test_no_duplicates.<locals>.<lambda>Gs
€ 1§5¡5€r:)Úlistr(r)ÚsortedÚset)r/Úlss  r3Útest_no_duplicatesz"TestProcessIter.test_no_duplicatesDs>€Ü ”&×%Ñ%Ó'Ó (ˆÜb™oÔ.´&Ü ‹G™ô3
ò
ð    
ñ
r:có‚—ttj««td«D]ˆ}t    j
dtj tj««¬«5ttjdg¬««rJ‚    ddd«tjj«ŒŠy#1swYŒ*xYw©Nézpsutil.Process.as_dict©Ú side_effectÚ    cpu_times©Úattrs)
r=r(r)ÚrangerÚpatchÚ NoSuchProcessr&r'Ú cache_clear©r/r0s  r3Útest_emulate_nspz TestProcessIter.test_emulate_nspJs–€Ü ŒV×  Ñ  Ó "Ô#ܐq“ò    .ˆAÜ—‘Ø(Ü"×0Ñ0´·±³Ó=ôñ Jô ¤× 3Ñ 3¸;¸-Ô HÔIÐIÐIÐI÷     Jô
× Ñ × +Ñ +Õ -ñ     .÷ Jð Jús Á(#B5Â5B>    cóì—ttj««td«D]±}t    j
dtj tj««¬«5tjtj «5ttjdg¬««ddd«ddd«tjj«Œ³y#1swYŒ2xYw#1swYŒ6xYwrC) r=r(r)rJrrKÚ AccessDeniedr&r'r ÚraisesrMrNs  r3Útest_emulate_access_deniedz*TestProcessIter.test_emulate_access_deniedTs¸€Ü ŒV×  Ñ  Ó "Ô#ܐq“ò    .ˆAÜ—‘Ø(Ü"×/Ñ/´·    ±    ³ Ó<ôñ Cô—]‘]¤6×#6Ñ#6Ó7ñCÜœ×,Ñ,°K°=ÔAÔB÷C÷     Cô × Ñ × +Ñ +Õ -ñ    .÷
CðCú÷     Cð Cús$Á($C* !CÂ-C*ÃC' Ã#C*Ã*C3    có—tjdg¬«D]+}t|jj    ««dgk(rŒ+J‚tjdg¬«D]+}t|jj    ««dgk(rŒ+J‚t j t«5ttjdg¬««ddd«tjdtjdd«¬«5}tjddg¬«D]'}|jdJ‚|jddk\rŒ'J‚|jsJ‚    ddd«tjdtjdd«¬«5}t«}tjddg|¬    «D])}|jd|usJ‚|jddk\rŒ)J‚|jsJ‚    ddd«y#1swYŒ"xYw#1swYŒ©xYw#1swYyxYw)
Nr*rHÚfooz$psutil._psplatform.Process.cpu_timesrÚrErG)rIÚad_value) r(r)r=ÚinfoÚkeysr rRÚ
ValueErrorrrKrQÚcalledÚobject)r/r2ÚmÚflags    r3Ú
test_attrszTestProcessIter.test_attrs_sç€Ü×$Ñ$¨E¨7Ô3ò    2ˆAܘŸ™Ÿ ™ › Ó&¨5¨'Ó1Ð 1Ð1ð    2ô×$Ñ$¨E¨7Ô3ò    2ˆAܘŸ™Ÿ ™ › Ó&¨5¨'Ó1Ð 1Ð1ð    2ä ]‰]œ:Ó &ñ    5Ü ”×$Ñ$¨E¨7Ô3Ô 4÷    5ä Z‰ZØ 2Ü×+Ñ+¨A¨rÓ2ô
ð    ðÜ×(Ñ(°°{Ð/CÔDò *Ø—v‘v˜kÑ*Ð2Ð2Ð2Ø—v‘v˜e‘}¨Ó)Ð)Ð)ð *ð—8’8ˆO‘8÷    ôZ‰ZØ 2Ü×+Ñ+¨A¨rÓ2ô
ð
    ðÜ“8ˆDÜ×(Ñ(ؘkÐ*°Tôò *ð—v‘v˜kÑ*¨dÑ2Ð2Ð2Ø—v‘v˜e‘}¨Ó)Ð)Ð)ð     *ð
—8’8ˆO‘8÷
    ð
    ÷    5ñ    5ú÷    ð    ú÷
    ð
    ús1Â$!G%Ã8?G2Ä8G2Å=A G>Ç
G>Ç%G/Ç2G;Ç>Hcó—ttj««tjsJ‚tjj    «tjrJ‚yr%)r=r(r)Ú_pmaprM©r/s r3Útest_cache_clearz TestProcessIter.test_cache_clear{s@€Ü ŒV×  Ñ  Ó "Ô#܏|Š|Ј|Ü×Ñ×'Ñ'Ô)Ü—<’<ÐА<r:N)    Ú__name__Ú
__module__Ú __qualname__r4rArOrSr_rc©r:r3r#r#:s!„òGò
ò .ò    .òó8 r:r#có´—eZdZejj exred¬«d„«Zejj exred¬«d„«Z    d„Z
d„Z y)ÚTestProcessAPIsz,spawn_subproc() unreliable on PYPY + WINDOWS©Úreasoncó’‡ —ˆ fd„}gŠ |j«}|j«}|j«}|||fDcgc]!}tj|j«‘Œ#}}t    j
t «5tj|d¬«ddd«t    j
t«5tj|d¬«ddd«tj«}tj|d|¬«\}}    tj«|z
dksJ‚|rJ‚t|    «d    k(sJ‚‰ rJ‚|    D]}
t|
d
«sŒJ‚td «d „«} |j«| ||«\}}    |j|Dcgc]}|j‘Œc}vsJ‚tr.|j«j t"j$ k(s!J‚|j«j dk(sJ‚‰ |jgk(sJ‚|    D]}
t|
d
«sŒJ‚td «d „«} |j«|j«| ||«\}}    t'‰ «|j|j|jhk(sJ‚|D]}
t|
d
«rŒJ‚ycc}w#1swYŒxYw#1swYŒçxYwcc}w)Ncó<•—‰j|j«yr%)Úappendr*)r2Úpidss €r3Úcallbackz1TestProcessAPIs.test_wait_procs.<locals>.callbackˆsø€Ø K‰K˜Ÿ™Õ r:éÿÿÿÿ)Útimeouté)rpg{®Gáz„?©rrrpgà?éÚ
returncodeécó€—tj|d|¬«\}}t|«dk(sJ‚t|«dk(sJ‚||fS)N縅ëQ¸ž?rtrsrD©r(Ú
wait_procsÚlen©ÚprocsrpÚgoneÚalives    r3Útest_1z/TestProcessAPIs.test_wait_procs.<locals>.test_1žóI€ä ×+Ñ+ؘt¨hô‰KˆD%ôt“9 ’>Ð !>ܐu“: ’?Ð "?ؘ;Ð r:có€—tj|d|¬«\}}t|«dk(sJ‚t|«dk(sJ‚||fS)Nryrtrurrzr}s    r3Útest_2z/TestProcessAPIs.test_wait_procs.<locals>.test_2²r‚r:)r+r(r,r*r rRrZr{Ú    TypeErrorÚtimer|Úhasattrr!Ú    terminater ÚpoprvÚsignalÚSIGTERMr?)r/rpÚsproc1Úsproc2Úsproc3r0r~Útrr€r2rr„ros             @r3Útest_wait_procszTestProcessAPIs.test_wait_procsƒs”ø€ô
    ðˆØ×#Ñ#Ó%ˆØ×#Ñ#Ó%ˆØ×#Ñ#Ó%ˆØ17¸ÀÐ0HÖI¨1”—‘ §¡Õ&ÐIˆÐIÜ ]‰]œ:Ó &ñ    1Ü × Ñ ˜e¨RÕ 0÷    1ä ]‰]œ9Ó %ñ    1Ü × Ñ ˜e¨aÕ 0÷    1ä I‰I‹KˆÜ×'Ñ'¨°tÀhÔO‰ ˆˆeäy‰y‹{˜Q‰ Ò$Ð$Ð$Ùˆˆxܐ5‹z˜QŠÐˆÙˆˆxØò    0ˆAܘq ,Õ/Ð /Ð/ð    0ô
˜"Ó    ñ    ó
ð    ð    ×ÑÔÙ˜U HÓ-‰ ˆˆe؏z‰z¨TÖ2¨˜aŸe›eÒ2Ñ2Ð2Ð2Ý Ø—8‘8“:×(Ñ(¬V¯^©^¨OÒ;Ð ;Ð;à—8‘8“:×(Ñ(¨AÒ-Ð -Ð-ؘŸ
™
|Ò#Ð#Ð#Øò    0ˆAܘq ,Õ/Ð /Ð/ð    0ô
˜"Ó    ñ    ó
ð    ð    ×ÑÔØ×ÑÔÙ˜U HÓ-‰ ˆˆeܐ4‹y˜VŸZ™Z¨¯©°V·Z±ZÐ@Ò@Ð@Ð@Øò    ,ˆAܘ1˜lÕ+Ð +Ð+ñ    ,ùòaJ÷    1ñ    1ú÷    1ñ    1üò.3s$Á&J%ÂJ*Â:J7ÆKÊ*J4Ê7Kcó$—|j«}|j«}|j«}|||fDcgc]!}tj|j«‘Œ#}}|D]}|j    «Œtj
|«ycc}wr%)r+r(r,r*rˆr{)r/rŒrrŽr0r~r2s       r3Útest_wait_procs_no_timeoutz*TestProcessAPIs.test_wait_procs_no_timeoutÂs€ð
×#Ñ#Ó%ˆØ×#Ñ#Ó%ˆØ×#Ñ#Ó%ˆØ17¸ÀÐ0HÖI¨1”—‘ §¡Õ&ÐIˆÐIØò    ˆAØ K‰KMð    ä×ј%Õ ùòJs¸&B có°—|j«}tj|j«sJ‚tj|j«}|j «|j «tj|j«rJ‚tjd«rJ‚tjd«dtj«vk(sJ‚y)Nrqr)r+r(Ú
pid_existsr*r,r-r.ro)r/r1r2s   r3Útest_pid_existszTestProcessAPIs.test_pid_existsÏsœ€Ø×"Ñ"Ó$ˆÜ× Ñ  §¡Ô+Ð+Ð+Ü N‰N˜5Ÿ9™9Ó %ˆØ    ‰ŒØ    ‰ŒÜ×$Ñ$ U§Y¡YÔ/Ð/Ð/Ü×$Ñ$ RÔ(Ð(Ð(Ü× Ñ  Ó#¨¬V¯[©[«]Ð(:Ò;Ð;Ñ;r:cóf—tj«}|D]}    tj|«sJ‚Œt t|«dzt|«dz«}|D]}tj|«sŒJ‚y#t$r0t    j
d«|tj«vsJ‚YŒ˜wxYw)Ngš™™™™™¹?i˜:i€>)r(ror”ÚAssertionErrorr†ÚsleeprJÚmax)r/ror*s   r3Útest_pid_exists_2z!TestProcessAPIs.test_pid_exists_2Ùsª€Ü{‰{‹}ˆØò    0ˆCð 0Ü×(Ñ(¨Ô-Ð-Ñ-ð    0ô”S˜“Y Ñ&¬¨D«    °EÑ(9Ó:ˆØò    .ˆCÜ×(Ñ(¨Õ-Ð -Ð-ñ    .øô "ò 0ô—
‘
˜3”ؤ&§+¡+£-Ñ/Ð/Ò/ð     0ús›A7Á76B0Â/B0N) rdrerfr ÚmarkÚskipifrr rr’r•ršrgr:r3riri‚sq„Ø ‡[[×ÑØ ҐØ=ðóñ9,ó    ð9,ðv ‡[[×ÑØ ҐØ=ðóñ!ó    ð!ò<ó .r:ricó†—eZdZd„Zej
j exrej« d¬«d„«Z
d„Z y)Ú TestMiscAPIscó—tj«}t|t«sJ‚|dkDsJ‚|t    j«ksJ‚y©Nr)r(Ú    boot_timeÚ
isinstanceÚfloatr†)r/Úbts  r3Útest_boot_timezTestMiscAPIs.test_boot_timeés?€Ü × Ñ Ó ˆÜ˜"œeÔ$Ð$Ð$ؐAŠvˆ ˆvØ”D—I‘I“KÒÐÑr:úunreliable on CIrjc    ó´—tj«}|sJ‚|D]-}|j|¬«5|jsJ‚t    |jt
«sJ‚t    |j t
td«f«sJ‚|j't    |jt
td«f«sJ‚|j |j|jdkDsJ‚tjj|j«tstr|j!J‚tj|j«ddd«Œ0y#1swYŒ<xYw)N)Úuserç)r(ÚusersÚsubTestÚnamer¢ÚstrÚterminalÚtypeÚhostÚstartedÚdatetimeÚ fromtimestampr r
r*r,)r/rªr¨s   r3Ú
test_userszTestMiscAPIs.test_usersïs€ô— ‘ “ˆÙˆ ˆuØó    -ˆDØ—‘ 4Ó(ñ -Ø—y’yРyÜ! $§)¡)¬SÔ1Ð1Ð1Ü! $§-¡-´#´t¸D³zÐ1BÔCÐCÐCØ—9‘9Ð(Ü% d§i¡i´#´t¸D³zÐ1BÔCÐCÐCØ— ’ Ø—    ’    Ø—|‘| cÒ)Ð)Ð)Ü×!Ñ!×/Ñ/°· ± Ô=ݝgØŸ8™8Ð+Ð+Ð+ä—N‘N 4§8¡8Ô,÷ -ñ -ñ    -÷ -ñ -ús ±DE Å E    cóê—gd¢}|D]'}ttt|«t«rŒ"J|«‚tj
dk(rÜtj sJ‚tjrJ‚|jd«dtjj«vr%tjsJ‚|jd«n—dtjj«vrštjsJ‚tjtjtj gj#d«dk(sJ‚|jd    «|jd
«|jd «|jd «nÝd tjj«vs dtjj«vr$tj$sJ‚|jd«nydtjj«vrYtj&sJ‚|jd«n5tjsJ‚tj rJ‚|jd«|D]}tt|«sŒJ|«‚y)N)    r r rrrr
r    rr Úposixr ÚlinuxrÚbsdTrsrrr
r    ÚsunosÚsolarisr Údarwinrr )r¢Úgetattrr(Úboolr&r¬r r ÚremoveÚsysÚplatformÚlowerrrrr
r    Úcountr r)r/Únamesr¬s   r3Útest_os_constantszTestMiscAPIs.test_os_constantssÛ€ò
 
ˆðò    AˆDÜœg¤f¨dÓ3´TÕ:Ð @¸DÓ @Ð:ð    Aô 7‰7gÓ Ü—<’<Ð <Ü—~’~Ð %Ð%Ø L‰L˜Ô !Øœ#Ÿ,™,×,Ñ,Ó.Ñ.Ü—|’|Ð#|Ø— ‘ ˜WÖ%Øœ#Ÿ,™,×,Ñ,Ó.Ñ.Ü—z’zÐ!zÜŸ™¬¯©¼¿ ¹ ÐF×LÑLØóàòððð— ‘ ˜UÔ#Ø— ‘ ˜YÔ'Ø— ‘ ˜YÔ'Ø— ‘ ˜XÕ&àœ3Ÿ<™<×-Ñ-Ó/Ñ/ؤ§ ¡ × 2Ñ 2Ó 4Ñ4ä—|’|Ð#|Ø— ‘ ˜WÕ%ØœSŸ\™\×/Ñ/Ó1Ñ1Ü—|’|Ð#|Ø— ‘ ˜WÕ%ä—>’>Ð !>Ü—|’|Ð #Ð#Ø L‰L˜Ô #ðò    3ˆDÜœv tÕ,Ð 2¨dÓ 2Ð,ñ    3r:N) rdrerfr¥r r›rœrr(rªr´rÄrgr:r3ržržèsJ„ò ð  ‡[[×ÑØÒ)˜<˜6Ÿ<™<›>Ð)Ð2Dðóñ-óð-ó&/3r:ržcó—eZdZd„Zd„Zy)ÚTestMemoryAPIsc óT—tj«}|jdkDsJ|«‚|jdkDsJ|«‚d|jcxkr dksJ|«‚J|«‚|j
dkDsJ|«‚|j dk\sJ|«‚|jD]‰}t||«}|dk7rt|t«sJ‚|dk7sŒ,|dk\stj|›d|›d«cS||jkDsŒ^tj|›d|j›d|›d    |›d«cSy)
NrédÚpercentÚtotalz < 0 (ú)z > total (total=z, ú=) r(Úvirtual_memoryrÊÚ    availablerÉÚusedÚfreeÚ_fieldsr¼r¢Úintr Úfail)r/Úmemr¬Úvalues    r3Útest_virtual_memoryz"TestMemoryAPIs.test_virtual_memory8s,€Ü×#Ñ#Ó%ˆØy‰y˜1Š}Ð!˜cÓ!ˆ}؏}‰}˜qÒ Ð% #Ó%РؐC—K‘KÔ& 3Ò&Ð+¨Ó+Ñ&Ð+¨Ó+Ð&؏x‰x˜!Š|Р˜SÓ ˆ|؏x‰x˜1Š}Ð!˜cÓ!ˆ}Ø—K‘Kò
    ˆDܘC Ó&ˆEؐyÒ Ü! %¬Ô-Ð-Ð-ؐw‹Ø ’zÜ!Ÿ;™;¨$¨°¸°w¸aÐ'@ÓAÒAؘ3Ÿ9™9Ó$Ü!Ÿ;™;ؘ(Ð"2°3·9±9°+¸RÀ¸vÀQÀuÀgÈQÐOóòñ
    r:có¼—tj«}|jdk(sJ‚|jdk\sJ|«‚|jdk\sJ|«‚|jdkDr|j
dkDsJ|«‚|j
dk(sJ|«‚d|j cxkr dksJ|«‚J|«‚|jdk\sJ|«‚|jdk\sJ|«‚y)N)rÊrÏrÐrÉÚsinÚsoutrrÈ)    r(Ú swap_memoryrÑrÊrÏrÐrÉrØrÙ)r/rÔs  r3Útest_swap_memoryzTestMemoryAPIs.test_swap_memoryKs݀Ü× Ñ Ó"ˆØ{‰{ð
ò
ð    
ð
ðy‰y˜AŠ~Ð"˜sÓ"ˆ~؏x‰x˜1Š}Ð!˜cÓ!ˆ}Ø 9‰9qŠ=à—8‘8˜a’<Ð $ Ó $<à—8‘8˜q’=Ð % #Ó %=ؐC—K‘KÔ& 3Ò&Ð+¨Ó+Ñ&Ð+¨Ó+Ð&؏w‰w˜!Š|Р˜SÓ ˆ|؏x‰x˜1Š}Ð!˜cÓ!‰}r:N)rdrerfrÖrÛrgr:r3rÆrÆ7s „òó&"r:rÆcó¤—eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z    e
jje xrexsed¬    «ed
«d „««Zd „Zd „Zd„Zd„Zd„Zd„Zd„Ze
jjexred¬    «e
jje d¬    «d„««Ze
jje d¬    «d„«Zy)Ú TestCpuAPIscó\—tj«}|€J‚|ttjd¬««k(sJ‚|dk\sJ‚tj
j d«r>td«5}|j«}ddd«dvrtjd«Syy#1swYŒ$xYw)NT©Úpercpursz /proc/cpuinfoz physical idz#cpuinfo doesn't include physical id) r(Ú    cpu_countr|rGr&ÚpathÚexistsÚopenÚreadr Úskip)r/ÚlogicalÚfdÚ cpuinfo_datas    r3Útest_cpu_count_logicalz"TestCpuAPIs.test_cpu_count_logicalcs¢€Ü×"Ñ"Ó$ˆØÐ"Ð"Ð"Øœ#œf×.Ñ.°dÔ;Ó<Ò<Ð<Ð<ؘ!Š|Ј|ä 7‰7>‰>˜/Ô *ܐoÓ&ð )¨"Ø!Ÿw™w›y ÷ )à LÑ0Ü—{‘{Ð#HÓIÐIð1ð +÷ )ð )ús Á.B"Â"B+cóì—tj«}tjd¬«}|€tjd«Strt j «dddkr|J‚y|dk\sJ‚||k\sJ‚y)NF©rçzcpu_count_cores() is NonerD)érsrs)r(rár rær r¿Úgetwindowsversion)r/rçÚcoress   r3Útest_cpu_count_coresz TestCpuAPIs.test_cpu_count_coresoss€Ü×"Ñ"Ó$ˆÜ× Ñ ¨Ô/ˆØ ˆ=Ü—;‘;Ð:Ó;Ð ;Ý ”s×,Ñ,Ó.¨r°Ð2°fÒ<ؐ=Ð  ‘=à˜A’:Ð :ؘeÒ#Ð #Ñ#r:cóZ—dD]Ž}tjd|¬«5}tj«J‚|jsJ‚    ddd«tjd|¬«5}tjd¬«J‚|jsJ‚    ddd«Œy#1swYŒSxYw#1swYŒ§xYw)N)rqrNz$psutil._psplatform.cpu_count_logical©Ú return_valuez"psutil._psplatform.cpu_count_coresFrì)rrKr(rár[)r/Úvalr]s   r3Útest_cpu_count_nonezTestCpuAPIs.test_cpu_count_nonezs¬€à ò
     ˆCÜ—‘Ø6ÀSôð  àÜ×'Ñ'Ó)Ð1Ð1Ð1Ø—x’x‘x÷      ô
—‘Ø4À3ôð  àÜ×'Ñ'°Ô6Ð>Ð>Ð>Ø—x’x‘x÷      ð  ñ
     ÷  ð  ú÷
  ð  ús%BÁ"'B!ÂB    Â!B*    cóò—d}tj«}t|«|D] }t|t«sJ‚|dk\sJ‚||z }Œ"t t |t|«z
«d«dk(sJ‚t|«y)Nrr©rí)r(rGÚsumr¢r£ÚroundÚabsr­)r/rÊÚtimesÚcp_times    r3Útest_cpu_timeszTestCpuAPIs.test_cpu_timesˆs}€àˆÜ× Ñ Ó"ˆÜ ˆEŒ
Øò    ˆGܘg¤uÔ-Ð -Ð-ؘc’>Ð !>Ø WÑ ‰Eð    ô”S˜¤ U£Ñ+Ó,¨aÓ0°AÒ5Ð5Ð5Ü ˆE
r:có@—ttj««}tj«tz}tj«|kr;ttj««}||kDrytj«|krŒ;t j d«S)Nztime remained the same)r÷r(rGr†rr rÓ)r/Út1Ústop_atÚt2s    r3Útest_cpu_times_time_increasesz)TestCpuAPIs.test_cpu_times_time_increases¤sr€ä ”×!Ñ!Ó#Ó $ˆÜ—)‘)“+¤Ñ.ˆÜi‰i‹k˜GÒ#Ü”V×%Ñ%Ó'Ó(ˆBؐBŠwØôi‰i‹k˜GÓ#ô{‰{Ð3Ó4Ð4r:c    óˆ—tjd¬«D]e}d}t|«|D] }t|t«sJ‚|dk\sJ‚||z }Œ"t t |t|«z
«d«dk(sJ‚t|«Œgttjd¬«d«ttjd¬««k(sJ‚y)NTrßrr©ríF)    r(rGr÷r¢r£rørùr­r|)r/rúrÊrûs    r3Útest_per_cpu_timeszTestCpuAPIs.test_per_cpu_times®sǀä×%Ñ%¨TÔ2ò    ˆE؈EÜ ŒJØ ò !Ü! '¬5Ô1Ð1Ð1Ø #’~Ð%~ؘѠ‘ð !ôœ˜U¤S¨£ZÑ/Ó0°!Ó4¸Ò9Ð 9Ð9Ü Jð    ô”6×#Ñ#¨4Ô0°Ñ3Ó4¼Ü × Ñ  EÔ *ó9
ò
ð    
ñ
r:có€—tjd¬«}tj«tz}    tj«|k\rt    j
d«Stjd¬«}t ||«D];\}}tj|«tj|«}}||z
}|dk\sŒ;yŒ)NTrßrrgš™™™™™©?)r(rGr†rr rÓÚzipÚ_cpu_busy_time)r/Útot1Ú    giveup_atÚtot2rþrÚ
differences       r3Útest_per_cpu_times_2z TestCpuAPIs.test_per_cpu_times_2Ïs¥€ô×Ñ tÔ,ˆÜ—I‘I“K¤.Ñ0ˆ    ØÜy‰y‹{˜iÒ'Ü—{‘{ 9Ó-Ð-Ü×#Ñ#¨4Ô0ˆDܘd D›/ò  ‘BÜ×.Ñ.¨rÓ2´F×4IÑ4IÈ"Ó4MBØ "™W
Ø Ó%Ùð      ð    r:zunreliable on OPENBSD + CIrjrwc    ó‚—tj«}tjd¬«}|jt|ŽDcgc] }t    |«‘Œc}«}|j
D]G}|j |||¬«5tt||«t||«z
«dksJ‚    ddd«ŒIycc}w#1swYŒYxYw)NTrß)ÚfieldÚbaseÚper_cpurD)    r(rGÚ_makerr÷rÑr«rùr¼)r/rrÚnumÚ summed_valuesr s      r3Útest_cpu_times_comparisonz%TestCpuAPIs.test_cpu_times_comparisonÞsµ€ô×ÑÓ!ˆÜ×"Ñ"¨$Ô/ˆØŸ
™
¼¸W¸ Ö#F°¤C¨¥HÒ#FÓGˆ Ø—\‘\ò    ˆEØ—‘ E°¸gÓFñ 䜠 eÓ,¬w°}ÀeÓ/LÑLÓMØòðñ÷ ð ñ    ùò$G÷ ð úsÁB0Á<(B5Â5B>    c
ó—    t|t«sJ‚|dk\sJ‚|dtj«zksJ‚y#t$rG}t    dj |t j|«t j|«««‚d}~wwxYw)Nr©gY@z
{}
last={}
new={})r¢r£r(rár—ÚformatÚpprintÚpformat)r/rÉÚlast_retÚnew_retÚerrs     r3Ú_test_cpu_percentzTestCpuAPIs._test_cpu_percentðsƒ€ð        Ü˜g¤uÔ-Ð -Ð-ؘc’>Ð !>ؘe¤f×&6Ñ&6Ó&8Ñ8Ò8Ð 8Ñ8øÜò    Ü Ø'×.Ñ.ØœŸ™¨Ó1´6·>±>À'Ó3Jóóð ûð    ús‚58¸    BÁABÂBcó.—tjd¬«}td«D]-}tjd¬«}|j|||«|}Œ/t    j
t «5tjd¬«ddd«y#1swYyxYw©Nçü©ñÒMbP?)ÚintervalrÈrq)r(Ú cpu_percentrJrr rRrZ)r/ÚlastÚ_Únews    r3Útest_cpu_percentzTestCpuAPIs.test_cpu_percentüs}€Ü×!Ñ!¨5Ô1ˆÜs“ò    ˆAÜ×$Ñ$¨dÔ3ˆCØ × "Ñ " 3¨¨cÔ 2؉Dð    ô]‰]œ:Ó &ñ    ,Ü × Ñ ¨Õ +÷    ,÷    ,ñ    ,ús Á+B  Bcó†—tjdd¬«}t|«tj«k(sJ‚t    d«D]5}tjdd¬«}|D]}|j |||«Œ|}Œ7t jt«5tjdd¬«ddd«y#1swYyxYw)NrT©rràrÈrq)    r(r r|rárJrr rRrZ©r/r!r"r#rÉs     r3Útest_per_cpu_percentz TestCpuAPIs.test_per_cpu_percents­€Ü×!Ñ!¨5¸Ô>ˆÜ4‹yœF×,Ñ,Ó.Ò.Ð.Ð.ܐs“ò    ˆAÜ×$Ñ$¨d¸4Ô@ˆCØò ;Ø×&Ñ& w°°cÕ:ð ;à‰Dð        ô
]‰]œ:Ó &ñ    9Ü × Ñ ¨°4Õ 8÷    9÷    9ñ    9ús ÂB7Â7Ccót—tjd¬«}td«D]P}tjd¬«}|D]}|j|||«Œ|jt    |«||«|}ŒRt j t«5tjd¬«ddd«y#1swYyxYwr)r(Úcpu_times_percentrJrr÷r rRrZr's     r3Útest_cpu_times_percentz"TestCpuAPIs.test_cpu_times_percents¢€Ü×'Ñ'°Ô7ˆÜs“ò    ˆAÜ×*Ñ*°DÔ9ˆCØò ;Ø×&Ñ& w°°cÕ:ð ;à × "Ñ "¤3 s£8¨T°3Ô 7؉Dð     ô ]‰]œ:Ó &ñ    2Ü × $Ñ $¨bÕ 1÷    2÷    2ñ    2ús ÂB.Â.B7cóB—tjdd¬«}t|«tj«k(sJ‚t    d«D]X}tjdd¬«}|D]8}|D]}|j |||«Œ|j t |«||«Œ:|}ŒZy)NrTr&rÈ)r(r*r|rárJrr÷)r/r!r"r#ÚcpurÉs      r3Útest_per_cpu_times_percentz&TestCpuAPIs.test_per_cpu_times_percents¡€Ü×'Ñ'°¸tÔDˆÜ4‹yœF×,Ñ,Ó.Ò.Ð.Ð.ܐs“ò    ˆAÜ×*Ñ*°DÀÔFˆCØò <Ø"ò?GØ×*Ñ*¨7°D¸#Õ>ð?à×&Ñ&¤s¨3£x°°sÕ;ð <ð‰Dñ     r:c
óÀ—tjd¬«tjd¬«Dcgc]=}|jt    t |j ««Dcgc]}d‘Œc}«‘Œ?}}tjd|¬«5tjd¬«D]}|D]}|j|dd«ŒŒ    ddd«ycc}wcc}w#1swYyxYw)NTrßrzpsutil.cpu_timesrò)
r(r*rGrrJr|rÑrrKr)r/r0Ú
zero_timesr-rÉs     r3Ú#test_per_cpu_times_percent_negativez/TestCpuAPIs.test_per_cpu_times_percent_negative&sԀä× Ñ ¨Õ-ô×%Ñ%¨TÔ2ö
àð G‰G¤¤c¨!¯)©)£nÓ 5Ö6˜1’QÒ6Õ 7ð
ˆ
ð
ôZ‰ZÐ*¸Ô Dñ    @Ü×/Ñ/°tÔ<ò @Ø"ò@GØ×*Ñ*¨7°D¸$Õ?ñ@ñ @÷    @ð    @ùò7ùò
÷    @ð    @ús#¯0CÁ    C
Á(    CÂ
6CÃ
CÃCcó¼—tj«}|jdk(sJ‚|jD](}t||«}|dk\sJ‚trŒ|dvsŒ"|dkDrŒ(J‚y)N)Ú ctx_switchesÚ
interruptsÚsoft_interruptsÚsyscallsr>r4r3)r(Ú    cpu_statsrÑr¼r)r/Úinfosr¬rÕs    r3Útest_cpu_statszTestCpuAPIs.test_cpu_stats2so€ä× Ñ Ó"ˆØ}‰}ð!
ò
ð    
ð
ð —M‘Mò    !ˆDܘE 4Ó(ˆEؘA’:Ð :æ˜4Ð#AÒAؘq“yРyñ     !r:zskipped due to #1892ú not supportedcó—d„}tjd¬«}tstr|st    j
d«S|sJ|«‚|tjd¬«g«t r#t|«tj«k(sJ‚yy)Ncó—|D]y}|jdk(sJ‚|jdk7r|j|jksJ‚|jD]-}t||«}t    |t
t f«sJ‚|dk\rŒ-J‚Œ{y)N)ÚcurrentÚminr™r©r)rÑr™r=r¼r¢rÒr£)r@Úntr¬rÕs    r3Úcheck_lsz+TestCpuAPIs.test_cpu_freq.<locals>.check_lsFs„€Øò &Ø—z‘zÐ%>Ò>Ð>Ð>Ø—6‘6˜S’=ØŸ:™:¨¯©Ò/Ð/Ð/ØŸJ™Jò&DÜ# B¨Ó-EÜ% e¬c´5¨\Ô:Ð:Ð:Ø  A›:Ð%˜:ñ&ñ     &r:Trßz/returns empty list on FreeBSD and Linux aarch64F)    r(Úcpu_freqrrr rærr|rá)r/r@r@s   r3Ú test_cpu_freqzTestCpuAPIs.test_cpu_freqCsv€ò    &ô_‰_ DÔ )ˆÝ •w©Ü—;‘;ØAóð ñˆ 2‹ ˆrÙ”&—/‘/¨Ô/Ð0Ô1å ܐr“7œf×.Ñ.Ó0Ò0Ð 0Ñ0ð r:cóŒ—tj«}t|«dk(sJ‚|D]}t|t«sJ‚|dk\rŒJ‚y)Nrur©)r(Ú
getloadavgr|r¢r£)r/ÚloadavgÚloads   r3Útest_getloadavgzTestCpuAPIs.test_getloadavg\sM€ä×#Ñ#Ó%ˆÜ7‹|˜qҠРРØò    ˆDܘd¤EÔ*Ð *Ð*ؘ3“;Ð ;ñ    r:N)rdrerfrêrðrõrürrr r r›rœrr
rr!rrr$r(r+r.r1r9rrrBrrGrgr:r3rÝrÝbs „ò
Jò    $ò  ò
ò85ò 
òB  ð ‡[[×ÑØ    Ò    ˜Ò) EÐ2NðóñbÓñ óóð ò
ò,ò    9ò    2ò    ò
@ò!ð" ‡[[×јÒ) 'Ð2HÐÓIØ ‡[[×јLÐ(°ÐÓAñ1óBóJð1ð. ‡[[×јNÐ*°?ÐÓCñóDñr:rÝcóV—eZdZd„Zej
j e d¬«d„«Zd„Z    d„Z
ej
j e xre jjd« d¬«ej
j exrej"« d    ¬«d
„««Zd „Zy ) Ú TestDiskAPIscó¾—tjtj««}|jdk(sJ‚|j
dkDsJ|«‚|j dkDsJ|«‚|jdkDsJ|«‚|j
|j kDsJ|«‚|j
|jkDsJ|«‚d|jcxkrdksnJ|j«‚ttd«r˜tjtj««}d}|j
|j
k(sJ‚t|j|jz
«|ksJ‚ts't|j |j z
«|ksJ‚|j«}tjt «5tj|«ddd«y#1swYyxYw)N)rÊrÏrÐrÉrrÈÚ
disk_usageiP)r(rKr&ÚgetcwdrÑrÊrÏrÐrÉr‡ÚshutilrùrÚ
get_testfnr rRÚFileNotFoundError)r/ÚusageÚ shutil_usageÚ    toleranceÚfnames     r3Útest_disk_usagezTestDiskAPIs.test_disk_usagefs‚€Ü×!Ñ!¤"§)¡)£+Ó.ˆØ}‰}РDÒDÐDÐDà{‰{˜QŠÐ% Ó%ˆØz‰z˜AŠ~Ð$˜uÓ$ˆ~؏z‰z˜AŠ~Ð$˜uÓ$ˆ~؏{‰{˜UŸZ™ZÒ'Ð.¨Ó.Ð'؏{‰{˜UŸZ™ZÒ'Ð.¨Ó.Ð'ؐE—M‘MÔ( SÔ(Ð7¨%¯-©-Ó7Ð(Ü ”6˜<Ô (ä!×,Ñ,¬R¯Y©Y«[Ó9ˆLØ'ˆIØ—;‘; ,×"4Ñ"4Ò4Ð 4Ð4ܐu—z‘z L×$5Ñ$5Ñ5Ó6¸ÒBÐ BÐBÝä˜5Ÿ:™:¨ ×(9Ñ(9Ñ9Ó:¸YÒFÐFÐFð—‘Ó!ˆÜ ]‰]Ô,Ó -ñ    %Ü × Ñ ˜eÔ $÷    %÷    %ñ    %ús Æ4GÇGznot an ASCII fsrjcó’—tjt«5tjt
«ddd«y#1swYyxYwr%)r rRÚUnicodeEncodeErrorr(rKrrbs r3Útest_disk_usage_unicodez$TestDiskAPIs.test_disk_usage_unicode€s4€ô]‰]Ô-Ó .ñ    .Ü × Ñ œnÔ -÷    .÷    .ñ    .ús    š=½Acó.—tjd«y)Nó.)r(rKrbs r3Útest_disk_usage_bytesz"TestDiskAPIs.test_disk_usage_bytes†s€Ü×ј$Õr:cóz—d„}tjd¬«}|sJ‚|D]¤}||«trd|jvrŒ ts0t
j j|j«sJ|«‚|jt
j j|j«sJ|«‚|jrŒŸJ|«‚tjd¬«}|sJ‚tjd¬«D]n}||«trŒ|jsŒ    t j|j«t
j j|j«rŒiJ|«‚d„}|t&«}tjd¬«Dcgc](}|jr|jj)«‘Œ*}}||vsJ‚y#t$rg}tr)tr#|jtj k(rYd}~Œ|jtj"tj$hvr‚Yd}~Œ9d}~wwxYwcc}w)Ncóä—t|jt«sJ‚t|jt«sJ‚t|jt«sJ‚t|j
t«sJ‚yr%)r¢Údevicer­Ú
mountpointÚfstypeÚopts©r?s r3Ú check_ntuplez7TestDiskAPIs.test_disk_partitions.<locals>.check_ntupleŠsR€Ü˜bŸi™i¬Ô-Ð -Ð-ܘbŸm™m¬SÔ1Ð 1Ð1ܘbŸi™i¬Ô-Ð -Ð-ܘbŸg™g¤sÔ+Ð +Ñ+r:F)ÚallÚcdromTcó—tjj|«}tjj|«s?tjj    |«}tjj|«sŒ?|j «Sr%)r&râÚabspathÚismountÚdirnamerÁ)râs r3Úfind_mount_pointz;TestDiskAPIs.test_disk_partitions.<locals>.find_mount_pointµsT€Ü—7‘7—?‘? 4Ó(ˆDÜ—g‘g—o‘o dÔ+Ü—w‘w—‘ tÓ,ô—g‘g—o‘o dÕ+à—:‘:“<Ð r:)r(Údisk_partitionsr r`r r&rârãr]r^r_ÚstatÚOSErrorrrÚerrnoÚEIOÚEPERMÚEACCESÚ__file__rÁ)    r/rbr@ÚdiskrriÚmountr0Úmountss             r3Útest_disk_partitionsz!TestDiskAPIs.test_disk_partitions‰s΀ò    ,ô× #Ñ #¨Ô .ˆÙˆ    ˆrØò     %ˆDÙ ˜Ô ݘ7 d§i¡iÑ/ØÝÜ—w‘w—~‘~ d§k¡kÔ2Ð8°DÓ8Ð2ð— ’ ä—7‘7—>‘> $§/¡/Ô2Ð 8°DÓ 8Ð2Ø—;“;Ð $ Ó $;ð     %ô× #Ñ #¨Ô -ˆÙˆ    ˆrÜ×*Ñ*¨tÔ4ò     AˆDÙ ˜Ô Þ˜tŸ›ð
AÜ—G‘G˜DŸO™OÔ,ôŸ7™7Ÿ>™>¨$¯/©/Õ:Ð@¸DÓ@Ð:ð     Aò"     ñ !¤Ó*ˆô×+Ñ+°Ô5ö
àØ|Š|ð L‰L× Ñ Õ  ð
ˆð
ð
˜‰Ð‰øô1òÝ%­%°C·I±IÄÇÁÒ4JÝ ð—y‘y¬¯©´e·l±lÐ(CÑCØõDûð üò&
s$ÄGÆ-H8Ç    H5Ç)H0Ç=-H0È0H5z/proc/diskstatsz3/proc/diskstats not available on this linux versionr¦cóþ—d„}tjd¬«}|€Jd«‚||«tjd¬«}t|«tt|««k(sJ‚|D]}|sJ|«‚|||«Œy)Ncó—|d|jk(sJ‚|d|jk(sJ‚|d|jk(sJ‚|d|jk(sJ‚tsŠt
s„|d|j k(sJ‚|d|jk(sJ‚tr<|d|jk(sJ‚|d|jk(sJ‚|d    |jk(sJ‚tr|d|jk(sJ‚|jD]}t||«dk\rŒJ|«‚y)
NrrsrDruééríéé)Ú
read_countÚ write_countÚ
read_bytesÚ write_bytesr
r    Ú    read_timeÚ
write_timerÚread_merged_countÚwrite_merged_countÚ    busy_timerrÑr¼)r?r¬s  r3rbz8TestDiskAPIs.test_disk_io_counters.<locals>.check_ntupleËs€Øa‘5˜BŸM™MÒ)Ð )Ð)ؐa‘5˜BŸN™NÒ*Ð *Ð*ؐa‘5˜BŸM™MÒ)Ð )Ð)ؐa‘5˜BŸN™NÒ*Ð *Ð*ݝvؘ!‘u § ¡ Ò,Ð,Ð,ؘ!‘u § ¡ Ò-Ð-Ð-ÝØ˜a™5 B×$8Ñ$8Ò8Ð8Ð8ؘa™5 B×$9Ñ$9Ò9Ð9Ð9ؘa™5 B§L¡LÒ0Ð0Ð0ÝØ˜a™5 B§L¡LÒ0Ð0Ð0ØŸ
™
ò 2Ü˜r 4Ó(¨AÓ-Ð1¨rÓ1Ð-ñ 2r:F©Úperdiskzno disks on this system?T)r(Údisk_io_countersr|r?©r/rbÚretr;s    r3Útest_disk_io_countersz"TestDiskAPIs.test_disk_io_countersÃs€ò    2ô"×%Ñ%¨eÔ4ˆØˆÐ:Р:Ó:ˆÙSÔÜ×%Ñ%¨dÔ3ˆä3‹xœ3œs 3›x›=Ò(Ð(Ð(Øò    #ˆCÙˆO˜‹O3Ù ˜˜S™Õ "ñ    #r:cóà—tjdi¬«5}tjd¬«J‚tjd¬«ik(sJ‚|jsJ‚    ddd«y#1swYyxYw)Nz#psutil._psplatform.disk_io_countersròFr…T)rrKr(r‡r[©r/r]s  r3Útest_disk_io_counters_no_disksz+TestDiskAPIs.test_disk_io_counters_no_disksæsh€ôZ‰ZØ 1Àô
ð    à Ü×*Ñ*°5Ô9ÐAÐ AÐAÜ×*Ñ*°4Ô8¸BÒ>Ð >Ð>Ø—8’8ˆO‘8÷     ÷    ñ    úó ˜AA$Á$A-N)rdrerfrTr r›rœrrWrZrurr&rârãrr(r‡rŠrrgr:r3rIrIes¿„ò%ð4 ‡[[×јH˜ Ð->ÐÓ?ñ.ó@ð.ò
 ò8ðt ‡[[×ÑØ Ò7b—g‘g—n‘nÐ%6Ó7Ð7ØDðóð ‡[[×ÑØÒ4Ð2˜6×2Ñ2Ó4Ð4Ð=Oðóñ#óó    ð#ó8r:rIcó—eZdZejj e d¬«d„«Zejj e d¬«d„«Zd„Z    d„Z
d„Z ejj e xse xse d¬«d    „«Zy
) Ú TestNetAPIsr:rjcóЗd„}tjd¬«}||«tjd¬«}|gk7sJ‚|D]#}|sJ‚t|t«sJ‚|||«Œ%y)Ncó¤—|d|jk(sJ‚|d|jk(sJ‚|d|jk(sJ‚|d|jk(sJ‚|d|jk(sJ‚|d|j
k(sJ‚|d|j k(sJ‚|d|jk(sJ‚|jdk\sJ|«‚|jdk\sJ|«‚|jdk\sJ|«‚|jdk\sJ|«‚|jdk\sJ|«‚|j
dk\sJ|«‚|j dk\sJ|«‚|jdk\sJ|«‚y)    NrrsrDrurxryrírz)Ú
bytes_sentÚ
bytes_recvÚ packets_sentÚ packets_recvÚerrinÚerroutÚdropinÚdropoutras r3rbz6TestNetAPIs.test_net_io_counters.<locals>.check_ntupleôsb€Øa‘5˜BŸM™MÒ)Ð )Ð)ؐa‘5˜BŸM™MÒ)Ð )Ð)ؐa‘5˜BŸO™OÒ+Ð +Ð+ؐa‘5˜BŸO™OÒ+Ð +Ð+ؐa‘5˜BŸH™HÒ$Ð $Ð$ؐa‘5˜BŸI™IÒ%Ð %Ð%ؐa‘5˜BŸI™IÒ%Ð %Ð%ؐa‘5˜BŸJ™JÒ&Ð &Ð&Ø—=‘= AÒ%Ð ) rÓ )Ð%Ø—=‘= AÒ%Ð ) rÓ )Ð%Ø—?‘? aÒ'Ð +¨Ó +Ð'Ø—?‘? aÒ'Ð +¨Ó +Ð'Ø—8‘8˜q’=Ð $ "Ó $=Ø—9‘9 ’>Ð % 2Ó %>Ø—9‘9 ’>Ð % 2Ó %>Ø—:‘: ’?Ð & BÓ &‘?r:F©ÚpernicT)r(Únet_io_countersr¢r­rˆs    r3Útest_net_io_countersz TestNetAPIs.test_net_io_countersòso€ò    'ô$×$Ñ$¨EÔ2ˆÙSÔÜ×$Ñ$¨DÔ1ˆØbŠyЈyØò    #ˆCÙˆJ3ܘc¤3Ô'Ð 'Ð'Ù ˜˜S™Õ "ñ    #r:cóà—tjdi¬«5}tjd¬«J‚tjd¬«ik(sJ‚|jsJ‚    ddd«y#1swYyxYw)Nz"psutil._psplatform.net_io_countersròFr›T)rrKr(rr[rŒs  r3Útest_net_io_counters_no_nicsz(TestNetAPIs.test_net_io_counters_no_nicssh€ôZ‰ZØ 0¸rô
ð    à Ü×)Ñ)°Ô7Ð?Ð ?Ð?Ü×)Ñ)°Ô6¸"Ò<Ð <Ð<Ø—8’8ˆO‘8÷     ÷    ñ    úrŽc
óp—tj«}|sJ|«‚tj«}tjtj
tj h}|j«D]\}}t|t«sJ‚tt|««t|«k(sJ‚|D]Û}t|jt«sJ‚t|jt«sJ‚t|jtt!d«f«sJ‚t|j"tt!d«f«sJ‚|j|vsJ‚t|jt$j&«sJ‚||j(r
|jtjk(rFtj|j«5}|j+|jdf«ddd«n§|jtj
k(rŠtj,|jdtj
tj.dtj0«d}|\}    }
} } } tj|    |
| «5}|j+| «ddd«|j|j|j"|j2fD]9}|€Œ|jtj
k7sŒ$t5||j«Œ;|j"r|j2J‚|j2r|j"J‚|j"sŒ†|jsŒ”|jtjtj
hvsŒÂ|j"t7|«k(rŒÜJ‚Œt8s t:st<r5t?td«r$tj tj k(sJ‚yyt@r$tj tjBk(sJ‚ytDrtj dk(sJ‚yy#1swYŒ xYw#1swYŒ­xYw)NrÚAF_LINKrq)#r(Ú net_if_addrsÚ net_if_statsÚsocketÚAF_INETÚAF_INET6r¢Úitemsr¢r­r|r?ÚfamilyrÒÚaddressÚnetmaskr¯Ú    broadcastÚenumÚIntEnumÚisupÚbindÚ getaddrinfoÚ SOCK_STREAMÚ
AI_PASSIVEÚptprrrrr r‡rÚ    AF_PACKETr )r/ÚnicsÚ    nic_statsÚfamiliesÚnicÚaddrsÚaddrÚsrXÚafÚsocktypeÚprotoÚ
_canonnameÚsaÚips               r3Útest_net_if_addrszTestNetAPIs.test_net_if_addrssH€Ü×"Ñ"Ó$ˆÙАTÓˆtä×'Ñ'Ó)ˆ    ô—N‘N¤F§O¡O´V·^±^ÐDˆØŸ*™*›,ó4    B‰JˆCÜ˜c¤3Ô'Ð 'Ð'Ü”s˜5“z“?¤c¨%£jÒ0Ð 0Ð0Øó1 BÜ! $§+¡+¬sÔ3Ð3Ð3Ü! $§,¡,´Ô4Ð4Ð4Ü! $§,¡,´´d¸4³jÐ0AÔBÐBÐBÜ! $§.¡.´3¼¸T»
Ð2CÔDÐDÐDØ—{‘{ hÑ.Ð.Ð.Ü! $§+¡+¬t¯|©|Ô<Ð<Ð<ؘS‘>×&Ó&ð—{‘{¤f§n¡nÒ4Ü#Ÿ]™]¨4¯;©;Ó7ð6¸1ØŸF™F D§L¡L°!Ð#4Ô5÷6ð6àŸ™¬¯©Ò7Ü%×1Ñ1Ø ŸL™LØÜ"ŸO™OÜ"×.Ñ.ØÜ"×-Ñ-ó  ðñ ˜ð?CÑ;˜˜H e¨Z¸Ü#Ÿ]™]¨2¨x¸Ó?ð'À1ØŸF™F 2œJ÷'ð—L‘LØ—L‘LØ—N‘NØ—H‘Hð    ò ?Bð ‘~ð Ÿ;™;¬&¯/©/Ó9Ü-¨b°$·+±+Õ>ð ?ð—>’>ØŸ8™8Ð+Ð+Ð+Ø—X’XØŸ>™>Ð1Ð1Ð1ð—N”NØŸ œ ØŸ ™ ¬¯©¼¿¹Ð'HÓHàŸ>™>¬^¸DÓ-AÔAÐAÐAòc1 Bð4    Bõl •%5Ü”v˜yÔ)Ü—~‘~¬¯©Ò7Ð7Ñ7ð*å Ü—>‘>¤V×%5Ñ%5Ò5Ð 5Ñ5Ý Ü—>‘> RÒ'Ð 'Ñ'ð÷[6ñ6ú÷'ñ'úsÆ:PÉ.P+ÐP( Ð+P5 có>—trdtjddddfg}ndg}tjd|¬«5}tj
«dd}|j sJ‚tr|jdk(sJ‚|jdk(sJ‚ddd«y#1swYyxYw)    NÚem1z06:3d:29)rÅrqz06-3d-29NNNzpsutil._psplatform.net_if_addrsròrz06:3d:29:00:00:00z06-3d-29-00-00-00)r r(r¢rrKr£r[rª)r/r‰r]r»s    r3Ú test_net_if_addrs_mac_null_bytesz,TestNetAPIs.test_net_if_addrs_mac_null_byteses€õ Øœ6Ÿ>™>¨:°t¸TÀ4ÐHÐI‰Cà<Ð=ˆCÜ Z‰ZØ -¸Cô
ð    ;à Ü×&Ñ&Ó(¨Ñ/°Ñ2ˆDØ—8’8ˆO8ÝØ—|‘|Ð':Ò:Ð:Ð:à—|‘|Ð':Ò:Ð:Ð:÷    ;÷    ;ñ    ;ús ¹ABÂBcó|—tj«}|sJ|«‚tjtjtjf}|j «D]]\}}t |t«sJ‚|\}}}}}    t |t«sJ‚||vsJ‚||vsJ‚|dk\sJ‚|dk\sJ‚t |    t«rŒ]J‚yr )    r(r¤ÚNIC_DUPLEX_FULLÚNIC_DUPLEX_HALFÚNIC_DUPLEX_UNKNOWNr¨r¢r­r½)
r/r¶Ú all_duplexesr¬Ústatsr¯ÚduplexÚspeedÚmtuÚflagss
          r3Útest_net_if_statszTestNetAPIs.test_net_if_statsws̀Ü×"Ñ"Ó$ˆÙАTÓˆtä × "Ñ "Ü × "Ñ "Ü × %Ñ %ð
ˆ ð
 Ÿ:™:›<ò    *‰KˆD%ܘd¤CÔ(Ð (Ð(Ø.3Ñ +ˆD&˜%  eܘd¤DÔ)Ð )Ð)ؘ\Ñ)Ð )Ð)ؘ\Ñ)Ð )Ð)ؘA’:Ð :ؘ!’8ˆO8ܘe¤SÕ)Ð )Ð)ñ    *r:zLINUX or BSD or MACOS specificcóà—tjdttjd«¬«5}t j «}|ik(sJ‚|jsJ‚    ddd«y#1swYyxYw)Nzpsutil._psutil_posix.net_if_mturVrE)rrKrlrmÚENODEVr(r¤r[)r/r]r‰s   r3Útest_net_if_stats_enodevz$TestNetAPIs.test_net_if_stats_enodev‰s`€ô
Z‰ZØ -ܤ§ ¡ ¨bÓ1ô
ð    ðÜ×%Ñ%Ó'ˆCؘ"’9Ð 9Ø—8’8ˆO‘8÷     ÷    ñ    ús °*A$Á$A-N)rdrerfr r›rœrržr rÃrÆrÑrrrrÔrgr:r3rrñs¦„Ø ‡[[×ÑÐ/Ð/¸ÐÓHñ#óIð#ð8 ‡[[×ÑÐ/Ð/¸ÐÓHñóIðòI(òV;ò$*ð$ ‡[[×ÑØ Ò "cÒ "˜UÐ#Ð,Lðóñóñr:rcón—eZdZejj e d¬«d„«Zejj e d¬«d„«Zejj e     d¬«ejj e
d¬«d„««Z ejj e d¬«d„«Z y)    ÚTestSensorsAPIsr:rjcóv—tj«}|j«D]’\}}t|t«sJ‚|D]v}t|j
t«sJ‚|j |j dk\sJ‚|j|jdk\sJ‚|j€Œf|jdk\rŒvJ‚Œ”yr )    r(Úsensors_temperaturesr¨r¢r­Úlabelr=ÚhighÚcritical)r/Útempsr¬ÚentriesÚentrys     r3Útest_sensors_temperaturesz)TestSensorsAPIs.test_sensors_temperatures˜s®€ä×+Ñ+Ó-ˆØ"Ÿ[™[›]ò        /‰MˆD'ܘd¤CÔ(Ð (Ð(Ø ò /Ü! %§+¡+¬sÔ3Ð3Ð3Ø—=‘=Ð,Ø Ÿ=™=¨AÒ-Ð-Ð-Ø—:‘:Ð)Ø Ÿ:™:¨š?Ð*˜?Ø—>‘>Ñ-Ø Ÿ>™>¨QÓ.Ð.Ð.ñ /ñ        /r:có"—ddgi}tjd|¬«5}tjd¬«dd}|jsJ‚|j
dk(sJ‚|j d    k(sJ‚|jd
k(sJ‚    ddd«y#1swYyxYw) NÚcoretemp)rÙgI@gN@g€Q@z'psutil._psplatform.sensors_temperaturesròT)Ú
fahrenheitrg€^@g€a@gÀc@)rrKr(rØr[r=rÚrÛ)r/Údr]rÜs    r3Ú#test_sensors_temperatures_fahreneitz3TestSensorsAPIs.test_sensors_temperatures_fahreneit¦s”€à Ð5Ð6Ð 7ˆÜ Z‰ZØ 5ÀAô
ð    +à Ü×/Ñ/¸4Ô@ÀÑLÈQÑOˆEØ—8’8ˆO8Ø—=‘= EÒ)Ð )Ð)Ø—:‘: Ò&Ð &Ð&Ø—>‘> UÒ*Ð *Ñ*÷    +÷    +ñ    +ús ABÂBz
no batterycóx—tj«}|jdk\sJ‚|jdksJ‚|jtjtj
hvr|jdk\s-J‚|jtj
k(r|j sJ‚t|j t«sJ‚y)NrrÈ)    r(Úsensors_batteryrÉÚsecsleftÚPOWER_TIME_UNKNOWNÚPOWER_TIME_UNLIMITEDÚ power_pluggedr¢r½)r/r‰s  r3Útest_sensors_batteryz$TestSensorsAPIs.test_sensors_battery²s¤€ô×$Ñ$Ó&ˆØ{‰{˜aÒÐÐØ{‰{˜cÒ!Ð!Ð!Ø <‰<Ü × %Ñ %Ü × 'Ñ 'ð 
ñ
ð—<‘< 1Ò$Ð $Ð$Ø \‰\œV×8Ñ8Ò 8Ø×$Ò$Ð $Ð$ܘ#×+Ñ+¬TÔ2Ð2Ñ2r:có —tj«}|j«D]g\}}t|t«sJ‚|D]K}t|j
t«sJ‚t|j t«sJ‚|j dk\rŒKJ‚Œiyr )r(Ú sensors_fansr¨r¢r­rÙr=rÒ)r/Úfansr¬rÝrÞs     r3Útest_sensors_fansz!TestSensorsAPIs.test_sensors_fansÁs‚€ä×"Ñ"Ó$ˆØ!ŸZ™Z›\ò    *‰MˆD'ܘd¤CÔ(Ð (Ð(Ø ò *Ü! %§+¡+¬sÔ3Ð3Ð3Ü! %§-¡-´Ô5Ð5Ð5Ø—}‘}¨Ó)Ð)Ð)ñ *ñ    *r:N)rdrerfr r›rœrrßrärrrërrïrgr:r3rÖrÖ—s҄Ø ‡[[×ÑÐ4Ð4¸_ÐÓMñ /óNð /ð ‡[[×ÑÐ4Ð4¸_ÐÓMñ    +óNð    +ð ‡[[×ÑÐ/Ð/¸ÐÓHØ ‡[[×јK˜° ÐÓ=ñ 3ó>óIð 3ð ‡[[×ÑÐ,Ð,°_ÐÓEñ*óFñ*r:rÖ)6Ú__doc__r²r­rmr&rrMrŠr¥r¿r†Úunittestrr(rrrrrr    r
r r r Úpsutil._commonrÚ psutil.testsrrrrrrrrrrrrrrrrrr r!r#riržrÆrÝrIrrÖrgr:r3ú<module>rôsûðñãÛ Û Û    Û Û Û Û Û
Û Ýã ÝÝÝÝÝÝÝÝÝÝÝ)Ý Ý!Ý#Ý'Ý'Ý$Ý%Ý'Ý,Ý,Ý)Ý1Ý%ÝÝ'Ý'Ý*ÝÝ)ôE nôE ôPc.nôc.ôLL3>ôL3ô^("^ô("ôV@.ô@ôFI>ôIôXc.ôcôL2*nõ2*r: