ó
    ×›‘hƒ  ã                  ó¤   • S SK J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JrJr  S SKJr  S SKJrJr   " S	 S
\5      r " S S\5      rg)é    )ÚannotationsN)ÚskipIf)Úimplementer)ÚFailure)Ú	IReporterÚ	ITestCase)Úpyunitcases)ÚPyUnitResultAdapterÚSynchronousTestCasec                  ó(   • \ rS rSrSS jrSS jrSrg)ÚPyUnitTestTestsé   c                ón   • [         R                  " S5      U l        [        U R                  5      U l        g )NÚ	test_pass)r	   Ú
PyUnitTestÚoriginalr   Útest©Úselfs    ÚhC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\twisted/trial/test/test_pyunitcompat.pyÚsetUpÚPyUnitTestTests.setUp   s$   € Ü#×.Ò.¨{Ó;ˆŒÜ˜dŸm™mÓ,ˆ�	ó    c                ój   • U R                  [        U R                  5      U R                  < S35        g)zG
Tests must be callable in order to be used with Python's unittest.py.
z is not callable.N)Ú
assertTrueÚcallabler   r   s    r   Útest_callableÚPyUnitTestTests.test_callable   s'   € ð 	�‰œ §¡Ó+°·	±	©}Ð<MÐ-NÕOr   )r   r   N©ÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__© r   r   r   r      s   † ô-÷Pr   r   c                  ó’   • \ rS rSrSr " S S\5      rSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSS jrSS jrSS jrSS jrSrg)ÚPyUnitResultTestsé   z©
Tests to show that PyUnitResultAdapter wraps TestResult objects from the
standard library 'unittest' module in such a way as to make them usable and
useful from Trial.
c                  ó&   • \ rS rSrSrSrSS jrSrg)ÚPyUnitResultTests.ErrorTesté'   z�
A test case which has a L{test_foo} which will raise an error.

@ivar ran: boolean indicating whether L{test_foo} has been run.
Fc                ó   • SU l         SS-    g)z:
Set C{self.ran} to True and raise a C{ZeroDivisionError}
Té   r   N©Úranr   s    r   Útest_fooÚ$PyUnitResultTests.ErrorTest.test_foo0   s   € ð ˆDŒHØ�‹Er   r0   Nr   )r"   r#   r$   r%   Ú__doc__r1   r2   r&   r'   r   r   Ú	ErrorTestr,   '   s   † ñ	ð ˆ÷	r   r5   c                óÔ   • [        [        5       " S S5      5       nU R                  S5      nU" 5       nUR                  U5        U R	                  UR
                  S   [        5        g)zk
The L{PyUnitResultAdapter} is only used when the result passed to
C{run} does *not* provide L{IReporter}.
c                  ó@   • \ rS rSrSrS	S jrS
S jrS
S jrSS jrSr	g)ÚXPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter.<locals>.StubReporteré=   z–
A reporter which records data about calls made to it.

@ivar errors: Errors passed to L{addError}.
@ivar failures: Failures passed to L{addFailure}.
c                ó    • / U l         / U l        g )N©ÚerrorsÚfailuresr   s    r   Ú__init__ÚaPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter.<locals>.StubReporter.__init__F   s   € Ø-/�”Ø,.�•r   c                ó   • g©z
Do nothing.
Nr'   ©r   r   s     r   Ú	startTestÚbPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter.<locals>.StubReporter.startTestJ   ó   � r   c                ó   • grA   r'   rB   s     r   ÚstopTestÚaPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter.<locals>.StubReporter.stopTestO   rE   r   c                ó:   • U R                   R                  U5        g)z
Record the error.
N)r<   Úappend)r   r   Úerrors      r   ÚaddErrorÚaPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter.<locals>.StubReporter.addErrorT   s   € ð —‘×"Ñ" 5Õ)r   r;   Nr   )r   Úobjectr    r!   )r   rN   rK   r   r    r!   )
r"   r#   r$   r%   r4   r>   rC   rG   rL   r&   r'   r   r   ÚStubReporterr8   =   s   † ñô/ôô
÷
*r   rO   r2   r   N)r   r   r5   ÚrunÚassertIsInstancer<   r   )r   rO   r   Úresults       r   Ú0test_dontUseAdapterWhenReporterProvidesIReporterÚBPyUnitResultTests.test_dontUseAdapterWhenReporterProvidesIReporter7   s\   € ô 
”YÓ	÷	*ð 	*ó 
 ð	*ð8 �~‰~˜jÓ)ˆÙ“ˆØ�‰�ÔØ×Ñ˜fŸm™m¨AÑ.´Õ8r   c                ó*  •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  5        U R                  SUR                  5        U R	                  UR                  5       5        g )Nc                  ó"   • \ rS rSrSrSS jrSrg)Ú3PyUnitResultTests.test_success.<locals>.SuccessTesté`   Fc                ó   • SU l         g ©NTr0   ©Úss    r   r2   Ú<PyUnitResultTests.test_success.<locals>.SuccessTest.test_fooc   ó	   € Ø�•r   r'   Nr   ©r"   r#   r$   r%   r1   r2   r&   r'   r   r   ÚSuccessTestrW   `   s   † ØˆC÷r   r`   r2   r/   )	r   ÚpyunitÚ
