+
    € ’eÈ4  ã                   ó’   € R t ^ RIt^RIHt ^RIHt RtR t ! R R]4      t ! R R ]4      t	 ! R	 R
]4      t
R t ! R R]4      tR# )Ú	TestSuiteN)Úcase)ÚutilTc                 ó.   € \        WR  4      pV! 4        R# )c                  ó   € R # ©N© r   ó    Ú\/home/ubuntu/.hermes/tools/python-3.14.9+20261021-linux-x64/lib/python3.14/unittest/suite.pyÚ<lambda>Ú!_call_if_exists.<locals>.<lambda>   s   € ©r	   N)Úgetattr)ÚparentÚattrÚfuncs   && r
   Ú_call_if_existsr      s   € Ü�6¡Ó.€DÙ†Fr	   c                   ón   a € ] tR t^t o RtRtRR ltR tR tR t	R t
R tR	 tR
 tR tR tR tRtV tR# )ÚBaseTestSuitezNA simple test suite that doesn't provide class or module shared fixtures.
    Tc                óD   € . V n         ^ V n        V P                  V4       R# )é    N)Ú_testsÚ_removed_testsÚaddTests)ÚselfÚtestss   &&r
   Ú__init__ÚBaseTestSuite.__init__   s   € ØˆŒØˆÔØ�‰�eÖr	   c                óf   € R \         P                  ! V P                  4      : R\        V 4      : R2# )Ú<z tests=Ú>)r   ÚstrclassÚ	__class__Úlist©r   s   &r
   Ú__repr__ÚBaseTestSuite.__repr__   s   � Ü"&§-¢-°·±Ö"?ÄÀdÆÐLÐLr	   c                ór   € \        WP                  4      '       g   \        # \        V 4      \        V4      8H  # r   )Ú
isinstancer!   ÚNotImplementedr"   )r   Úothers   &&r
   Ú__eq__ÚBaseTestSuite.__eq__   s*   € Ü˜%§¡×0Ò0Ü!Ð!Ü�D‹zœT %›[Ñ(Ð(r	   c                ó,   € \        V P                  4      # r   )Úiterr   r#   s   &r
   Ú__iter__ÚBaseTestSuite.__iter__"   s   € Ü�D—K‘KÓ Ð r	   c                óp   € V P                   pV  F#  pV'       g   K  WP                  4       ,          pK%  	  V# r   )r   ÚcountTestCases)r   ÚcasesÚtests   &  r
   r1   ÚBaseTestSuite.countTestCases%   s4   € Ø×#Ñ#ˆÛˆDß‰tØ×,Ñ,Ó.Õ.’ñ ð ˆr	   c                ó2  € \        V4      '       g$   \        R P                  \        V4      4      4      h\	        V\
        4      '       d2   \        V\        P                  \        34      '       d   \        R4      hV P                  P                  V4       R# )z{} is not callablezNTestCases and TestSuites must be instantiated before passing them to addTest()N)ÚcallableÚ	TypeErrorÚformatÚreprr'   ÚtypeÚ
issubclassr   ÚTestCaser   r   Úappend©r   r3   s   &&r
   ÚaddTestÚBaseTestSuite.addTest,   su   € ä˜�~Š~ÜÐ0×7Ñ7¼¸T»
ÓCÓDÐDÜ�dœD×!Ò!¤j°Ü26·-±-ÄÐ1K÷'Mò 'Mäð ?ó @ð @à�‰×Ñ˜4Ö r	   c                ó|   € \        V\        4      '       d   \        R 4      hV F  pV P                  V4       K  	  R# )z0tests must be an iterable of tests, not a stringN)r'   Ústrr7   r?   )r   r   r3   s   && r
   r   ÚBaseTestSuite.addTests6   s1   € Ü�eœS×!Ò!ÜÐNÓOÐOÛˆDØ�L‰L˜Öó r	   c                ó²   € \        V 4       FG  w  r#VP                  '       d    V# V! V4       V P                  '       g   K6  V P                  V4       KI  	  V# r   )Ú	enumerateÚ
shouldStopÚ_cleanupÚ_removeTestAtIndex)r   ÚresultÚindexr3   s   &&  r
   ÚrunÚBaseTestSuite.run<   sO   € Ü$ Tž?‰KˆEØ× × Ð Øð ˆñ �ŒLØ�}�}Š}Ø×'Ñ'¨Ö.ñ +ð ˆr	   c                óâ   €  V P                   V,          p\        VR4      '       d(   V ;P                  VP                  4       ,          un        RV P                   V&   R#   \         d     R# i ; i)z2Stop holding a reference to the TestCase at index.r1   N)r   Úhasattrr   r1   r7   )r   rJ   r3   s   && r
   rH   Ú BaseTestSuite._removeTestAtIndexE   sa   € ð
	&Ø—;‘;˜uÕ%ˆDô �tÐ-×.Ò.Ø×#Ò# t×':Ñ':Ó'<Õ<Õ#Ø!%ˆD�K‰K˜Óøô ô 	âð	ús   ‚A ÁA.Á-A.c                ó&   € V P                   ! V/ VB # r   ©rK   )r   ÚargsÚkwdss   &*,r
   Ú__call__ÚBaseTestSuite.__call__S   s   € Ø�xŠx˜Ð& Ñ&Ð&r	   c                ó8   € V  F  pVP                  4        K  	  R# )ú7Run the tests without collecting errors in a TestResultN)Údebugr>   s   & r
   rX   ÚBaseTestSuite.debugV   s   € ãˆDØ�J‰JŽLó r	   )r   r   N)r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rG   r   r$   r*   r.   r1   r?   r   rK   rH   rT   rX   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r
   r   r      sL   ø‡ € ñà€Hôò
