+
    Bi/                     N   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	 ^ RI
Ht ^ RIHt ^RIHt ^RIHtHtHt ^RIHt ^RIHt ^R	IHt ^R
IHt ^RIHt ^RIHtH t H!t!H"t"H#t# Rt$R R lt%R t&R R lt'R t(R R lt). t*R R lt+RR R llt,R R lt-R R lt.R# )    N)
get_colors)support)threading_helper)
match_test)State
TestResult	TestStatsRunTests)saved_test_environment)setup_tests)get_test_runner)ParallelTestCase)TestNameclear_cachesremove_testfnabs_module_nameprint_warningg      >@c                $    V ^8  d   QhR\         /# )   runtestsr
   )formats   "./usr/lib/python3.14/test/libregrtest/single.py__annotate__r      s      X     c                 h   \         P                  ! 4       pVP                  V 4      pVP                   F  p\	        V\
        P                  R 7       K   	  VP                  '       d   \        R4      h\        V\        4       VP                  '       d   \        W1P                  4       \        V4      # )filezerrors while loading tests)unittest
TestLoaderloadTestsFromModuleerrorsprintsysstderr	Exception_filter_suiter   parallel_threads_parallelize_tests
_run_suite)test_modr   loadertestserrors   &&   r   run_unittestr/      s      "F&&x0Ee#**% }}}455%$   5";";<er   c                    . pV P                    Fb  p\        V\        P                  4      '       d   \	        W14       VP                  V4       KA  V! V4      '       g   KQ  VP                  V4       Kd  	  W n         R# )z>Recursively filter test cases in a suite based on a predicate.N)_tests
isinstancer   	TestSuiter'   append)suiteprednewteststests   &&  r   r'   r'   ,   sX    HdH..//$%OOD!Dzz%  Lr   c                $    V ^8  d   QhR\         /# )r   r(   )int)r   s   "r   r   r   8   s       r   c                 4   R  p. pV P                    F|  p\        V\        P                  4      '       d   \	        WA4       VP                  V4       KA  V! V4      '       d   VP                  V4       Kb  VP                  \        WA4      4       K~  	  W0n         R# )c                     \        W P                  4      pVP                  p\        VR R4      ;'       g    \        VR R4      # )__unittest_thread_unsafe__F)getattr_testMethodName__self__)r8   test_methodinstances   &  r   is_thread_unsafe,_parallelize_tests.<locals>.is_thread_unsafe9   sI    d$8$89''%A5I G G">F	Hr   N)r1   r2   r   r3   r)   r4   r   )r5   r(   rC   r7   r8   s   &&   r   r)   r)   8   sz    H  HdH..//t6OOD!D!!OOD!(@A  Lr   c                   \        \        P                  \        P                  \        P
                  RJR7      pVP                  V 4      p\        P
                  eY   ^ RIHu H	p VP                  4       pVP                  V4      P                  R4      p\        P
                  P                  V4       VP                  '       g5   VP                  '       g#   VP                   '       g   \        P"                  hVP%                  4       '       Eg2   \&        P(                  ! V4      p\+        VP                   4      ^8X  d.   VP,                  '       g   VP                   ^ ,          ^,          pMh\+        VP,                  4      ^8X  d.   VP                   '       g   VP,                  ^ ,          ^,          pM!Rp\        P                  '       g
   VR,          pVP                    UU	u. uF  w  r\/        V4      V	3NK  	  p
