ó
    Eñi¥_  ã                  óæ  • S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJ	r	  SSKJ
r
  SS	KrSS	KrSS	KrSS	KrSS
KJr  SSKJr  SSKJr  SS	KrSSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSK J!r!  SSK J"r"  SSK#J$r$  SSK#J%r%  SSK#J&r&  SSK#J'r'  SSK(J)r)  SSK(J*r*  SSK(J+r+  SSK,J-r-  SSK,J.r.  SSK/J0r0  SSK/J1r1  \Rd                  S	S  S!:  a  SS"K3J4r4  \(       a  SS#KJ5r5  SS	KrSS	K6r7\8\9\:   \:\Rj                  4   \8S$   -  r;        S6S% jr< " S& S'\)5      r= " S( S)\*5      r>\" S*S+9S7S, j5       r?S8S- jr@S9S. jrA " S/ S0\
5      rBS:S1 jrCS2rD\" S*S39S;S4 j5       rE    S<S5 jrFg	)=z4Discover and run std-library "unittest" style tests.é    )Úannotations)ÚCallable)Ú	Generator)ÚIterable)ÚIterator)Úauto)ÚEnumN)ÚAny)ÚTYPE_CHECKING)ÚTestCase)ÚExceptionInfo)Úassert_never)Úis_async_function)Úhookimpl)ÚFixtureRequest)ÚMonkeyPatch)Ú	Collector)ÚItem)Úexit)Úfail)Úskip)Úxfail)ÚClass)ÚFunction)ÚModule)ÚCallInfo)Úcheck_interactive_exception)ÚSubtestContext)ÚSubtestReporté   ©é   é   )ÚExceptionGroup)ÚTracebackType)NNNc                óâ   •  [         R                  S   n[        X#R                  5      (       d  g  [
        R                  " U5      (       a  g [        R                  XUS9$ ! [         a     g f = f)NÚunittest)ÚnameÚobj)	ÚsysÚmodulesÚ