TestResultrP   r   r1   ÚassertEqualÚtestsRunÚwasSuccessful)r   r`   r   rR   s       r   Útest_successÚPyUnitResultTests.test_success_   sn   € ô	Ô-ô 	ñ ˜:Ó&ˆÜ×"Ò"Ó$ˆØ�‰�Ôà�‰˜Ÿ™Ô!Ø×Ñ˜˜FŸO™OÔ,Ø�‰˜×,Ñ,Ó.Õ/r   c                ót  •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  5        U R                  SUR                  5        U R                  S[        UR                  5      5        U R                  UR                  5       5        g )Nc                  ó"   • \ rS rSrSrSS jrSrg)Ú3PyUnitResultTests.test_failure.<locals>.FailureTestéo   Fc                ó4   • SU l         U R                  S5        g )NTzboom!)r1   Úfailr[   s    r   r2   Ú<PyUnitResultTests.test_failure.<locals>.FailureTest.test_foor   s   € Ø�”Ø—‘�w•r   r'   Nr   r_   r'   r   r   ÚFailureTestrj   o   s   † ØˆC÷ r   ro   r2   r/   )r   ra   rb   rP   r   r1   rc   rd   Úlenr=   ÚassertFalsere   )r   ro   r   rR   s       r   Útest_failureÚPyUnitResultTests.test_failuren   s‰   € ô	 Ô-ô 	 ñ ˜:Ó&ˆÜ×"Ò"Ó$ˆØ�‰�Ôà�‰˜Ÿ™Ô!Ø×Ñ˜˜FŸO™OÔ,Ø×Ñ˜œC §¡Ó0Ô1Ø×Ñ˜×-Ñ-Ó/Õ0r   c                óh  • U R                  S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  5        U R                  SUR                  5        U R                  S[        UR                  5      5        U R                  UR                  5       5        g )Nr2   r/   )r5   ra   rb   rP   r   r1   rc   rd   rp   r<   rq   re   )r   r   rR   s      r   Ú
test_errorÚPyUnitResultTests.test_error   s~   € Ø�~‰~˜jÓ)ˆÜ×"Ò"Ó$ˆØ�‰�Ôà�‰˜Ÿ™Ô!Ø×Ñ˜˜FŸO™OÔ,Ø×Ñ˜œC §¡Ó.Ô/Ø×Ñ˜×-Ñ-Ó/Õ0r   c                ót  •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  5        U R                  SUR                  5        U R                  S[        UR                  5      5        U R	                  UR                  5       5        g )Nc                  ó,   • \ rS rSrSrSS jrSS jrSrg)Ú4PyUnitResultTests.test_setUpError.<locals>.ErrorTestéŠ   Fc                ó   • SS-    g ©Nr/   r   r'   r   s    r   r   Ú:PyUnitResultTests.test_setUpError.<locals>.ErrorTest.setUp�   s	   € Ø�A“r   c                ó   • SU l         g rZ   r0   r[   s    r   r2   Ú=PyUnitResultTests.test_setUpError.<locals>.ErrorTest.test_foo�   r^   r   r'   Nr   )r"   r#   r$   r%   r1   r   r2   r&   r'   r   r   r5   ry   Š   s   † ØˆCô÷r   r5   r2   r/   )r   ra   rb   rP   rq   r1   rc   rd   rp   r<   re   )r   r5   r   rR   s       r   Útest_setUpErrorÚ!PyUnitResultTests.test_setUpError‰   s‹   € ô	Ô+ô 	ñ ˜Ó$ˆÜ×"Ò"Ó$ˆØ�‰�Ôà×Ñ˜Ÿ™Ô"Ø×Ñ˜˜FŸO™OÔ,Ø×Ñ˜œC §¡Ó.Ô/Ø×Ñ˜×-Ñ-Ó/Õ0r   c                óV  •  SS-    [        R
                  " 5       n[        U5      nUR                  U W5        U R                  UR                  S   S   SR                  [        R                  " W6 5      5        g! [          a"    [        R                  " 5       n[        5       n N f = f)zy
Errors added through the L{PyUnitResultAdapter} have the same traceback
information as if there were no adapter at all.
r/   r   Ú N)ÚZeroDivisionErrorÚsysÚexc_infor   ra   rb   r
   rL   rc   r<   ÚjoinÚ	tracebackÚformat_exception)r   r†   ÚfÚpyresultrR   s        r   Útest_tracebackFromFailureÚ+PyUnitResultTests.test_tracebackFromFailureœ   sŽ   € ð
	Ø�ŠEô ×$Ò$Ó&ˆÜ$ XÓ.ˆØ�‰˜˜aÔ Ø×ÑØ�O‰O˜AÑ˜qÑ! 2§7¡7¬9×+EÒ+EÀxÐ+PÓ#Qõ	
øô !ó 	Ü—|’|“~ˆHÜ“	ŠAð	ús   ‚A< Á<)B(Â'B(c                óÚ  •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        UR                  c   eSR                  [        R                  " UR                  S   5      5      nSR                  UR                  S   S	   R                  5       SS
 5      nU R                  UR                  5       U[        U5      * S R                  5       5        g)z7
As test_tracebackFromFailure, but covering more code.
c                  ó"   • \ rS rSrSrSS jrSrg)Ú3PyUnitResultTests.test_traceback.<locals>.ErrorTesté²   Nc                ób   •  SS-    g ! [          a    [        R                  " 5       U l        e f = fr|   )r„   r…   r†   r   s    r   r2   Ú<PyUnitResultTests.test_traceback.<locals>.ErrorTest.test_fooµ   s-   € ðØ˜“EøÜ(ó Ü$'§L¢L£N�D”MØðús   ‚ ˆ&.)r†   r   )r"   r#   r$   r%   r†   r2   r&   r'   r   r   r5   r�   ²   s   † ØˆH÷r   r5   r2   Nrƒ   é   Ú
r   r/   éÿÿÿÿ)r   ra   rb   rP   r†   r‡   rˆ   Ú	format_tbr<   Ú
splitlinesrc   Ústriprp   )r   r5   r   rR   Úexpected_stackÚobserved_stacks         r   Útest_tracebackÚ PyUnitResultTests.test_traceback­   sÊ   € ô
	Ô+ô 	ñ ˜Ó$ˆÜ×"Ò"Ó$ˆØ�‰�Ôð �}‰}Ñ(Ð(Ð(ØŸ™¤×!4Ò!4°T·]±]À1Ñ5EÓ!FÓGˆØŸ™ 6§=¡=°Ñ#3°AÑ#6×#AÑ#AÓ#CÀCÀRÐ#HÓIˆà×ÑØ× Ñ Ó" N´C¸Ó4GÐ3GÐ3IÐ$J×$PÑ$PÓ$Rõ	
r   c                ó´  •  SS-    WR	                  5         [
        R                  " 5       n[        U5      nUR                  X5        SR                  [        R                  " W6 5      nU R                  UR                  S   S   R                  S5      UR                  S5      5        g! [          a"    [        R                  " 5       n[        5       n NÏf = f)z¹
Errors added through the L{PyUnitResultAdapter} have the same
traceback information as if there were no adapter at all, even
if the Failure that held the information has been cleaned.
r/   r   rƒ   z$ZeroDivisionError: division by zero
N)r„   r…   r†   r   ÚcleanFailurera   rb   r
   rL   r‡   rˆ   r‰   rc   r<   Úendswith)r   r†   rŠ   r‹   rR   Útbacks         r   Útest_tracebackFromCleanFailureÚ0PyUnitResultTests.test_tracebackFromCleanFailureÎ   s²   € ð	Ø�ŠEð 	
�‰ÔÜ×$Ò$Ó&ˆÜ$ XÓ.ˆØ�‰˜Ô Ø—‘œ	×2Ò2°HÐ=Ó>ˆØ×ÑØ�O‰O˜AÑ˜qÑ!×*Ñ*Ð+RÓSØ�N‰NÐBÓCõ	
øô !ó 	Ü—|’|“~ˆHÜ“	ŠAð	ús   ‚B+ Â+)CÃCc                ó¼   •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  US4/5        g)z_
Skips using trial's skipping functionality are reported as skips in
the L{pyunit.TestResult}.
c                  ó6   • \ rS rSr\" SS5      SS j5       rSrg)Ú2PyUnitResultTests.test_trialSkip.<locals>.SkipTestéé   TúLet's skip!c                ó   • SS-    g r|   r'   r   s    r   Ú	test_skipÚ<PyUnitResultTests.test_trialSkip.<locals>.SkipTest.test_skipê   ó	   € à�A“r   r'   Nr   )r"   r#   r$   r%   r   rª   r&   r'   r   r   ÚSkipTestr¦   é   s   † Ù�D˜-Ó(óó )ór   r­   rª   r¨   N©r   ra   rb   rP   rc   Úskipped©r   r­   r   rR   s       r   Útest_trialSkipÚ PyUnitResultTests.test_trialSkipã   sQ   € ô	Ô*ô 	ñ
 ˜Ó$ˆÜ×"Ò"Ó$ˆØ�‰�ÔØ×Ñ˜Ÿ™¨4°Ð*?Ð)@ÕAr   c                ó¼   •  " S S[         5      nU" S5      n[        R                  " 5       nUR                  U5        U R	                  UR
                  US4/5        g)z`