pp	VP,                   UU	u. uF  w  r\/        V4      V	3NK  	  ppp	\        P0                  ! WzWR7      hV# u up	pi u up	pi )z2Run tests from a unittest.TestSuite-derived class.N)	verbositycapture_outputasciizmultiple errors occurredz!; run in verbose mode for details)stats)r   r$   stdoutr   verbosejunit_xml_listrunxml.etree.ElementTreeetreeElementTreeget_xml_elementtostringdecoder4   testsRunskippedr"   TestDidNotRunwasSuccessfulr	   from_unittestlenfailuresstrTestFailedWithDetails)r5   runnerresultETxml_elemxml_strrI   errtcexc_strr"   rZ   s   &           r   r*   r*   N   s   SZZ'.-4-C-C4-ORF ZZF)**))+++h'..w7%%g.???6>>>&---###!!''/v}}"6???--"1%C!Q&v}}}//!$Q'C,C???C+N$NC8>F3r7G$F:@//J/;2SWg&/J++COOM GJs   'IIc                4    V ^8  d   QhR\         R\        RR/# r   r^   r   returnNr   r   )r   s   "r   r   r   m   s!     # #J #X #$ #r   c                 P   VP                   '       d3   ^RIHp V! V P                  VVP                   VP                  4      w  rEM	V! 4       pRpV'       d   \
        P                  V n        T;\        Rc ;e   w    TpM ;\        P                  Rc ;e   w    \        P                  ! V4      pMq f   \        V P                   RV 24       RpMP ^ RIp\        WWP                  4      '       d   \        P                   ! V4      pM\        R\#        V4       24       RpW`n        R# )   )runtest_refleakF Nz test runner returned None: zUnknown test result type: )hunt_refleakrefleakrk   	test_namequietr   REFLEAKstater	   r   r   rX   r   doctestr2   TestResultsfrom_doctesttyperI   )r^   	test_funcr   rk   rn   test_resultrI   rs   s   &&&     r   regrtest_runnerry   m   s     ,.v/?/?/7/D/D/7~~ ?  k}} Y[E "X  "++K8E #V--..J9+VWE +':':;;!..{; :4;L:MNOLr   c                4    V ^8  d   QhR\         R\        RR/# rf   rh   )r   s   "r   r   r      s!     " ": " "d "r   c                   aa V P                   p\        VSP                  4      p\        P                  ! V4      o\        SR 4      '       d   \        RV R24      hVV3R lp \        WS4       \        P                  ! 4        \        VSP                  4       \        P                  '       du   R\        n        \        V R\!        \        P                  4       R24       \"        P%                  \        P                  4       \        P                  P'                  4        \        P(                  ! 4        R#   \        P                  ! 4        \        TSP                  4       i ; i)	test_mainzModule z= defines test_main() which is no longer supported by regrtestc                     < \        SS 4      # )N)r/   )r   r+   s   r   rw   !_load_run_test.<locals>.test_func   s    Hh//r   Tz	 created z uncollectable object(s)N)ro   r   test_dir	importlibimport_modulehasattrr&   ry   r   
gc_collectr   rK   gcgarbageenvironment_alteredr   rY   
GC_GARBAGEextendclearreap_children)r^   r   ro   module_namerw   r+   s   &f   @r   _load_run_testr      s     I!)X->->?K&&{3Hx%%') -= > ? 	?0	384 	i!1!12	zzz&*#9S_,= >0 1 	2
 	"**%


 	i!1!12s   $D< <-E)c                @    V ^8  d   QhR\         R\        R\        RR/# )r   r^   r   display_failurerg   N)r   r   bool)r   s   "r   r   r      s0     O$ O$Z O$8 O$.2O$>BO$r   c           	      h   \        \        P                  R 7      p\        \        P                  R 7      pR\        n        VP                  pV'       d   RpVP                  pV P                  p \        4        \        P                  ! 4        \        VVP                  WeR7      ;_uu_ 4        \        W4       RRR4       \        P
                  '       d   T PM                  4        T P(                  f   \$        PN                  T n        R# R#   + '       g   i     L]; i  \        P                   d[   pT'       g3   T'       g+   \        TP                    T RT TP"                   2RR7       \$        P&                  T n         Rp?R# Rp?i\*        P,                   d[   pT'       g3   T'       g+   \        TP                    T RT TP"                   2RR7       \$        P.                  T n         Rp?R# Rp?i\        P0                   d   pTP2                   RT RTP"                   2p	T'       d    TP2                   T	 R	T TP"                   2p	\        T	\        P                  RR
7       \$        P4                  T n        TP6                  T n        TP8                  T n        TP:                  T n         Rp?R# Rp?i\        P<                   d   pTP2                   RT RTP"                   2p	T'       d    TP2                   T	 R	T TP"                   2p	\        T	\        P                  RR
7       \$        P4                  T n        TP:                  T n         Rp?R# Rp?i\        P>                   d    \$        P@                  T n         R# \B         d$    \        4        \$        PD                  T n         R#  T'       gP   \F        PH                  ! 4       p	\        TP2                   RT RT	 TP"                   2\        P                  RR
7       \$        PJ                  T n         R# ; i)r   F)pgoNz skipped -- T)flushtest z failedz -- r   r    crashed -- )(r   r$   rJ   r%   r   r   r   rp   ro   r   r   r   rK   r   ResourceDeniedr#   YELLOWRESETr   RESOURCE_DENIEDrr   r   SkipTestSKIPPEDr\   REDFAILEDr"   rZ   rI   
TestFailedrV   DID_NOT_RUNKeyboardInterruptINTERRUPTED	traceback
format_excUNCAUGHT_EXCset_env_changedPASSED)
r^   r   r   rJ   r%   r   rp   ro   excmsgs
   &&&       r   _runtest_env_changed_excr      s    SZZ(FSZZ(F #(G
,,C
NNE  I9#I$,$4$4eF F6,Fn """ |||| uF F !! S==/)Lfll^L ,, S==/)Lfll^L }}(( 	E)GFLL>BZZLT#v||n=Cc

$/||

,,yy E)GFLL>BZZLT#v||n=Cc

$/||yy   (( ((	&&(C::,eI;l3%~NZZ
 ))s   /?D" .D:D" D	D" D" "P17F?FP1#P1$G94?G99P1P1B)K  P1P1BM%%P1<P1P1 P1P1
A$P1c                4    V ^8  d   QhR\         R\        RR/# rf   rh   )r   s   "r   r   r     s!     :& :&Z :&8 :& :&r   c                    VP                   pVP                  pVP                  pVe2   \        P                  '       d   Rp\
        P                  ! VRR7       MRp \        V4       V'       g   VP                  '       Ed   R\        n         \        P                  ! 4       p\        P                  p\        P                  p\        P                  p	V	P                   p
R p V\        n        V\        n        Win        \#        WRR7       V P$                  \&        P(                  8w  d   VP+                  4       pV\        n        V\        n        Wn        Ve>   \        P                  P-                  V4       \        P                  P/                  4        MV\        n         \#        WV'       * R7       \        P0                  pV'       d   Wn        V'       d   \
        P4                  ! 4        R \        n        R #   T\        n        T\        n        Yn        i ; i  T'       d   \
        P4                  ! 4        R \        n        i ; i)NT)exitF)r   )rK   output_on_failuretimeoutr   can_start_threadfaulthandlerdump_traceback_laterr   r   r   ioStringIOr$   rJ   r%   r   orig_stderrr   rr   r   r   getvaluewriter   rL   xml_datacancel_dump_traceback_later)r^   r   rK   r   r   use_timeoutstreamorig_stdoutr   r   orig_print_warnings_stderroutputxml_lists   &&           r   _runtestr     s    G 22G/@@@))'=-&H"GO[[]F**K**K#11M)6)B)B&FG#