issubclassr   Ú	ExceptionÚinspectÚ
isabstractÚUnitTestCaseÚfrom_parent)Ú	collectorr(   r)   Úuts       ÚM/home/mande/repo/quber/.venv/lib/python3.13/site-packages/_pytest/unittest.pyÚpytest_pycollect_makeitemr5   :   sn   € ðä�[‰[˜Ñ$ˆô ˜#Ÿ{™{×+Ñ+Øð ,ô ×Ò˜#×ÑØä×#Ñ# I¸cÐ#ÐBÐBøô ó Ùðús   ‚-A! Á!
A.Á-A.c                  ó<   • \ rS rSrSrS rS	S jrS
S jrS
S jrSr	g)r0   éN   Tc                ó$   • U R                  S5      $ )NÚrunTest©r)   ©Úselfs    r4   ÚnewinstanceÚUnitTestCase.newinstanceS   s   € ð �x‰x˜	Ó"Ð"ó    c              #  ó  #   • SSK Jn  U R                  n[        USS5      (       d  g [	        U5      nU(       d2  U R                  U5        U R                  U5        U R                  5         U R                  R                  R                  U R                  5       U R                  5        U" 5       nSnUR                  U R                  5       HD  n[        U R                  U5      n[        USS5      (       d  M-  [        R                  XS9v •  SnMF     U(       do  [        U R                  SS 5      nUbT  [         R"                  R%                  SS 5      n	U	b  X‰R&                  R(                  :w  a  [        R                  U SS9v •  g g g g 7f)	Nr   )Ú
TestLoaderÚ__test__TF)r(   r9   útwisted.trial.unittest)r'   rA   r)   ÚgetattrÚ_is_skippedÚ'_register_unittest_setup_method_fixtureÚ&_register_unittest_setup_class_fixtureÚ_register_setup_class_fixtureÚsessionÚ_fixturemanagerÚparsefactoriesr=   ÚnodeidÚgetTestCaseNamesÚTestCaseFunctionr1   r*   r+   Úgetr   r9   )
r<   rA   ÚclsÚskippedÚloaderÚfoundsomethingr(   ÚxÚruntestr3   s
             r4   ÚcollectÚUnitTestCase.collect[   sK  é € Ý'à�h‰hˆÜ�s˜J¨×-Ñ-Øä˜cÓ"ˆÞØ×8Ñ8¸Ô=Ø×7Ñ7¸Ô<Ø×.Ñ.Ô0à�‰×$Ñ$×3Ñ3°D×4DÑ4DÓ4FÈÏÉÔTá“ˆØˆØ×+Ñ+¨D¯H©HÖ5ˆDÜ˜Ÿ™ $Ó'ˆAÜ˜1˜j¨$×/Ñ/ÙÜ"×.Ñ.¨tÐ.Ð?Ò?Ø!ŠNñ 6ö Ü˜dŸh™h¨	°4Ó8ˆGØÑ"Ü—[‘[—_‘_Ð%=¸tÓD�Ø‘: ¯K©K×,?Ñ,?Ó!?Ü*×6Ñ6°tÀ)Ð6ÐLÓLð "@ð #ð ùs   ‚FFc                ó  ^^^^^• [        TSS5      m[        TSS5      mTc  Tc  g[        TSS 5      mSU4S jjm    SUUUU4S jjnU R                  R                  R                  STR                   3UU R
                  S	S
S9  g)zKRegister an auto-use fixture to invoke setUpClass and
tearDownClass (#517).Ú
setUpClassNÚtearDownClassÚdoClassCleanupsc                 ó   • g ©N© r^   r?   r4   Ú<lambda>ÚEUnitTestCase._register_unittest_setup_class_fixture.<locals>.<lambda>�   s   € ¸$r?   c                 ó¦   >• [        TSS 5      n U (       d  g U  VVs/ s H  u  poPM	     nnn[        U5      S:X  a  US   e[        SU5      es  snnf )NÚtearDown_exceptionsé   r   zUnittest class cleanup errors)rD   Úlenr$   )Ú	exc_infosÚ_ÚexcÚ
exceptionsrP   s       €r4   Úprocess_teardown_exceptionsÚXUnitTestCase._register_unittest_setup_class_fixture.<locals>.process_teardown_exceptionsƒ   s]   ø€ ô   Ð%:¸DÓAˆIÞØÙ1:Ô;²¡+ 1¨1š#±ˆJÑ;ô �:‹ !Ó#Ø  ‘mÐ#ä$Ð%DÀjÓQÐQùó <s   œAc              3  ó8  >#   • U R                   n[        U5      (       a!  UR                  n[        R                  " USS9eTb   T" 5         S v •   Tb  T" 5         T" 5         T" 5         g ! [         a    T" 5         T" 5         e f = f! T" 5         T" 5         f = f7f©NT)Ú_use_item_location)rP   rE   Ú__unittest_skip_why__r   r-   )ÚrequestrP   ÚreasonÚcleanupri   ÚsetupÚteardowns      €€€€r4   Úunittest_setup_class_fixtureÚYUnitTestCase._register_unittest_setup_class_fixture.<locals>.unittest_setup_class_fixture‘   s”   øé € ð —+‘+ˆCÜ˜3×ÑØ×2Ñ2�Ü—n’n VÀÑEÐEØÑ ðÙ”Gó ð.ØÑ'Ù”Já”	Ù+Õ-øô !ó Ù”IÙ/Ô1Øðûñ ”	Ù+Õ-üs6   ƒABÁA* ÁBÁ
B ÁBÁ*BÂBÂBÂBÚ_unittest_setUpClass_fixture_ÚclassT©r(   ÚfuncrL   ÚscopeÚautouse©ÚreturnÚNone©ro   r   r}   zGenerator[None]©rD   rI   rJ   Ú_register_fixtureÚ__qualname__rL   )r<   rP   rt   rq   ri   rr   rs   s    ` @@@@r4   rG   Ú3UnitTestCase._register_unittest_setup_class_fixturez   s�   ü€ ô ˜˜\¨4Ó0ˆÜ˜3 °Ó6ˆØ‰=˜XÑ-ØÜ˜#Ð0±,Ó?ˆ÷	Rð	.Ø#ð	.à÷	.ò 	.ð0 	�‰×$Ñ$×6Ñ6à0°×1AÑ1AÐ0BÐCØ-Ø—;‘;ØØð 	7ò 	
r?   c                óà   ^^• [        USS5      m[        USS5      mTc  Tc  g    S	UU4S jjnU R                  R                  R                  SUR                   3UU R
                  SSS9  g)
zORegister an auto-use fixture to invoke setup_method and
teardown_method (#517).Úsetup_methodNÚteardown_methodc              3  óæ   >#   • U R                   n[        U5      (       a!  UR                  n[        R                  " USS9eTb  T" XR
                  5        S v •  Tb  T" XR
                  5        g g 7frl   )ÚinstancerE   rn   r   r-   Úfunction)ro   r<   rp   rr   rs   s      €€r4   Úunittest_setup_method_fixtureÚ[UnitTestCase._register_unittest_setup_method_fixture.<locals>.unittest_setup_method_fixtureº   sj   øé € ð ×#Ñ#ˆDÜ˜4× Ñ Ø×3Ñ3�Ü—n’n VÀÑEÐEØÑ Ù�d×,Ñ,Ô-ÛØÑ#Ù˜×/Ñ/Õ0ð $ùs   ƒA.A1Ú_unittest_setup_method_fixture_r‰   Trx   r   r€   )r<   rP   rŠ   rr   rs   s      @@r4   rF   Ú4UnitTestCase._register_unittest_setup_method_fixture²   s‰   ù€ ô ˜˜^¨TÓ2ˆÜ˜3Ð 1°4Ó8ˆØ‰=˜XÑ-Øð	1Ø#ð	1à÷	1ð 	1ð 	�‰×$Ñ$×6Ñ6à2°3×3CÑ3CÐ2DÐEØ.Ø—;‘;ØØð 	7ò 	
r?   r^   N)r}   zIterable[Item | Collector])rP   Útyper}   r~   )
Ú__name__Ú
__module__r‚   Ú__firstlineno__Ú
nofuncargsr=   rV   rG   rF   Ú__static_attributes__r^   r?   r4   r0   r0   N   s   † ð €Jò#ôMô>6
÷p
r?   r0   c                  óf  ^ • \ rS rSr% SrSrSrS\S'   S r\	S 5       r
SU 4S	 jjrSU 4S
 jjrSS jrSS jr      SS jr      SS jrSS.       SS jjr S        S!S jjr S"     S#S jjrSS jrSS jrS$S jrSS jr    S%U 4S jjr        S&S jrS'S jrSrU =r$ )(rN   éÑ   TFNz7list[_pytest._code.ExceptionInfo[BaseException]] | NoneÚ_excinfoc                óŽ   • [        U R                  [        5      (       d   eU R                  R                  U R                  5      $ r]   )Ú
isinstanceÚparentr0   r)   r(   r;   s    r4   Ú_getinstanceÚTestCaseFunction._getinstanceÖ   s0   € Ü˜$Ÿ+™+¤|×4Ñ4Ð4Ð4Ø�{‰{�‰˜tŸy™yÓ)Ð)r?   c                ó   • U R                   $ r]   )rˆ   r;   s    r4   Ú	_testcaseÚTestCaseFunction._testcaseÜ   s   € à�}‰}Ðr?   c                óh   >• S U l         [        TU ]	  5         [        R                  S:  a  S U l        g g )Nr!   )Ú_explicit_tearDownÚsuperrr   r*   Úversion_infoÚ_cached_errors_and_skips©r<   Ú	__class__s    €r4   rr   ÚTestCaseFunction.setupà   s3   ø€ à=AˆÔÜ‰‰ŒÜ×Ñ˜gÓ%ð QUˆDÕ)ð &r?   c                ó|   >• U R                   b  U R                  5         S U l         S U l        U ?[        TU ]  5         g r]   )r    Ú_objÚ	_instancer¡   rs   r¤   s    €r4   rs   ÚTestCaseFunction.teardowné   s:   ø€ Ø×"Ñ"Ñ.Ø×#Ñ#Ô%Ø&*ˆDÔ#ØˆŒ	ØˆNÜ‰ÑÕr?   c                ó   • g r]   r^   ©r<   Útestcases     r4   Ú	startTestÚTestCaseFunction.startTestñ   ó   € Ør?   c                ó®  • [        U5      n [        R                  R                  [           R                  U5      nUR                  nUR                  nU R                   R#                  S/ 5      R%                  W5        g ! [         aÉ      [        R                  " U6 nUR                  SS5        [        SR                  U5      SS9   Nx! [        R                  [        4 a    e [         a    [        SU< 3SS9    N­f = f! [         a    e [        R                   a,    [        R                  R                  R                  5       n  Núf = ff = f)Nr   zCNOTE: Incompatible Exception Representation, displaying natively:

Ú F©Úpytracez6ERROR: Unknown Incompatible Exception representation:
r–   )Ú_handle_twisted_exc_infoÚ_pytestÚ_coder   ÚBaseExceptionÚfrom_exc_infoÚvalueÚ	tracebackÚ	TypeErrorÚformat_exceptionÚinsertr   Újoinr-   ÚKeyboardInterruptÚfrom_currentÚ__dict__Ú
setdefaultÚappend)r<   Ú
rawexcinfoÚexcinforf   Úvaluess        r4   Ú_addexcinfoÚTestCaseFunction._addexcinfoô   s8  € Ü-¨jÓ9ˆ
ð	EÜ—m‘m×1Ñ1´-Ñ@×NÑNØóˆGð
 —‘ˆAØ×!Ñ!ˆAð. 	�‰× Ñ  ¨RÓ0×7Ñ7¸Õ@øô- ó 	EðEðÜ&×7Ò7¸ÐD�FØ—M‘MØð3ôô
 ˜Ÿ™ ›°%Ô8øÜŸ™Ô(9Ð:ó ØÜ$ó Üð,Ø,6©>ð;à %õðûô %ó ØÜ—>‘>ó EÜ!Ÿ-™-×5Ñ5×BÑBÓD“ðEúð)	EúsC   �AB Â
EÂ>CÃ2DÃ?DÄDÄDÄAEÅEÅEÅEc                ó¼   •  [        US   [        R                  5      (       a  [        US   R                  5        U R                  U5        g ! [         a     Nf = f)Nrc   )r˜   r   r-   Úmsgr¼   rÈ   ©r<   r­   rÅ   s      r4   ÚaddErrorÚTestCaseFunction.addError  sR   € ð	Ü˜* Q™-¬¯©×8Ñ8Ü�Z ‘]×&Ñ&Ô'ð 	×Ñ˜Õ$øô ó 	Ùð	ús   ‚:A Á
AÁAc                ó&   • U R                  U5        g r]   )rÈ   rÌ   s      r4   Ú
addFailureÚTestCaseFunction.addFailure   s   € ð 	×Ñ˜Õ$r?   ©Úhandle_subtestsc               óž  ^ ^• SSK Jn  SUU 4S jjnU(       d  U" 5         g [        X5      (       aA  U" 5         T R                  b,  T R                  S   nT R	                  UR
                  X5        g g [        R                  S:  aA  T R                  R                  b*  T R                  5       u  px[        U5      S:X  a  U" 5         g g U" 5         g )Nr   ©Ú_SubTestc                 ó¬   >•  [         R                  " T SS9e! [         R                   a'    TR                  [        R                  " 5       5         g f = frl   )r   r-   rÈ   r*   Úexc_info)rp   r<   s   €€r4   Úadd_skipÚ*TestCaseFunction.addSkip.<locals>.add_skip*  s@   ø€ ð1Ü—n’n VÀÑEÐEøÜ—>‘>ó 1Ø× Ñ ¤§¢£Ö0ð1ús   ƒ ˜8AÁAéÿÿÿÿr!   r|   )Úunittest.caserÖ   r˜   r–   Ú
addSubTestÚ	test_caser*   r¢   rˆ   Ú_outcomeÚ_obtain_errors_and_skipsrd   )	r<   r­   rp   rÓ   rÖ   rÙ   rØ   Úsubtest_errorsrf   s	   ` `      r4   ÚaddSkipÚTestCaseFunction.addSkip%  s®   ù€ õ 	+÷	1ð 	1ö ÙŒJØä�h×)Ñ)ÙŒJØ�}‰}Ñ(ØŸ=™=¨Ñ,�Ø—‘ × 2Ñ 2°HÕGð )ô ×Ñ 'Ó)¨d¯m©m×.DÑ.DÑ.PØ$(×$AÑ$AÓ$CÑ!�Ü�~Ó&¨!Ó+Ù•Jð ,ñ •
r?   c                óª   •  [        [        U5      5        g ! [         R                   a'    U R                  [        R
                  " 5       5         g f = fr]   )r   Ústrr-   rÈ   r*   rØ   )r<   r­   rÅ   rp   s       r4   ÚaddExpectedFailureÚ#TestCaseFunction.addExpectedFailureF  s:   € ð	-Ü”#�f“+ÕøÜ�‰ó 	-Ø×ÑœSŸ\š\›^Ö,ð	-ús   ‚ —8AÁAc                óÌ   • SnU(       a  USUR                    3-  n [        USS9  g ! [        R                   a'    U R                  [        R
                  " 5       5         g f = f)NzUnexpected successz: Fr³   )rp   r   r-   rÈ   r*   rØ   )r<   r­   rp   rË   s       r4   ÚaddUnexpectedSuccessÚ%TestCaseFunction.addUnexpectedSuccessQ  sW   € ð
 #ˆÞØ�R˜Ÿ™�Ð'Ñ'ˆCð	-Ü�˜eÓ$øÜ�~‰~ó 	-Ø×ÑœSŸ\š\›^Ö,ð	-ús   �
( ¨8A#Á"A#c                ó   • g r]   r^   r¬   s     r4   Ú
addSuccessÚTestCaseFunction.addSuccess_  r°   r?   c                ó   • g r]   r^   r¬   s     r4   ÚstopTestÚTestCaseFunction.stopTestb  r°   r?   c                ó   • g r]   r^   )r<   r­   Úelapseds      r4   ÚaddDurationÚTestCaseFunction.addDuratione  r°   r?   c                ót  • SSK Jn  U R                  nUc   eU" U 5        [        U R                  5      (       a  U" U S9  g [        U R                  [        5      (       d   e[        U R                  5      =(       d    [        U R                  R                  5      nU R                  R                  S5      (       a&  U(       d  UR                  U l        [        USS 5        [        X R                  U R                  5         U" U S9  [        X R                  5        g ! [        X R                  5        f = f)Nr   )Ú&maybe_wrap_pytest_function_for_tracing)ÚresultÚusepdbÚtearDownc                 ó   • g r]   r^   )Úargss    r4   r_   Ú*TestCaseFunction.runtest.<locals>.<lambda>  s   € ¸Dr?   )Ú_pytest.debuggingrö   rˆ   r   r)   r˜   r™   r0   rE   ÚconfigÚ	getoptionrù   r    Úsetattrr(   Údelattr)r<   rö   r­   rQ   s       r4   rU   ÚTestCaseFunction.runtesth  sà   € ÝLà—=‘=ˆØÑ#Ð#Ð#á.¨tÔ4ô ˜TŸX™X×&Ñ&Ù˜DÓ!ô ˜dŸk™k¬<×8Ñ8Ð8Ð8Ü! $§(¡(Ó+×K¬{¸4¿;¹;¿?¹?Ó/KˆGØ�{‰{×$Ñ$ X×.Ñ.¶wØ*2×*;Ñ*;�Ô'Ü˜ *Ñ.@ÔAô �HŸi™i¨¯©Ô2ð-Ù Ò%ä˜§)¡)Õ,ø”˜§)¡)Õ,ús   ÄD  Ä D7c                ó^   >• [         TU ]  U5      nUR                  " S 5      nU(       d  UnU$ )Nc                óV   • U R                   R                  R                  S5      (       + $ )NÚ
__unittest)ÚframeÚ	f_globalsrO   )rT   s    r4   r_   Ú4TestCaseFunction._traceback_filter.<locals>.<lambda>Ž  s   € ˜!Ÿ'™'×+Ñ+×/Ñ/°Ó=Õ=r?   )r¡   Ú_traceback_filterÚfilter)r<   rÆ   r»   Ú
ntracebackr¥   s       €r4   r	  Ú"TestCaseFunction._traceback_filter‰  s7   ø€ ô ‘GÑ-¨gÓ6ˆ	Ø×%Ò%Ù=ó
ˆ
ö Ø"ˆJØÐr?   c           
     ó   • SSK Jn  U=[        S` =b  u     [        USS9nO(  ==[        S` =b  u   O  =c  O  O    UnOn[	        U5        [
        S    " S WSSSSSS9nUR                  UL a  S O[        UR                  5      nU R                  R                  XS9n	[        R                  " U	[        U[        UR                  5      S	9S S S
9n
U R                  R                  U
S9  [!        Xz5      (       a  U R                  R#                  XU
S9  [$        R&                  S:  a[  U R)                  5       u  p¼[+        U5      S:”  a9  [+        U5      S:”  a)  US   nX=S   L a  U H  u  pïU R-                  XïSS9  M     g g g g g )Nr   )Ú_subtest_msg_sentinelr^   T)Ú	_ispytestÚcall)ÚstartÚstopÚdurationÚwhenr  )Úitemr  )rË   Úkwargs)Úcaptured_outputÚcaptured_logs)Úreport)Únoder  r  r!   rÛ   FrÒ   )rÜ   r  Útupler   r   r   Ú_messagerå   ÚihookÚpytest_runtest_makereportr   Ú_newr   ÚdictÚparamsÚpytest_runtest_logreportr   Úpytest_exception_interactr*   r¢   rà   rd   râ   )r<   rÞ   ÚtestrØ   r  Úexception_infoÚunreachableÚ	call_inforË   r  Ú
sub_reportrá   Únon_subtest_skipÚlast_subset_errorr­   rp   s                   r4   rÝ   ÚTestCaseFunction.addSubTest”  s‰  € õ 	8ð Ø”—Ü!.¨xÀ4Ñ!H‘ð à'�”—�£4Ó'Ø!)‘ØÜ˜[Ô)ä˜T’NØØØØØØØñ
ˆ	ð —m‘mÐ'<Ò<‰dÄ#ÀdÇmÁmÓBTˆØ—‘×5Ñ5¸4Ð5ÐPˆÜ"×'Ò'ØÜ˜s¬4°·±Ó+<Ñ=Ø Øñ	
ˆ
ð 	�
‰
×+Ñ+°:Ð+Ñ>Ü& y×=Ñ=Ø�J‰J×0Ñ0Ø°*ð 1ñ ô
 ×Ñ˜gÓ%Ø/3×/LÑ/LÓ/NÑ,ˆNô Ð#Ó$ qÓ(¬S°Ó-@À1Ó-Dà$2°2Ñ$6Ð!Ø°Ñ4Ò4ã,<Ñ(˜ØŸ™ XÀu˜ÓMò -=ð 5ð .EÐ(ð &r?   c                óÊ  • SSK Jn  [        R                  S:  d   S5       eU R                  b  U R                  $ U R
                  R                  R                   VVs/ s H  u  p#[        X!5      (       d  M  Uc  M  X#4PM!     nnnU R
                  R                  R                   VVs/ s H  u  p#[        X!5      (       a  M  X#4PM     nnnXE4U l        XE4$ s  snnf s  snnf )zMCompute or obtain the cached values for subtest errors and non-subtest skips.r   rÕ   r!   z2This workaround only should be used in Python 3.10)
rÜ   rÖ   r*   r¢   r£   rˆ   rß   Úerrorsr˜   rQ   )r<   rÖ   rT   Úyrá   Únon_subtest_skipss         r4   rà   Ú)TestCaseFunction._obtain_errors_and_skipsÎ  så   € å*ä×Ñ 'Ó)ð 	
Ø@ó	
Ð)ð ×(Ñ(Ñ4Ø×0Ñ0Ð0ð Ÿ™×.Ñ.×5Ò5ô
â5‘�Ü˜!×&ó à+,ó ˆQ‹FÙ5ð 	ñ 
ð Ÿ™×.Ñ.×6Ò6ô
â6‘�Ü˜a×*ó ˆQ‹FÙ6ð 	ñ 
ð
 *8Ð(KˆÔ%ØÐ0Ð0ùó
ùó
s   ÁCÁ8CÁ=CÂ*CÃC)r£   r    r¨   r|   )r­   úunittest.TestCaser}   r~   )rÅ   Ú_SysExcInfoTyper}   r~   )r­   r1  rÅ   r2  r}   r~   )r­   r1  rp   rå   rÓ   Úboolr}   r~   )r²   )r­   r1  rÅ   r2  rp   rå   r}   r~   r]   )r­   r1  rp   z"twisted.trial.unittest.Todo | Noner}   r~   )r­   r1  rò   Úfloatr}   r~   )rÆ   z*_pytest._code.ExceptionInfo[BaseException]r}   z_pytest._code.Traceback)rÞ   r
   r$  r   rØ   z^ExceptionInfo[BaseException] | tuple[type[BaseException], BaseException, TracebackType] | Noner}   r~   )r}   ztuple[list[Any], list[Any]])r�   r�   r‚   r‘   r’   Úfailfastr–   Ú__annotations__rš   Úpropertyr�   rr   rs   r®   rÈ   rÍ   rÐ   râ   ræ   ré   rì   rï   ró   rU   r	  rÝ   rà   r“   Ú__classcell__)r¥   s   @r4   rN   rN   Ñ   sj  ø‡ Ø€JØ€HØHL€HÐEÓLò*ð ñó ð÷U÷ôô AðD%Ø)ð%Ø7Fð%à	ô%ð%Ø)ð%Ø7Fð%à	ô%ð TXñØ)ðØ36ðØLPðà	õðJ ð		-à#ð	-ð $ð	-ð ð		-ð
 
õ	-ð 6:ð-à#ð-ð 3ð-ð 
õ	-ôôôô-ðB	ØAð	à	 ÷	ð8Nàð8Nð ð8Nðð	8Nð 
ô8N÷t1ò 1r?   rN   T)Útryfirstc                ó  ^• [        U [        5      (       a4  U R                  (       a#  U R                  R                  S5      Ul         U?[        R                  R                  S5      nU(       a‡  UR                  (       au  [        UR                  R                  UR                  5      (       aE  UR                  m[        S    R                  U4S jUR                  5      nUR                  Ul        g g g g ! [         a     Nºf = f)Nr   r'   c                 ó@   >• [        [        T R                  5      5      $ r]   )r   rå   rº   )rÆ   s   €r4   r_   Ú+pytest_runtest_makereport.<locals>.<lambda>ö  s   ø€ ´´c¸'¿-¹-Ó6HÔ1Ir?   )r˜   rN   r–   ÚpoprÆ   r÷   ÚAttributeErrorr*   r+   rO   rº   ÚSkipTestr   Ú	from_callr  )r  r  r'   Úcall2rÆ   s       @r4   r  r  ç  s¾   ø€ ä�$Ô(×)Ñ)Ø�=�=ØŸ=™=×,Ñ,¨QÓ/ˆDŒLðØ�Kô �{‰{�‰˜zÓ*€HÞ�D—L—L¤Z°·±×0BÑ0BÀH×DUÑDU×%VÑ%VØ—,‘,ˆÜ˜‘×(Ñ(Ô)IÈ4Ï9É9ÓUˆØ—}‘}ˆ�ð &W�L€xøô "ó Ùðús   Á	C9 Ã9
DÄDc                ó.   • [        [        U SS5      5      $ )zDReturn True if the given object has been marked with @unittest.skip.Ú__unittest_skip__F)r3  rD   r:   s    r4   rE   rE   ú  s   € ä”˜Ð0°%Ó8Ó9Ð9r?   c                 ón   • [        5       [        R                  La  SSKJn   SSKJn  U" [        U 5        gg)zRRegister the TestCaseFunction class as an IReporter if twisted.trial is available.r   )Ú	IReporter)ÚclassImplementsN)Ú_get_twisted_versionÚTwistedVersionÚNotInstalledÚtwisted.trial.itrialrE  Úzope.interfacerF  rN   )rE  rF  s     r4   Úpytest_configurerL  ÿ  s*   € äÓ¤^×%@Ñ%@Ò@Ý2Ý2áÔ(¨)Õ4ð	 Ar?   c                  óB   • \ rS rSrSr\" 5       r\" 5       r\" 5       rSr	g)rH  i  z~
The Twisted version installed in the environment.

We have different workarounds in place for different versions of Twisted.
r^   N)
r�   r�   r‚   r‘   Ú__doc__r   Ú	Version24Ú	Version25rI  r“   r^   r?   r4   rH  rH    s   † ññ “€Iá“€Iá“6ƒLr?   rH  c                 ó&  • S[         R                  ;  a  [        R                  $ SS Kn SS KnU R                  R                  S5      nUR                  R                  U5      nUR                  S::  a  [        R                  $ [        R                  $ )NrC   r   Útwistedé   )r*   r+   rH  rI  Úimportlib.metadataÚpackaging.versionÚmetadataÚversionÚparseÚmajorrO  rP  )Ú	importlibÚ	packagingÚversion_strrW  s       r4   rG  rG    sr   € ð  ¤s§{¡{Ó2Ü×*Ñ*Ð*ããà×$Ñ$×,Ñ,¨YÓ7€KØ×Ñ×%Ñ% kÓ2€GØ‡}�}˜ÓÜ×'Ñ'Ð'ä×'Ñ'Ð'r?   Ú_twisted_raw_excinfo)Úwrapperc              #  ó<  ^#   • [        5       [        R                  L ah  SS KJs  Jn  UR                  R                  m SU4S jjn[        R                  " 5        nUR                  UR                  SU5        S v •sS S S 5        $ S v •$ ! , (       d  f       g = f7f)Nr   c                ó
  >• Uc  [         R                  " 5       nO-Uc  [        U5      nUc  [         R                  " 5       S   nX!U4n[        U [        [        U5      5         T" XX#US9  g ! [         a    T" XX#5         g f = f)Nr    )ÚcaptureVars)r*   rØ   rŽ   r   ÚTWISTED_RAW_EXCINFO_ATTRr  r¼   )r<   Ú	exc_valueÚexc_typeÚexc_tbra  Úraw_exc_infoÚoriginal__init__s         €r4   Ústore_raw_exception_infoÚ9pytest_runtest_protocol.<locals>.store_raw_exception_info8  sˆ   ø€ ð Ñ Ü"Ÿ|š|›~‘àÑ#Ü# I›�HØ‘>Ü Ÿ\š\›^¨AÑ.�FØ (°VÐ<�Ü�DÔ2´E¸,Ó4GÔHðDÙ Ø XÀ;óøô ó DÙ  °(ÖCðDús   Á#A, Á,BÂBÚ__init__)NNNN)rG  rH  rO  Útwisted.python.failureÚpythonÚfailureÚFailurerj  r   Úcontextr   )r  r3   rh  Úpatcherrg  s       @r4   Úpytest_runtest_protocolrq  0  s{   øé € äÓ¤×!9Ñ!9Ò9ß+Ð+ð Ÿ:™:×.Ñ.Ðð KO÷	Dô& × Ò Ô" gØ�O‰O˜BŸJ™J¨
Ð4LÔMÚ÷ #Ñ"ò ˆ÷	 #Õ"üs   ƒABÁ!BÁ=BÂ
BÂBc                ó6  • [        5       nU[        R                  L a  U $ U[        R                  L a9  [	        U [
        5      (       a"  [        U [
        5      n[        U [
        5        U$ U $ U[        R                  L a’  [        U [        5      (       a{  SSKn[        XR                  R                  R                  5      (       aI  U R                  nUc  [         R"                  " 5       S   n[%        U R&                  5      U R&                  U4$ U $  SU 35       e)zÞ
Twisted passes a custom Failure instance to `addError()` instead of using `sys.exc_info()`.
Therefore, if `rawexcinfo` is a `Failure` instance, convert it into the equivalent `sys.exc_info()` tuple
as expected by pytest.
r   Nr    zUnexpected Twisted version: )rG  rH  rI  rO  Úhasattrrb  rD   r  rP  r˜   r¸   rk  rl  rm  rn  Ú__traceback__r*   rØ   rŽ   rº   )rÅ   Útwisted_versionÚsaved_exc_inforR  Útbs        r4   rµ   rµ   R  s÷   € ô +Ó,€OØœ.×5Ñ5Ò5ð ÐØ	œN×4Ñ4Ò	4ô �:Ô7×8Ñ8Ü$ ZÔ1IÓJˆNä�JÔ 8Ô9Ø!Ð!ØÐØ	œN×4Ñ4Ò	4Ü�j¤-×0Ñ0Û)ä˜*§n¡n×&<Ñ&<×&DÑ&D×EÑEØ×-Ñ-�Ø‘:ÜŸš›¨Ñ*�BÜ˜J×,Ñ,Ó-¨z×/?Ñ/?ÀÐCÐCàÐð 	GÐ4°_Ð4EÐFÓFˆur?   )r2   zModule | Classr(   rå   r)   Úobjectr}   zUnitTestCase | None)r  r   r  zCallInfo[None]r}   r~   )r}   r3  r|   )r}   rH  )r  r   r}   zIterator[None])rÅ   z_SysExcInfoType | BaseExceptionr}   r2  )GrN  Ú
__future__r   Úcollections.abcr   r   r   r   Úenumr   r	   r.   r*   r»   ÚtypesÚtypingr
   r   r'   r   Ú_pytest._coder¶   r   Ú_pytest.compatr   r   Ú_pytest.configr   Ú_pytest.fixturesr   Ú_pytest.monkeypatchr   Ú_pytest.nodesr   r   Ú_pytest.outcomesr   r   r   r   Ú_pytest.pythonr   r   r   Ú_pytest.runnerr   r   Ú_pytest.subtestsr   r   r¢   Úexceptiongroupr$   r%   Útwisted.trial.unittestrR  r  rŽ   r¸   r2  r5   r0   rN   r  rE   rL  rH  rG  rb  rq  rµ   r^   r?   r4   Ú<module>rŠ     sy  ðá :å "å $Ý %Ý $Ý $Ý Ý Û Û 
Û Û Ý Ý  Ý ã Ý 'Ý 'Ý ,Ý #Ý +Ý +Ý #Ý Ý !Ý !Ý !Ý "Ý  Ý #Ý !Ý #Ý 6Ý +Ý *ð ×Ñ�B�QÐ˜'Ó!Ý-æÝ#Ûã!ð 
ˆ$ˆ}Ñ
˜}¨e×.AÑ.AÐ
AÑBØÐÑñð ðCØðCØ%(ðCØ/5ðCàôCô(@
�5ô @
ôFS1�xô S1ñl 
�4Ñó%ó ð%ô$:ô
5ô�Tô ô(ð, 2Ð ñ 
�$Ñóó ððB&GØ/ð&Gàõ&Gr?   