Mò)ò
!òò!òòò&ò'÷ð r	   r   c                   óf   a € ] tR t^\t o RtRR ltR tR tR tR t	RR lt
RR	 ltR
 tR tRtV tR# )r   a›  A test suite is a composite test consisting of a number of TestCases.

For use, create an instance of TestSuite, then add test case instances.
When all tests have been added, the suite can be passed to a test
runner, such as TextTestRunner. It will run the individual test cases
in the order in which they were added, aggregating the results. When
subclassing, do not forget to call the base class constructor.
c                óŒ  € R p\        VRR 4      R J d
   R;Vn        p\        V 4       Fæ  w  rEVP                  '       d    MÑ\	        V4      '       dw   V P                  WQ4       V P                  WQ4       V P                  WQ4       VP                  Vn	        \        VP                  RR 4      '       g   \        VRR 4      '       d   K   V'       g
   V! V4       MVP                  4        V P                  '       g   KÕ  V P                  V4       Kè  	  V'       d+   V P                  RV4       V P                  V4       R Vn        V# )FÚ_testRunEnteredTÚ_classSetupFailedÚ_moduleSetUpFailedN)r   re   rE   rF   Ú_isnotsuiteÚ_tearDownPreviousClassÚ_handleModuleFixtureÚ_handleClassSetUpr!   Ú_previousTestClassrX   rG   rH   Ú_handleModuleTearDown)r   rI   rX   ÚtopLevelrJ   r3   s   &&&   r
   rK   ÚTestSuite.runf   s  € ØˆÜ�6Ð,¨eÓ4¸Ó=Ø04Ð4ˆFÔ" Xä$ Tž?‰KˆEØ× × Ð Ùä˜4× Ò Ø×+Ñ+¨DÔ9Ø×)Ñ)¨$Ô7Ø×&Ñ& tÔ4Ø,0¯N©N�Ô)ä˜DŸN™NÐ,?À×GÒGÜ˜FÐ$8¸%×@Ò@ÙçÙ�V•à—
‘
”à�}�}Š}Ø×'Ñ'¨Ö.ñ) +÷, Ø×'Ñ'¨¨fÔ5Ø×&Ñ& vÔ.Ø%*ˆFÔ"Øˆr	   c                ó>   € \        4       pV P                  VR4       R# )rW   TN)Ú_DebugResultrK   )r   rX   s   & r
   rX   ÚTestSuite.debug‡   s   € ä“ˆØ�‰�˜Ör	   c           	     óà  € \        VR R4      pVP                  pWC8X  d   R# VP                  '       d   R# \        VRR4      '       d   R# Rp RVn        \        VRR4      p\        VRR4      pVef   \        VR4         V! 4        V'       d;   Ve7   V! 4        VP                   F  p
