ó
    F\hË  ã                   ó4  • S SK r S SKrS SKJr  SSKJrJrJrJrJ	r	J
r
  \ R                  " SS9 " S S5      5       r " S	 S
5      r\r\r\\\4   r\ R                  " SS9 " S S5      5       r " S S\R*                  5      rS\\\4   S\\\\4   -  4S jrg)é    N)ÚAnyé   )ÚStrJSONÚTestNameÚFilterTupleÚformat_durationÚnormalize_test_nameÚprint_warningT)Úslotsc                   óf   • \ rS rSr% Sr\\S'   Sr\\S'   Sr\\S'   \	S 5       r
\	S 5       rS rS	rg
)Ú	TestStatsé
   r   Ú	tests_runÚfailuresÚskippedc                 ó|   • [        U R                  [        U R                  5      [        U R                  5      5      $ ©N)r   ÚtestsRunÚlenr   r   )Úresults    Ú./usr/lib/python3.13/test/libregrtest/result.pyÚfrom_unittestÚTestStats.from_unittest   s-   € ä˜Ÿ™Ü˜VŸ_™_Ó-Ü˜VŸ^™^Ó,ó.ð 	.ó    c                 óX   • [        U R                  U R                  U R                  5      $ r   )r   Ú	attemptedÚfailedr   )Úresultss    r   Úfrom_doctestÚTestStats.from_doctest   s%   € ä˜×*Ñ*Ø Ÿ™Ø Ÿ™ó*ð 	*r   c                 ó¾   • U =R                   UR                   -  sl         U =R                  UR                  -  sl        U =R                  UR                  -  sl        g r   )r   r   r   )ÚselfÚstatss     r   Ú
accumulateÚTestStats.accumulate   s8   € Ø�Š˜%Ÿ/™/Ñ)�Ø�Š˜Ÿ™Ñ'�Ø�Š˜Ÿ™Ñ%Žr   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   ÚintÚ__annotations__r   r   Ústaticmethodr   r   r$   Ú__static_attributes__r&   r   r   r   r   
   sK   ‡ à€IˆsÓØ€HˆcÓØ€GˆSÓàñ.ó ð.ð
 ñ*ó ð*õ