#
 -3)(5Q<<5<</#__.F(
(
,F)!

  (

  " &GO$V9@[B ))&O446!%' )
(
,F) 446!%s3   %H AH "AG= :BH H =HH *Ic                <    V ^8  d   QhR\         R\        R\        /# )r   ro   r   rg   )r   r   r   )r   s   "r   r   r   K  s!      x 8 
 r   c           	     h   \        \        P                  R7      pVP                  VP                  VP
                  rTp\        P                  ! 4       p\        V 4      pVP                  p \        Wq4       \        P"                  P%                  4        \        P                  P%                  4        \        P                  ! 4       T,
          Tn        T#    T'       g<   \        P                  ! 4       p	\        T RT  RT	 T 2\        P                  RR7       \        P                  Tn         L; i)zRun a single test.

test_name -- the name of the test

Returns a TestResult.

If runtests.use_junit, xml_data is a list containing each generated
testsuite element.
r   r   r   Tr   )r   r$   r%   BOLD_REDr   r   timeperf_counterr   r   r   r   r   r#   r   r   rr   rJ   r   duration)
ro   r   ansiredresetyellow
start_timer^   r   r   s
   &&        r   run_single_testr   K  s     3::&D

DKKC""$J	"F
,,C*" JJJJ'')J6FOM*&&(CSEykcU5'Bzz/))s   +C AD1)T)/r   r   r   r   r$   r   r   r   	_colorizer   r8   r   test.supportr   filterr   r^   r   r   r	   r   r   save_envr   setupr   
testresultr   parallel_caser   utilsr   r   r   r   r   PROGRESS_MIN_TIMEr/   r'   r)   r*   ry   r   r   r   r   r   rl   r   r   <module>r      s     	  	 
       )  0 0  ,  ' +A A  
,>#N 
"JO$d:&zr   