V P                  W*^,          RX	V
R7       K!  	  \        VR	4       R# R#   \         d     L’i ; i  \         dg   p\        T\        4      '       d   h Rp RTn        M  \         d     Mi ; i\        P                  ! T4      p	T P                  Y(RT	4        Rp?LÏRp?ii ; i  \        TR	4       i ; i)
rl   NÚ__unittest_skip__FÚ
setUpClassÚdoClassCleanupsÚ_setupStdoutT©ÚinfoÚ_restoreStdout)r   r!   rg   rf   r7   r   Ú	Exceptionr'   rq   r   r    Ú"_createClassOrModuleLevelExceptionÚtearDown_exceptions)r   r3   rI   ÚpreviousClassÚcurrentClassÚfailedru   rv   ÚeÚ	classNameÚexc_infos   &&&        r
   rk   ÚTestSuite._handleClassSetUpŽ   s�  € Ü Ð(<¸dÓCˆØ—~‘~ˆØÔ(ÙØ×$×$Ð$ÙÜ�<Ð!4°e×<Ò<Ùàˆð	Ø-2ˆLÔ*ô ˜\¨<¸Ó>ˆ
Ü! ,Ð0AÀ4ÓHˆØÒ!Ü˜F NÔ3ð:ðGÙ”L÷ ˜oÒ9Ù#Ô%Ø$0×$DÔ$D˜Ø×?Ñ?Ø &°­°\À9Ø%-ð @ö /ñ %Eô
   Ð(8Ö9ñ1 "øô ô 	ñ ð	ûô !ô GÜ! &¬,×7Ò7ØØ!�FðØ9=˜Õ6øÜ$ô Ùðúä $§¢¨lÓ ;�IØ×;Ñ;¸FØ<HØ<E÷Gñ GûðGûô&   Ð(8Õ9úsl   ÁC ÂC+ ÂE Â:E ÃC(Ã'C(Ã+EÃ6EÄDÄEÄD&Ä#EÄ%D&Ä&,EÅE ÅEÅE ÅE-c                óD   € R p\        VRR 4      pVe   VP                  pV# )Nrl   )r   r[   )r   rI   ÚpreviousModuler~   s   &&  r
   Ú_get_previous_moduleÚTestSuite._get_previous_module¼   s-   € ØˆÜ Ð(<¸dÓCˆØÒ$Ø*×5Ñ5ˆNØÐr	   c                óª  € V P                  V4      pVP                  P                  pWC8X  d   R # V P                  V4       RVn         \
        P                  V,          p\        TRR 4      pTeL   \        TR4         T! 4        TP                  '       d    \        P                  ! 4        \        TR4       R # R #   \         d     R # i ; i  \         d<   p\        T\        4      '       d   h RTn        T P                  Y'RT4        R p?L‹R p?ii ; i  \         d   pT P                  Y'RT4        R p?LŽR p?ii ; i  \        TR4       i ; i)NFÚsetUpModulerw   Trz   )r‡   r!   r[   rm   rg   ÚsysÚmodulesÚKeyErrorr   r   r{   r'   rq   r|   r   ÚdoModuleCleanups)r   r3   rI   r†   ÚcurrentModuleÚmodulerŠ   r�   s   &&&     r
   rj   ÚTestSuite._handleModuleFixtureÄ   sQ  € Ø×2Ñ2°6Ó:ˆØŸ™×1Ñ1ˆØÔ*Ùà×"Ñ" 6Ô*ð %*ˆÔ!ð	Ü—[‘[ Õ/ˆFô ˜f m°TÓ:ˆØÒ"Ü˜F NÔ3ð:ðKÙ”Mð ×,×,Ð,ðOÜ×-Ò-Ô/ô   Ð(8Ö9ñ) #øô ô 	Úð	ûô !ô KÜ! &¬,×7Ò7ØØ04�FÔ-Ø×;Ñ;¸FØ<IØ<I÷Kñ Kûð	Kûô %ô OØ×?Ñ?ÀØ@MØ@M÷Oñ OûðOûô
   Ð(8Õ9úsf   Á	B> Á?C ÂE ÂD Â>CÃCÃDÃ1DÄE ÄDÄE ÄEÄ$D<Ä7E Ä<EÅE ÅENc                ó:   € V R V R2pV P                  WWe4       R# )z (Ú)N)Ú_addClassOrModuleLevelException)r   rI   ÚexcÚmethod_namer   ry   Ú	errorNames   &&&&&& r
   r|   Ú,TestSuite._createClassOrModuleLevelExceptioné   s$   € à"�m 2 f X¨QÐ/ˆ	Ø×,Ñ,¨V¸)ÖJr	   c                ó&  € \        V4      p\        VR R4      pVe5   \        V\        P                  4      '       d   V! V\        V4      4       R# V'       g(   VP                  V\        P                  ! 4       4       R# VP                  WT4       R# )ÚaddSkipN)	Ú_ErrorHolderr   r'   r   ÚSkipTestrB   ÚaddErrorr‹   rƒ   )r   rI   Ú	exceptionr—   ry   Úerrorrš   s   &&&&&  r
   r”   Ú)TestSuite._addClassOrModuleLevelExceptionî   sa   € ä˜YÓ'ˆÜ˜& )¨TÓ2ˆØÒ¤:¨i¼¿¹×#GÒ#GÙ�Eœ3˜y›>Ö*çØ—‘ ¤s§|¢|£~Ö6à—‘ Ö,r	   c                ój  € V P                  V4      pVf   R # VP                  '       d   R #  \        P                  V,          p\        TR4        \        TRR 4      pTe	    T! 4         \        P                  ! 4        \        TR4       R #   \         d     R # i ; i  \         d5   p\        T\        4      '       d   h T P                  YRT4        R p?LpR p?ii ; i  \         d5   p\        T\        4      '       d   h T P                  YRT4        R p?LœR p?ii ; i  \        TR4       i ; i)Nrw   ÚtearDownModulerz   )r‡   rg   r‹   rŒ   r�   r   r   r{   r'   rq   r|   r   rŽ   )r   rI   r†   r�   r¢   r�   s   &&    r
   rm   ÚTestSuite._handleModuleTearDownú   s0  € Ø×2Ñ2°6Ó:ˆØÒ!ÙØ×$×$Ð$Ùð	Ü—[‘[ Õ0ˆFô 	˜ Ô/ð	6Ü$ VÐ-=¸tÓDˆNØÒ)ðLÙ"Ô$ðHÜ×%Ò%Ô'ô ˜FÐ$4Ö5øô1 ô 	Úð	ûô !ô LÜ! &¬,×7Ò7ØØ×;Ñ;¸FØ<LØ<J÷Lñ LûðLûô ô HÜ˜f¤l×3Ò3ØØ×7Ñ7¸Ø8HØ8F÷Hñ HûðHûô ˜FÐ$4Õ5úse   ­B ÁD$ Á#B  Á+C" ÂBÂBÂ CÂ+*CÃD$ ÃCÃD$ Ã"D!Ã-*DÄD$ ÄD!Ä!D$ Ä$D2c           	     ó  € \        VR R4      pVP                  pWC8X  g   Vf   R# \        VRR4      '       d   R# \        VRR4      '       d   R# \        VRR4      '       d   R# \        VRR4      p\        VRR4      pVf   Vf   R# \        VR4        Ve	    V! 4        Vel   V! 4        VP                   FT  p	\	        V\
        4      '       d
   V	^,          h\        P                  ! V4      pV P                  W)^,          RVV	R	7       KV  	  \        VR
4       R#   \         dK   p\	        T\
        4      '       d   h \        P                  ! T4      pT P                  Y'RT4        Rp?LÍRp?ii ; i  \        TR
4       i ; i)rl   Nrf   Frg   rt   ÚtearDownClassrv   rw   rx   rz   )
r   r!   r   r{   r'   rq   r   r    r|   r}   )
r   r3   rI   r~   r   r¥   rv   r�   r‚   rƒ   s
   &&&       r
   ri   Ú TestSuite._tearDownPreviousClass  s}  € Ü Ð(<¸dÓCˆØ—~‘~ˆØÔ(¨MÒ,AÙÜ�=Ð"5°u×=Ò=ÙÜ�6Ð/°×7Ò7ÙÜ�=Ð"5°u×=Ò=Ùä ¨ÀÓEˆÜ! -Ð1BÀDÓIˆØÒ  _Ò%<Ùä˜ Ô/ð	6ØÒ(ðGÙ!”Oð Ò*ÙÔ!Ø -× AÔ A�HÜ! &¬,×7Ò7Ø& q�kÐ)Ü $§¢¨mÓ <�IØ×;Ñ;¸FÈQÅKØ<KØ<EØAIð <ö Kñ	 !Bô ˜FÐ$4Ö5øô% !ô GÜ! &¬,×7Ò7ØÜ $§¢¨mÓ <�IØ×;Ñ;¸FØ<KØ<E÷Gñ Gûð	Gûô$ ˜FÐ$4Õ5ús8   ÂE7 ÂD Â"A/E7 ÄE4Ä*A E/Å*E7 Å/E4Å4E7 Å7Fr   )Fr   )rZ   r[   r\   r]   r^   rK   rX   rk   r‡   rj   r|   r”   rm   ri   r_   r`   ra   s   @r
   r   r   \   sA   ø‡ € ñôòBò,:ò\ò#:ôJKô

-ò!6÷F(6ð (6r	   c                   óX   a € ] tR tRt o RtRtR tR tR tR t	R t
R	 tR
 tR tRtV tR# )r›   iH  z®
Placeholder for a TestCase inside a result. As far as a TestResult
is concerned, this looks exactly like a unit test. Used to insert
arbitrary errors into a test suite run.
Nc                ó   € Wn         R # r   ©Údescription)r   rª   s   &&r
   r   Ú_ErrorHolder.__init__T  s   € Ø&Ör	   c                ó   € V P                   # r   r©   r#   s   &r
   ÚidÚ_ErrorHolder.idW  s   € Ø×ÑÐr	   c                ó   € R # r   r   r#   s   &r
   ÚshortDescriptionÚ_ErrorHolder.shortDescriptionZ  s   € Ùr	   c                ó$   € R V P                   : R2# )z<ErrorHolder description=r   r©   r#   s   &r
   r$   Ú_ErrorHolder.__repr__]  s   � Ø15×1AÔ1AÐCÐCr	   c                ó"   € V P                  4       # r   )r­   r#   s   &r
   Ú__str__Ú_ErrorHolder.__str__`  s   € Ø�w‰w‹yÐr	   c                ó   € R # r   r   ©r   rI   s   &&r
   rK   Ú_ErrorHolder.runc  s   € ñ 	r	   c                ó$   € V P                  V4      # r   rQ   r¸   s   &&r
   rT   Ú_ErrorHolder.__call__h  s   € Ø�x‰x˜ÓÐr	   c                ó   € ^ # )r   r   r#   s   &r
   r1   Ú_ErrorHolder.countTestCasesk  s   € Ùr	   r©   )rZ   r[   r\   r]   r^   ÚfailureExceptionr   r­   r°   r$   rµ   rK   rT   r1   r_   r`   ra   s   @r
   r›   r›   H  s@   ø‡ € ñð Ðò'ò òòDòòò
 ÷ð r	   r›   c                óB   €  \        V 4       R#   \         d     R# i ; i)z?A crude way to tell apart testcases and suites with duck-typingTF)r-   r7   )r3   s   &r
   rh   rh   n  s'   € ðÜˆTŒ
ñ øô ô Úðús   ‚ ��c                   ó&   € ] tR tRtRtRtRtRtRtR# )rq   iw  zCUsed by the TestSuite to hold previous class when running in debug.NFr   )	rZ   r[   r\   r]   r^   rl   rg   rF   r_   r   r	   r
   rq   rq   w  s   † ÙIØÐØÐØ„Jr	   rq   )r^   r‹   Ú r   r   Ú
__unittestr   Úobjectr   r   r›   rh   rq   r   r	   r
   Ú<module>rÄ      sW   ðÙ ã 
å Ý à€
òô
I�Fô IôXi6�ô i6ôX$�6ô $òLô�6ö r	   