&r   r   c                   ót   • \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSr\S 5       r\S 5       r\S 5       rSrg)ÚStateé#   ÚPASSEDÚFAILEDÚSKIPPEDÚUNCAUGHT_EXCÚREFLEAKÚENV_CHANGEDÚRESOURCE_DENIEDÚINTERRUPTEDÚWORKER_FAILEDÚ
WORKER_BUGÚDID_NOT_RUNÚTIMEOUTc                 óÀ   • U [         R                  [         R                  [         R                  [         R                  [         R
                  [         R                  1;   $ r   )r0   r3   r5   r6   r:   r;   r=   ©Ústates    r   Ú	is_failedÚState.is_failed1   sD   € àÜ�L‰LÜ×ÑÜ�M‰MÜ×ÑÜ×ÑÜ�M‰Mðñ ð 	r   c                 óÀ   • U [         R                  [         R                  [         R                  [         R                  [         R
                  [         R                  1;  $ r   )r0   r4   r8   r9   r:   r;   r<   r?   s    r   Úhas_meaningful_durationÚState.has_meaningful_duration;   sJ   € ð Ü�M‰MÜ×!Ñ!Ü×ÑÜ×ÑÜ×ÑÜ×Ñðñ ð 	r   c                 óH   • U [         R                  [         R                  1;   $ r   )r0   r9   r;   r?   s    r   Ú	must_stopÚState.must_stopI   s&   € àÜ×ÑÜ×Ñð
ñ 
ð 	
r   r&   N)r'   r(   r)   r*   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r-   rA   rD   rG   r.   r&   r   r   r0   r0   #   sx   † Ø€FØ€FØ€GØ!€LØ€GØ€KØ'€OØ€KØ#€MØ€JØ€KØ€Gàñó ðð ñó ðð ñ
ó ó
r   r0   c                   óZ  • \ rS rSr% \\S'   Sr\S-  \S'   Sr\	S-  \S'   Sr
\\   S-  \S'   Sr\S-  \S'   Sr\\\\4      S-  \S'   Sr\\\\4      S-  \S	'   Sr\\   S-  \S
'   S\S\4S jrS rS\4S jrS rS rS\S\S\4S jrS\S-  4S jrSS jr\S\SS 4S j5       rSr g)Ú
TestResultéV   Ú	test_nameNr@   ÚdurationÚxml_datar#   Úerrorsr   Úcovered_linesÚfail_env_changedÚreturnc                 ó€   • U R                   [        R                  :X  a  U$ [        R                  U R                   5      $ r   )r@   r0   r7   rA   )r"   rQ   s     r   rA   ÚTestResult.is_failedf   s-   € Ø�:‰:œ×*Ñ*Ó*Ø#Ð#Ü�‰˜tŸz™zÓ*Ð*r   c           
      óB  • U R                   (       ap  U R                  (       a_  [        U R                   5      n[        U R                  5      nSUS:”  a  SOS-   nSUS:”  a  SOS-   nU R                   SU SU SU SU S	3
$ U R                   (       a7  [        U R                   5      nSUS:”  a  SOS-   nU R                   SU SU S	3$ U R                  (       a7  [        U R                  5      nSUS:”  a  SOS-   nU R                   SU SU S	3$ U R                   S
3$ )NÚerrorr   ÚsÚ Úfailurez	 failed (Ú z, Ú)z failed)rO   r   r   rL   )r"   ÚleÚlfÚerror_sÚ	failure_ss        r   Ú_format_failedÚTestResult._format_failedk   s  € Ø�;�;˜4Ÿ=Ÿ=Ü�T—[‘[Ó!ˆBÜ�T—]‘]Ó#ˆBØ¨¨Q«¡°BÑ7ˆGØ!¨B°«F¡S¸Ñ;ˆIØ—n‘nÐ% Y¨r¨d°!°G°9¸B¸r¸dÀ!ÀIÀ;ÈaÐPÐPà�;�;Ü�T—[‘[Ó!ˆBØ¨¨Q«¡°BÑ7ˆGØ—n‘nÐ% Y¨r¨d°!°G°9¸AÐ>Ð>à�=�=Ü�T—]‘]Ó#ˆBØ!¨B°«F¡S¸Ñ;ˆIØ—n‘nÐ% Y¨r¨d°!°I°;¸aÐ@Ð@à—.‘.Ð! Ð)Ð)r   c                 óâ  • U R                   =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                  5       $ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S3$ =[        R                  :X  a    U R                   S	3$ =[        R                  :X  a    U R                   S
3$ [        R                  :X  a9  U R                   c   S5       eU R                   S[#        U R                   5       S3$  [%        S5      e)Nz passedz skippedz failed (uncaught exception)z failed (reference leak)z failed (env changed)z skipped (resource denied)z interruptedz worker non-zero exit codez worker bugz ran no testszself.duration is Nonez timed out (r[   zunknown result state: {state!r})r@   r0   r2   rL   r3   r`   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   rM   r   Ú
ValueError©r"   s    r   Ú__str__ÚTestResult.__str__   s‘  € Ø�j‰jØ”—–ØŸ.™.Ð)¨Ð1Ð1Ø”—–Ø×*Ñ*Ó,Ð,Ø”—–ØŸ.™.Ð)¨Ð2Ð2Ø#”×#Ö#ØŸ.™.Ð)Ð)EÐFÐFØ”—–ØŸ.™.Ð)Ð)AÐBÐBØ"”×"Ö"ØŸ.™.Ð)Ð)>Ð?Ð?Ø&”×&Ö&ØŸ.™.Ð)Ð)CÐDÐDØ"”×"Ö"ØŸ.™.Ð)¨Ð6Ð6Ø$”×$Ö$ØŸ.™.Ð)Ð)CÐDÐDØ!”×!Ö!ØŸ.™.Ð)¨Ð5Ð5Ø"”×"Ö"ØŸ.™.Ð)¨Ð7Ð7Ü—•Ø—}‘}Ñ0ÐIÐ2IÓIÐ0ØŸ.™.Ð)¨´oÀdÇmÁmÓ6TÐ5UÐUVÐWÐWØÜ Ð!BÓCÐCr   c                 ó@   • [         R                  U R                  5      $ r   )r0   rD   r@   rd   s    r   rD   Ú"TestResult.has_meaningful_duration�   s   € Ü×,Ñ,¨T¯Z©ZÓ8Ð8r   c                 ó†   • U R                   b  U R                   [        R                  :X  a  [        R                  U l         g g r   )r@   r0   r2   r7   rd   s    r   Úset_env_changedÚTestResult.set_env_changed    s-   € Ø�:‰:Ñ §¡¬u¯|©|Ó!;Ü×*Ñ*ˆD�Jð "<r   Ú	fail_fastc                 óŠ   • [         R                  U R                  5      (       a  gU(       a  U R                  U5      (       a  gg)NTF)r0   rG   r@   rA   )r"   rl   rQ   s      r   rG   ÚTestResult.must_stop¤   s0   € Ü�?‰?˜4Ÿ:™:×&Ñ&ØÞ˜Ÿ™Ð(8×9Ñ9ØØr   c           	      óF  • / nU R                   =(       d    / nU R                  =(       d    / nUS4US44 HW  u  pEU HL  tpg[        XeS9nUc      g U(       d!  U(       a  SOSn	[        SU	 SU< S35            g UR	                  U5        MN     MY     U(       d  g [        U5      $ )	NTF)Úis_errorÚERRORÚFAILzrerun failed to parse z test name: z: don't filter tests)rO   r   r	   r
   ÚappendÚtuple)
r"   Úmatch_testsrO   r   Ú
error_listrp   Ú	full_nameÚ_Ú
match_nameÚ
error_types
             r   Úget_rerun_match_testsÚ TestResult.get_rerun_match_tests«   s²   € Øˆà—‘×" ˆØ—=‘=×& Bˆà�TˆNØ�uÐó%
Ñ ˆJó ",��	Ü0°ÑN�
ØÑ%âÞ!Þ,4¡¸&�JÜ!Ð$:¸:¸,ÀlØ%.¡MÐ1Eð#Gô HâØ×"Ñ" :Ö.ó ",ñ	%
ö  ØÜ�[Ó!Ð!r   c                 ó6   • [         R                  " X[        S9  g )N)Úcls)ÚjsonÚdumpÚ_EncodeTestResult)r"   Úfiles     r   Úwrite_json_intoÚTestResult.write_json_intoÄ   s   € Ü�	Š	�$Ô"3Ó4r   Úworker_jsonc                 ó4   • [         R                  " U [        S9$ )N)Úobject_hook)r   ÚloadsÚ_decode_test_result)r…   s    r   Ú	from_jsonÚTestResult.from_jsonÇ   s   € ä�zŠz˜+Ô3FÑGÐGr   r?   )rR   N)!r'   r(   r)   r*   r   r,   r@   ÚstrrM   ÚfloatrN   Úlistr#   r   rO   rt   r   rP   ÚLocationÚboolrA   r`   re   rD   rj   rG   r   r{   rƒ   r-   r   rŠ   r.   r&   r   r   rJ   rJ   V   s  ‡ àÓØ€Eˆ3�‰:Óà!€Hˆe�d‰lÓ!Ø!%€Hˆd�3‰i˜$ÑÓ%Ø"€Eˆ9�tÑÓ"ð ,0€FˆD��s˜C�x‘Ñ! DÑ(Ó/Ø-1€Hˆd�5˜˜c˜‘?Ñ# dÑ*Ó1ð ,0€M�4˜‘> DÑ(Ó/ð+¨$ð +°4ô +ò
*ð(D˜ô Dò<9ò+ð 4ð ¸4ð ÀDô ð" {°TÑ'9ô "ô25ð ðH˜wð H¨<ó Hó óHr   rJ   c                   ó>   ^ • \ rS rSrS\S\\\4   4U 4S jjrSrU =r	$ )r�   éÌ   ÚorR   c                 ó®   >• [        U[        5      (       a1  [        R                  " U5      nUR                  R
                  US'   U$ [        TU ]  U5      $ )NÚ__test_result__)Ú
isinstancerJ   ÚdataclassesÚasdictÚ	__class__r'   ÚsuperÚdefault)r"   r“   r   r™   s      €r   r›   Ú_EncodeTestResult.defaultÍ   sI   ø€ Ü�aœ×$Ñ$Ü ×'Ò'¨Ó*ˆFØ()¯©×(<Ñ(<ˆFÐ$Ñ%ØˆMä‘7‘? 1Ó%Ð%r   r&   )
r'   r(   r)   r*   r   ÚdictrŒ   r›   r.   Ú__classcell__)r™   s   @r   r�   r�   Ì   s#   ø† ð&˜ð &  c¨3 h¡÷ &õ &r   r�   ÚdatarR   c                 óÒ   • SU ;   a[  U R                  S5        U S   b  [        S0 U S   D6U S'   U S   b"  U S    Vs/ s H  n[        U5      PM     snU S'   [        S0 U D6$ U $ s  snf )Nr•   r#   rP   r&   )Úpopr   rt   rJ   )rŸ   Úlocs     r   r‰   r‰   Ö   sƒ   € Ø˜DÓ Ø�‰Ð"Ô#Ø�‰=Ñ$Ü%Ñ6¨¨W©Ñ6ˆD�‰MØ�Ñ Ñ,à&*¨?Ò&;ó%Ú&;˜s”�c–
Ñ&;ñ%ˆD�Ñ!ô Ñ!˜DÑ!Ð!àˆùò%s   ¼A$)r—   r   Útypingr   Úutilsr   r   r   r   r	   r
   Ú	dataclassr   r0   rŒ   ÚFileNamer+   ÚLineNort   r�   rJ   ÚJSONEncoderr�   r�   r‰   r&   r   r   Ú<module>r©      sÇ   ðÛ Û Ý ÷9÷ 9ð
 ×Ò˜TÑ"÷&ð &ó #ð&÷0+
ñ +
ð\ €Ø	€Ø�˜6Ð!Ñ"€ð ×Ò˜TÑ"÷rHð rHó #ðrHôj&˜×(Ñ(ô &ð˜d 3¨ 8™nð °¸dÀ3ÈÀ8¹nÑ1Lõ r   