Skips using pyunit's skipping functionality are reported as skips in
the L{pyunit.TestResult}.
c                  óH   • \ rS rSr\R
                  " S5      SS j5       rSrg)Ú3PyUnitResultTests.test_pyunitSkip.<locals>.SkipTestéù   Úskippyc                ó   • SS-    g r|   r'   r   s    r   rª   Ú=PyUnitResultTests.test_pyunitSkip.<locals>.SkipTest.test_skipú   r¬   r   r'   Nr   )r"   r#   r$   r%   ra   Úskiprª   r&   r'   r   r   r­   rµ   ù   s   † Ø�[Š[˜Ó"óó #ór   r­   rª   r·   Nr®   r°   s       r   Útest_pyunitSkipÚ!PyUnitResultTests.test_pyunitSkipó   sQ   € ô	Ô*ô 	ñ
 ˜Ó$ˆÜ×"Ò"Ó$ˆØ�‰�ÔØ×Ñ˜Ÿ™¨4°Ð*:Ð);Õ<r   r'   Nr   )r"   r#   r$   r%   r4   r   r5   rS   rf   rr   ru   r€   rŒ   rœ   r¢   r±   r»   r&   r'   r   r   r)   r)      sI   † ñôÐ'ô ô &9ôP0ô1ô"1ô1ô&
ô"
ôB
ô*B÷ =r   r)   )Ú
__future__r   r…   rˆ   Úunittestra   r   Úzope.interfacer   Útwisted.python.failurer   Útwisted.trial.itrialr   r   Útwisted.trial.testr	   Útwisted.trial.unittestr
   r   r   r)   r'   r   r   Ú<module>rÄ      sC   ðõ #ã 
Û Û Ý å &å *ß 5Ý *ß Kô	PÐ)ô 	Pôc=Ð+õ c=r   