
    4hh                        S SK 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rS SKJ	r	  S SK
JrJrJr  S rS r " S S\5      r\S	:w  a  \S
-   OS S3rS rSS jr " S S5      r " S S5      r " S S5      r " S S5      r " S S\R4                  5      r\R8                   " S S\R4                  5      5       r\R8                   " S S\R4                  5      5       r " S S\R4                  5      r\S	:X  a  \R@                  " 5         gg)    N)support)_Outcome)BufferedWriterLoggingResult#ResultWithNoStartTestRunStopTestRunc                  ,    [         R                  " 5       $ N)unittest
TestResult)_s    G/opt/python-3.13.8/usr/lib/python3.13/test/test_unittest/test_runner.pyresultFactoryr      s          c                  Z    [         R                  " [        [        R                  " 5       S9$ )N)resultclassstream)r
   TextTestRunnerr   ioStringIO r   r   	getRunnerr      s     ""}*,++-9 9r   c                       \ rS rSrSrg)CustomError   r   N__name__
__module____qualname____firstlineno____static_attributes__r   r   r   r   r          r   r   __main__. c                     [         R                  " 5       nU  H3  n[         R                  R                  U5      nUR	                  U5        M5     [        5       n[         R                  " 5       nUR                  U5        UR                  [         R                  " 5       5        UR                  [         R                  " 5       5        UR                  U5      $ r	   )r
   	TestSuitedefaultTestLoaderloadTestsFromTestCaseaddTestsr   addTestrun)casessuitecasetestsrunner	realSuites         r   runTestsr2   "   s     E**@@Fu  [F ""$Ie	MM($$&'h((*+::i  r   c                 l    U(       d  U R                  S5        g U R                  S5        [        S5      e)Ncleanup_goodcleanup_exc
CleanUpExcappendr   )orderingblowUps     r   cleanupr;   3   s(    '&,''r   c                   *    \ rS rSrSS jrS rS rSrg)TestCM;   Nc                     Xl         X l        g r	   )r9   enter_result)selfr9   r@   s      r   __init__TestCM.__init__<   s     (r   c                 P    U R                   R                  S5        U R                  $ )Nenter)r9   r8   r@   rA   s    r   	__enter__TestCM.__enter__@   s     W%   r   c                 :    U R                   R                  S5        g )Nexit)r9   r8   rA   exc_infos     r   __exit__TestCM.__exit__D   s    V$r   )r@   r9   r	   )r   r   r   r   rB   rG   rM   r    r   r   r   r=   r=   ;   s    )!%r   r=   c                       \ rS rSrSrg)LacksEnterAndExitH   r   Nr   r   r   r   rP   rP   H   r!   r   rP   c                       \ rS rSrS rSrg)
LacksEnterJ   c                     g r	   r   rK   s     r   rM   LacksEnter.__exit__K       r   r   N)r   r   r   r   rM   r    r   r   r   rS   rS   J       r   rS   c                       \ rS rSrS rSrg)	LacksExitM   c                     g r	   r   rF   s    r   rG   LacksExit.__enter__N   rW   r   r   N)r   r   r   r   rG   r    r   r   r   rZ   rZ   M   rX   r   rZ   c                   V    \ rS rSrS r\R                  S 5       rS rS r	S r
S rSrg	)
TestCleanUpR   c                   ^  " S S[         R                  5      nU" S5      nU R                  UR                  / 5        / mU4S jnU4S jnUR	                  USSSS	S
S9  UR	                  U5        U R                  UR                  US[        S	S
S94US0 4/5        U R                  UR                  5       5        U R                  TSS0 4SS[        S	S
S94/5        g )Nc                       \ rS rSrS rSrg)-TestCleanUp.testCleanUp.<locals>.TestableTestT   c                     g r	   r   rF   s    r   testNothing9TestCleanUp.testCleanUp.<locals>.TestableTest.testNothingU       r   r   Nr   r   r   r   rf   r    r   r   r   TestableTestrc   T       r   rj   rf   c                  ,   > TR                  SX45        g N   r8   argskwargscleanupss     r   cleanup1)TestCleanUp.testCleanUp.<locals>.cleanup1]       OOQ-.r   c                  ,   > TR                  SX45        g )N   ro   rp   s     r   cleanup2)TestCleanUp.testCleanUp.<locals>.cleanup2`   rv   r   rn   rx      hellogoodbyefourfivern   rx   r{   r   )r
   TestCaseassertEqual	_cleanups
addCleanupdict
assertTrue
doCleanups)rA   rj   testrt   ry   rs   s        @r   testCleanUpTestCleanUp.testCleanUpS   s    	8,, 	 M*,	/	/ 	!QiH!#Y'	0RS#R,.	/ 	)*QBK!Y'Xa@b1c#der   c                   ^
^  " S S[         R                  5      nU" S5      n[         R                  " 5       n[        US9=oBl        [        S5      m
[        S5      mU
4S jnU4S jnUR                  U5        UR                  U5        U R                  UR                  5       5        U R                  UR                  5        UR                  u  u  pxu  pyU R                  S	U	5        U R                  S
U	5        U R                  [         S3U	5        U R                  SU5        U R                  SU5        U R                  [         S3U5        g )Nc                       \ rS rSrS rSrg)7TestCleanUp.testCleanUpWithErrors.<locals>.TestableTesto   c                     g r	   r   rF   s    r   rf   CTestCleanUp.testCleanUpWithErrors.<locals>.TestableTest.testNothingp   rh   r   r   Nri   r   r   r   rj   r   o   rk   r   rj   rf   resultfoobarc                     > T er	   r   )r6   s   r   rt   3TestCleanUp.testCleanUpWithErrors.<locals>.cleanup1y   s	    r   c                     > T er	   r   )exc2s   r   ry   3TestCleanUp.testCleanUpWithErrors.<locals>.cleanup2|   s    Jr   zin cleanup1zraise CleanUpExcz: foozin cleanup2z
raise exc2z: bar)r
   r   r   r   _outcomer   r   assertFalser   successerrorsassertInCustomErrorRepr)rA   rj   r   r   outcomert   ry   r   msg2msg1r6   r   s             @@r   testCleanUpWithErrors!TestCleanUp.testCleanUpWithErrorsm   s   	8,, 	 M*$$&"*&"99- '
5!		 	!!*+)%}}	9AmT*($/)/6mT*lD))/6r   c                   ^ ^^^^^	 Sm/ m " UUUUU	4S jS[         R                  5      nU" S5      m	U4S jnU4S jmU4S jmT	R                  U5        UU U	4S jn[         R                  " 5       nX4l        T	R                  U5        T R                  T/ S	Q5        S
m/ mU" S5      m	T	R                  U5        T	R                  U5        T R                  T/ SQ5        g )NFc                   D   > \ rS rSrU UUU4S jrUUU4S jrU4S jrSrg)2TestCleanUp.testCleanupInRun.<locals>.TestableTest   c                 n   > TR                  S5        TR                  T5        T(       a  [        S5      eg )NsetUpr   )r8   r   r   )rA   r:   ry   r9   r   s    r   r   8TestCleanUp.testCleanupInRun.<locals>.TestableTest.setUp   s.    ()%e,, r   c                 J   > TR                  S5        TR                  T5        g Nr   r8   r   )rA   cleanup3r9   r   s    r   rf   >TestCleanUp.testCleanupInRun.<locals>.TestableTest.testNothing       ')r   c                 (   > TR                  S5        g NtearDownro   rA   r9   s    r   r   ;TestCleanUp.testCleanupInRun.<locals>.TestableTest.tearDown       
+r   r   Nr   r   r   r   r   rf   r   r    )r:   ry   r   r9   r   s   r   rj   r      s    - -*, ,r   rj   rf   c                  (   > T R                  S5        g Nrt   ro   r9   s   r   rt   .TestCleanUp.testCleanupInRun.<locals>.cleanup1       OOJ'r   c                  (   > T R                  S5        g Nry   ro   r   s   r   ry   .TestCleanUp.testCleanupInRun.<locals>.cleanup2   r   r   c                  (   > T R                  S5        g Nr   ro   r   s   r   r   .TestCleanUp.testCleanupInRun.<locals>.cleanup3   r   r   c                 L   > TR                  U T5        TR                  S5        g )Nr   )r   r8   )	some_testr9   rA   r   s    r   r   -TestCleanUp.testCleanupInRun.<locals>.success   s    Y-OOI&r   )r   r   r   r   ry   rt   r   T)r   ry   rt   )r
   r   r   r   
addSuccessr+   r   )
rA   rj   rt   r   r   r:   ry   r   r9   r   s
   `    @@@@@r   testCleanupInRunTestCleanUp.testCleanupInRun   s    	, 	,8,, 	, M*	(	(	(!	' $$&# $G 	H M*!#DEr   c                    ^^^^^^ / m " UUUUU4S jS[         R                  5      nU" S5      mUUU4S jmU4S jmU4S jmU4S jmTR                  5         U R                  T/ SQ5        g )	Nc                   B   > \ rS rSrU U4S jrUU4S jrUUU4S jrSrg)CTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest   c                 J   > TR                  S5        U R                  T5        g Nr   r   )rA   rt   r9   s    r   r   ITestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.setUp       ()r   c                 J   > TR                  S5        U R                  T5        g r   r   rA   r   r9   s    r   rf   OTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.testNothing   r   r   c                 J   > TR                  S5        TR                  T5        g r   r   )rA   cleanup4r9   r   s    r   r   LTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.tearDown   s    
+)r   r   Nr   )rt   r   r   r9   r   s   r   rj   r      s    *** *r   rj   rf   c                  J   > TR                  S5        TR                  T 5        g r   r   )ry   r9   r   s   r   rt   ?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup1   s    OOJ'OOH%r   c                  (   > T R                  S5        g r   ro   r   s   r   ry   ?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup2   r   r   c                  (   > T R                  S5        g r   ro   r   s   r   r   ?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup3   r   r   c                  (   > T R                  S5        g )Nr   ro   r   s   r   r   ?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup4   r   r   )r   r   r   r   r   rt   ry   )r
   r   debugr   )rA   rj   rt   ry   r   r   r9   r   s     @@@@@@r   !testTestCaseDebugExecutesCleanups-TestCleanUp.testTestCaseDebugExecutesCleanups   sa    	* 	*8,, 	* M*	&	(	(	( 	

 $H 	Ir   c                 z    " S S[         R                  5      nU" S5      n/ nUR                  UR                  S5        [	        US5      nU R                  UR                  U5      S5        UR                  UR                  S5        U R                  UR                  5       5        U R                  U/ SQ5        g )Nc                       \ rS rSrS rSrg)3TestCleanUp.test_enterContext.<locals>.TestableTest   c                     g r	   r   rF   s    r   rf   ?TestCleanUp.test_enterContext.<locals>.TestableTest.testNothing   rh   r   r   Nri   r   r   r   rj   r      rk   r   rj   rf   rt   *   ry   rE   ry   rJ   rt   )	r
   r   r   r8   r=   r   enterContextr   r   )rA   rj   r   rs   cms        r   test_enterContextTestCleanUp.test_enterContext   s    	8,, 	 M*4Hb!**2.34)*#LMr   c                 4    " S S[         R                  5      nU" S5      nU R                  [        S5         UR	                  [        5       5        S S S 5        U R                  [        S5         UR	                  [        5       5        S S S 5        U R                  [        S5         UR	                  [        5       5        S S S 5        U R                  UR                  / 5        g ! , (       d  f       N= f! , (       d  f       Nt= f! , (       d  f       NM= f)Nc                       \ rS rSrS rSrg)>TestCleanUp.test_enterContext_arg_errors.<locals>.TestableTest   c                     g r	   r   rF   s    r   rf   JTestCleanUp.test_enterContext_arg_errors.<locals>.TestableTest.testNothing   rh   r   r   Nri   r   r   r   rj   r      rk   r   rj   rf   the context manager)
r
   r   assertRaisesRegex	TypeErrorr   rP   rS   rZ   r   r   )rA   rj   r   s      r   test_enterContext_arg_errors(TestCleanUp.test_enterContext_arg_errors   s    	8,, 	 M*##I/DE/12 F##I/DEjl+ F##I/DEik* F 	, FEEEEEs#   C'0C8(D	'
C58
D	
Dr   N)r   r   r   r   r   r   force_not_colorizedr   r   r   r   r   r    r   r   r   r_   r_   R   s;    f4   7 !7>,F\IBN -r   r_   c                   h    \ 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 rS rSrg)TestClassCleanup   c                   ^  " S S[         R                  5      nU" S5      nU R                  UR                  / 5        / mU4S jnU4S jnUR	                  USSSS	S
S9  UR	                  U5        U R                  UR                  US[        S	S
S94US0 4/5        UR                  5         U R                  TSS0 4SS[        S	S
S94/5        g )Nc                       \ rS rSrS rSrg);TestClassCleanup.test_addClassCleanUp.<locals>.TestableTest   c                     g r	   r   rF   s    r   rf   GTestClassCleanup.test_addClassCleanUp.<locals>.TestableTest.testNothing  rh   r   r   Nri   r   r   r   rj   r     rk   r   rj   rf   c                  ,   > TR                  SX45        g Nr{   ro   rq   rr   class_cleanupss     r   class_cleanup1=TestClassCleanup.test_addClassCleanUp.<locals>.class_cleanup1      !!1d"34r   c                  ,   > TR                  SX45        g N   ro   r  s     r   class_cleanup2=TestClassCleanup.test_addClassCleanUp.<locals>.class_cleanup2
  r  r   rn   rx   r{   r|   r}   r~   r   r   r  )r
   r   r   _class_cleanupsaddClassCleanupr   doClassCleanups)rA   rj   r   r	  r  r  s        @r   test_addClassCleanUp%TestClassCleanup.test_addClassCleanUp   s    	8,, 	 M*--r2	5	5 	$$^Q1*1	 	% 	C$$^4--)9W9=?)2r24	5
 	$$&1b"+9*.G)*L8N *O 	Pr   c                    ^^ / mSm " UU4S jS[         R                  5      n[        U5        U R                  TSS/5        / mSm[        U5        U R                  T/ SQ5        g )NTc                   P   > \ rS rSr\U U4S j5       rU4S jr\U4S j5       rSrg)=TestClassCleanup.test_run_class_cleanUp.<locals>.TestableTesti  c                 v   > TR                  S5        U R                  [        T5        T(       a
  [        5       eg N
setUpClassr8   r  r;   r   clsr:   r9   s    r   r  HTestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.setUpClass  /    -##GX6%-' r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   ITestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.testNothing%      'r   c                 (   > TR                  S5        g NtearDownClassro   r  r9   s    r   r&  KTestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.tearDownClass'      0r   r   N	r   r   r   r   classmethodr  rf   r&  r    r:   r9   s   r   rj   r    s,    ( (
(1 1r   rj   r  r4   Fr  r   r&  r4   r
   r   r2   r   rA   rj   r:   r9   s     @@r   test_run_class_cleanUp'TestClassCleanup.test_run_class_cleanUp  si    	1 	18,, 	1 	L.#ABP	Rr   c                    ^^ / mSm " UU4S jS[         R                  5      n[        U5        U R                  TSS/5        / mSm[        U5        U R                  T/ SQ5        g )NTc                   T   > \ rS rSr\U U4S j5       rU4S jr\\S 5       5       rSr	g)STestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTesti8  c                 v   > TR                  S5        U R                  [        T5        T(       a
  [        5       eg r  r  r  s    r   r  ^TestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.setUpClass9  r   r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   _TestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.testNothing?  r#  r   c                     [         er	   )AttributeError)r  s    r   r&  aTestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.tearDownClassA  s
     %$r   r   N)
r   r   r   r   r+  r  rf   propertyr&  r    r,  s   r   rj   r4  8  s4    ( (
(%  %r   rj   r  r4   F)r  r   r4   r.  r/  s     @@r   ,test_run_class_cleanUp_without_tearDownClass=TestClassCleanup.test_run_class_cleanUp_without_tearDownClass4  si    	% 	%8,, 	% 	L.#AB?	Ar   c                   ^^ / mSm " UU4S jS[         R                  5      n[         R                  R                  U5      nUR	                  5         U R                  T/ SQ5        / mSm[         R                  R                  U5      nU R                  [        5       nUR	                  5         S S S 5        U R                  [        WR                  5      S5        U R                  T/ SQ5        g ! , (       d  f       NH= f)NFc                   P   > \ rS rSr\U U4S j5       rU4S jr\U4S j5       rSrg)GTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTestiS  c                 R   > TR                  S5        U R                  [        TTS9  g Nr  r:   r8   r  r;   r  s    r   r  RTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.setUpClassT  $    -##GXf#Er   c                 (   > TR                  S5        g r   ro   r   s    r   rf   STestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.testNothingX  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  UTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.tearDownClassZ  r)  r   r   Nr*  r,  s   r   rj   rA  S  s.    F F(1 1r   rj   r-  Tr6   )r  r   r&  r5   )
r
   r   r'   r(   r   r   assertRaisesr   str	exceptionrA   rj   r-   r   r:   r9   s       @@r    test_debug_executes_classCleanUp1TestClassCleanup.test_debug_executes_classCleanUpO  s    		1 		18,, 		1 **@@NP	R **@@N{+rKKM ,R\\*L9O	Q ,+s   C22
D c                   ^^ / mSm " UU4S jS[         R                  5      n[         R                  R                  U5      nU R	                  [
        5       nUR                  5         S S S 5        U R                  [        WR                  5      S5        U R                  T/ SQ5        U R                  UR                  5        UR                  R                  5         / mSm[         R                  R                  U5      nU R	                  [
        5       nUR                  5         S S S 5        U R                  [        UR                  5      S5        U R                  T/ SQ5        U R                  UR                  5        UR                  R                  5         g ! , (       d  f       GN== f! , (       d  f       N= f)NFc                   P   > \ rS rSr\U U4S j5       rU4S jr\U4S j5       rSrg)_TestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTestip  c                 R   > TR                  S5        U R                  [        TTS9  g rC  rE  r  s    r   r  jTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.setUpClassq  rG  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   kTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.testNothingu  r#  r   c                 <   > TR                  S5        [        S5      e)Nr&  TearDownClassExcr7   r'  s    r   r&  mTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClassw  s    0!"455r   r   Nr*  r,  s   r   rj   rT  p  s.    F F(6 6r   rj   rZ  )r  r   r&  T)r
   r   r'   r(   rL  r   r   r   rM  rN  r   r  clearrO  s       @@r   8test_debug_executes_classCleanUp_when_teardown_exceptionITestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exceptionl  sH   
	6 
	68,, 
	6 **@@N{+rKKM ,R\\*,>?#JK445$$**,**@@N{+rKKM ,R\\*,>?#JK445$$**, ,+ ,+s   FF1
F.1
F?c                     " S S[         R                  5      nS nS nUR                  U5        UR                  U5        UR                  5         U R	                  [        UR                  5      S5        UR                  u  pEU R                  US   [        5        U R	                  [        US   5      S5        U R                  US   [        5        U R	                  [        US   5      S5        g )	Nc                       \ rS rSrS rSrg)WTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.TestableTesti  c                     g r	   r   rF   s    r   rf   cTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.TestableTest.testNothing  rh   r   r   Nri   r   r   r   rj   ra    rk   r   rj   c                      [        S5      er   r   r   r   r   rt   STestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.cleanup1      j))r   c                      [        S5      er   re  r   r   r   ry   STestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.cleanup2  rg  r   rx   rn   ry   rt   )
r
   r   r  r  r   lentearDown_exceptionsassertIsInstancer   rM  )rA   rj   rt   ry   e1e2s         r   0test_doClassCleanups_with_errors_addClassCleanUpATestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp  s    	8,, 		*	* 	$$X.$$X.$$&\==>B11be[1RUZ0be[1RUZ0r   c                    ^ / m " U4S jS[         R                  5      n[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ SQ5        g )Nc                   T   > \ rS rSr\U 4S j5       rU 4S jrS r\U 4S j5       rSr	g)BTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTesti  c                 T   > TR                  S5        U R                  [        T5        g r  rE  r'  s    r   r  MTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.setUpClass      -##GX6r   c                 R   > TR                  S5        U R                  [        TSS9  g Nr   TrD  r8   r   r;   r   s    r   r   HTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.setUp  !    ($?r   c                     g r	   r   rF   s    r   rf   NTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.testNothing  rh   r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  PTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.tearDownClass  r)  r   r   N
r   r   r   r   r+  r  r   rf   r&  r    r   s   r   rj   rs    s2    7 7@1 1r   rj   r   rn   : CleanUpExc)r  r   r5   r&  r4   r
   r   r2   r   r   
splitlinesr   rA   rj   r   r9   s      @r   test_with_errors_addCleanUp,TestClassCleanup.test_with_errors_addCleanUp  sr    	18,, 	1 ,'q)!,779"=+,L9	;;	<r   c                    ^ / m " U4S jS[         R                  5      n[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ SQ5        g )Nc                   Z   > \ rS rSr\U 4S j5       rU 4S jrU 4S jr\U 4S j5       rSr	g)KTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTesti  c                 R   > TR                  S5        U R                  [        TSS9  g Nr  TrD  rE  r'  s    r   r  VTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.setUpClass  $    -##GXd#Cr   c                 T   > TR                  S5        U R                  [        T5        g r   ry  r   s    r   r   QTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.setUp  s    (2r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   WTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  YTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.tearDownClass  r)  r   r   Nr  r   s   r   rj   r    s3    D D3(1 1r   rj   r   rn   r  r  )r  r   r   r4   r&  r5   r  r  s      @r   $test_run_with_errors_addClassCleanUp5TestClassCleanup.test_run_with_errors_addClassCleanUp  sr    	18,, 	1 ,'q)!,779"=+,L9	;:	;r   c                 h  ^^^ / mSmSm " UUU4S jS[         R                  5      n[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ SQ5        / mS	mSm[        U5      nU R                  UR                  S   S   R                  5       S   [         S
35        U R                  UR                  S   S   R                  5       S   [         S35        U R                  TSS/5        / mSmS	m[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ SQ5        g )NFc                   ^   > \ rS rSr\U U4S j5       rUU4S jrU4S jr\U4S j5       rSr	g)UTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTesti  c                 v   > TR                  S5        U R                  [        TSS9  T(       a  [        S5      eg )Nr  TrD  ClassExcr  r  class_blow_upr9   s    r   r  `TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.setUpClass  s7    -##GXd#C %j11 !r   c                 L   > TR                  S5        T(       a  [        S5      eg Nr   	MethodExcr7   rA   method_blow_upr9   s    r   r   [TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.setUp  "    (!%k22 "r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   aTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  cTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.tearDownClass  r)  r   r   Nr  r  r  r9   s   r   rj   r    s1    2 2
3(1 1r   rj   r   rn   r  r  )r  r   r   r&  r5   T
: ClassExcr  r5   : MethodExc)r  r   r&  r5   r  )rA   rj   r   r  r  r9   s      @@@r   .test_with_errors_in_addClassCleanup_and_setUps?TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps  s   	1 	18,, 	1" ,'q)!,779"=+,L9	;:	; ,'q)!,779"=+,J7	9q)!,779"=+,L9	;&6	8 ,'q)!,779"=+,K8	:q)!,779"=+,L9	;)	*r   c                    ^ / m " U4S jS[         R                  5      n[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ SQ5        g )Nc                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)HTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTesti	  c                 T   > TR                  S5        U R                  [        T5        g r  rE  r'  s    r   r  STestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.setUpClass
  rv  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   TTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.testNothing  r#  r   c                 <   > TR                  S5        [        S5      e)Nr&  TearDownExcr7   r'  s    r   r&  VTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.tearDownClass  s    0!-00r   r   Nr*  r   s   r   rj   r  	  s,    7 7(1 1r   rj   r   rn   r  z: TearDownExcr-  r  r  s      @r   !test_with_errors_in_tearDownClass2TestClassCleanup.test_with_errors_in_tearDownClass  sq    
	18,, 
	1 ,'q)!,779"=+,M:	<P	Rr   c                 L    " S S[         R                  5      n/ nUR                  UR                  S5        [	        US5      nU R                  UR                  U5      S5        UR                  UR                  S5        UR                  5         U R                  U/ SQ5        g )Nc                       \ rS rSrS rSrg)=TestClassCleanup.test_enterClassContext.<locals>.TestableTesti  c                     g r	   r   rF   s    r   rf   ITestClassCleanup.test_enterClassContext.<locals>.TestableTest.testNothing  rh   r   r   Nri   r   r   r   rj   r    rk   r   rj   rt   r   ry   r   )r
   r   r  r8   r=   r   enterClassContextr  )rA   rj   rs   r   s       r   test_enterClassContext'TestClassCleanup.test_enterClassContext  s    	8,, 	 $$X__jAHb!77;R@$$X__jA$$&#LMr   c                 $    " S S[         R                  5      nU R                  [        S5         UR	                  [        5       5        S S S 5        U R                  [        S5         UR	                  [        5       5        S S S 5        U R                  [        S5         UR	                  [        5       5        S S S 5        U R                  UR                  / 5        g ! , (       d  f       N= f! , (       d  f       Nt= f! , (       d  f       NM= f)Nc                       \ rS rSrS rSrg)HTestClassCleanup.test_enterClassContext_arg_errors.<locals>.TestableTesti+  c                     g r	   r   rF   s    r   rf   TTestClassCleanup.test_enterClassContext_arg_errors.<locals>.TestableTest.testNothing,  rh   r   r   Nri   r   r   r   rj   r  +  rk   r   rj   r   )
r
   r   r   r   r  rP   rS   rZ   r   r  rA   rj   s     r   !test_enterClassContext_arg_errors2TestClassCleanup.test_enterClassContext_arg_errors*  s    	8,, 	 ##I/DE**+<+>? F##I/DE**:<8 F##I/DE**9;7 F 	55r: FEEEEEs#   C(C0 D
C-0
C>
Dc                    ^^ / m " U4S jS[         R                  5      m " UU4S jS[         R                  5      n[        U5        U R                  T/ SQ5        g )Nc                   8   > \ rS rSr\U 4S j5       rU 4S jrSrg)8TestClassCleanup.test_run_nested_test.<locals>.InnerTesti;  c                 `   > TR                  S5        U R                  TR                   S5        g )Ninner setupinner cleanupr8   r  r'  s    r   r  CTestClassCleanup.test_run_nested_test.<locals>.InnerTest.setUpClass<  #    .##HOO_Er   c                 (   > TR                  S5        g )N
inner testro   r   s    r   r   =TestClassCleanup.test_run_nested_test.<locals>.InnerTest.test@  s    -r   r   Nr   r   r   r   r+  r  r   r    r   s   r   	InnerTestr  ;  s!    F F. .r   r  c                   :   > \ rS rSr\U4S j5       rU U4S jrSrg)8TestClassCleanup.test_run_nested_test.<locals>.OuterTestiC  c                 `   > TR                  S5        U R                  TR                   S5        g )Nouter setupouter cleanupr  r'  s    r   r  CTestClassCleanup.test_run_nested_test.<locals>.OuterTest.setUpClassD  r  r   c                 `   > TR                  S5        [        T5        TR                  S5        g )Nstart outer testend outer test)r8   r2   )rA   r  r9   s    r   r   =TestClassCleanup.test_run_nested_test.<locals>.OuterTest.testH  s%     23# 01r   r   Nr  )r  r9   s   r   	OuterTestr  C  s!    F F2 2r   r  )r  r  r  r  r  r  r  r.  )rA   r  r  r9   s     @@r   test_run_nested_test%TestClassCleanup.test_run_nested_test8  sP    	.)) 	.	2 	2)) 	2 	 $3 	4r   c                      " S S[         R                  5      n[         R                  R                  U5      n[	        5       nUR                  U5        U R                  SUR                  R                  5       5        g )Nc                       \ rS rSrSrg)FTestClassCleanup.test_run_empty_suite_error_message.<locals>.EmptyTestiT  r   Nr   r   r   r   	EmptyTestr  T      r   r  z
NO TESTS RAN
)	r
   r   r'   r(   r   r+   r   r   getvalue)rA   r  r-   r0   s       r   "test_run_empty_suite_error_message3TestClassCleanup.test_run_empty_suite_error_messageS  s[    	)) 	 **@@K

5(&--*@*@*BCr   r   N)r   r   r   r   r  r0  r=  rP  r]  ro  r  r  r  r  r  r  r  r  r    r   r   r   r   r      sQ    P6R4A6Q: -D1.<.;.2*hR(N;46Dr   r   c                   z    \ 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 rS rS rS rS rSrg)TestModuleCleanUpi^  c                   ^^^ / mU4S jmU4S jm " UU4S jS[         5      nU R                  [        R                  R                  TS[        SSS94TS	0 4/5        [        R                  R                  5         U R                  TS
S	0 4SS[        SSS94/5        U R                  [        R                  R                  / 5        g )Nc                  ,   > TR                  SX45        g r  ro   rq   rr   module_cleanupss     r   module_cleanup1HTestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.module_cleanup1c      ""At#45r   c                  ,   > TR                  SX45        g r  ro   r  s     r   module_cleanup2HTestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.module_cleanup2f  r  r   c            	       h   > \ rS rSr\R
                  "  Y SSSSSS9  \R
                  "  Y5        Srg	)
?TestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.Moduleii  rn   rx   r{   r|   r}   r~   r   Nr   r   r   r   r
   addModuleCleanupr    )r  r  s   r   Moduler  i  s-    %%oq!Q+2D%%o6r   r  r   r|   r}   r~   r   r  r{   )objectr   r
   r.   _module_cleanupsr   doModuleCleanups)rA   r  r  r  r  s     @@@r   test_add_and_do_ModuleCleanup/TestModuleCleanUp.test_add_and_do_ModuleCleanup`  s    	6	6	7 	7V 	7
 	77*IW9=?*B35	6
 	&&(Ar2;I*.G)*L9N +O 	P77<r   c           
        ^^^ / mU4S jmS m " UU4S jS[         5      nU R                  [        R                  R                  TS[        SSS94TS	0 4/5        U R                  [        5       n[        R                  R                  5         S S S 5        U R                  [        WR                  5      S
5        U R                  [        R                  R                  / 5        g ! , (       d  f       N^= f)Nc                  ,   > TR                  SX45        g r  ro   r  s     r   module_cleanup_goodcTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.module_cleanup_good{  r  r   c                      [        S5      e)Nr6   re  )rq   rr   s     r   module_cleanup_badbTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.module_cleanup_bad~  s    l++r   c            	       h   > \ rS rSr\R
                  "  YSSSSSS9  \R
                  "  Y 5        Srg	)
VTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.Modulei  rn   rx   r{   r|   r}   r~   r   Nr  )r	  r  s   r   r  r    s/    %%&91a+2D%%&89r   r  r   r|   r}   r~   r   r6   )r  r   r
   r.   r   r   rL  r   r  rM  rN  )rA   r  er	  r  r  s      @@@r   4test_doModuleCleanup_with_errors_in_addModuleCleanupFTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanupx  s    	6	,	: 	:V 	: 	77.	W9=?-r268	9 {+qMM**, ,Q[[)<877< ,+s   1C((
C6c                    ^ ^^ / mU4S jm " UU 4S jS[         5      n[        R                  R                  5         T R	                  TSSS04/5        g )Nc                  *   > TR                  X45        g r	   ro   rp   s     r   r;   CTestModuleCleanUp.test_addModuleCleanup_arg_errors.<locals>.cleanup      OOTN+r   c                   8  > \ rS rSr\R
                  "  Y SSSS9   YR                  \5         \R
                  "  Y SS9  SSS5         YR                  \5         \R
                  " 5         SSS5        Srg! , (       d  f       N== f! , (       d  f       Srg= f)	BTestModuleCleanUp.test_addModuleCleanup_arg_errors.<locals>.Modulei  rn   rx   r|   )functionr  argNr   )	r   r   r   r   r
   r  rL  r   r    r;   rA   s   r   r  r    sl    %%gq!gF""9-))7H .""9-))+ .- .---s   A8B	8
B	
Br  rn   rx   r  r|   )r  r
   r.   r  r   )rA   r  r;   rs   s   ` @@r    test_addModuleCleanup_arg_errors2TestModuleCleanUp.test_addModuleCleanup_arg_errors  sP    	,	, 	,V 	, 	&&(!J#89:	<r   c                   ^^ Sm/ m " UU4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5      nU R                  TSS/5        U R                  UR                  S   S	   R                  5       S
   [         S35        / mSm[        U5        U R                  T/ SQ5        U R                  [        R                  R                  / 5        g )NTc                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)9TestModuleCleanUp.test_run_module_cleanUp.<locals>.Modulei  c                     > TR                  S5        [        R                  " [        T5        T (       a  [	        S5      eg )NsetUpModulezsetUpModule Excr8   r
   r  r;   r   r,  s   r   r!  ETestModuleCleanUp.test_run_module_cleanUp.<locals>.Module.setUpModule  s3    .))'8<%&788 r   c                  (   > T R                  S5        g NtearDownModulero   r   s   r   r&  HTestModuleCleanUp.test_run_module_cleanUp.<locals>.Module.tearDownModule       01r   r   Nr   r   r   r   staticmethodr!  r&  r    r,  s   r   r  r    s)    9 9
 2 2r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)?TestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTesti  c                 (   > TR                  S5        g r  ro   r'  s    r   r  JTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.setUpClass      -r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   KTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  MTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.tearDownClass  r)  r   r   Nr*  r   s   r   rj   r,    ,    . .(1 1r   rj   r!  r4   r   rn   r  z: setUpModule ExcFr!  r  r   r&  r&  r4   r  r
   r   r   sysmodulesr2   r   r   r  r   r.   r   )rA   r  rj   r   r:   r9   s       @@r   test_run_module_cleanUp)TestModuleCleanUp.test_run_module_cleanUp  s    		2 		2V 		2	18,, 	1 #+ &H,'M>#BCq)!,779"=+,,=>	@ <	= 	77<r   c                 `  ^^^ SmSm/ m " UU4S jS[         5      n " UU4S jS[         5      n " U4S jS[        R                  5      n " U4S	 jS
[        R                  5      nSUl        U[        R
                  S'   SUl        U[        R
                  S'   [        X45        U R                  T/ SQ5        / mSmSm[        X45        U R                  T/ SQ5        / mSmSm[        X45        U R                  T/ SQ5        U R                  [        R                  R                  / 5        g )NTFc                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)CTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1i  c                     > TR                  S5        [        R                  " [        T5        T (       a
  [	        5       eg Nr!  r"  r,  s   r   r!  OTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1.setUpModule  s/    .))'8<%-' r   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  RTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1.tearDownModule  r(  r   r   Nr)  r,  s   r   Module1r=    s)    ( (
 2 2r   rC  c                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)CTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2i  c                     > TR                  S5        [        R                  " [        T5        T (       a
  [	        5       eg )NsetUpModule2r"  blowUp2r9   s   r   r!  OTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2.setUpModule  s/    /))'8<%-' r   c                  (   > T R                  S5        g )NtearDownModule2ro   r   s   r   r&  RTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2.tearDownModule  s     12r   r   Nr)  rH  s   r   Module2rE    s)    ( (
 3 3r   rN  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)HTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTesti  c                 (   > TR                  S5        g r  ro   r'  s    r   r  STestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.setUpClass  r/  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   TTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  VTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.tearDownClass  r)  r   r   Nr*  r   s   r   rj   rP    r4  r   rj   c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)ITestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2i  c                 (   > TR                  S5        g )NsetUpClass2ro   r'  s    r   r  TTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.setUpClass  s    .r   c                 (   > TR                  S5        g Ntest2ro   r   s    r   rf   UTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.testNothing      (r   c                 (   > TR                  S5        g )NtearDownClass2ro   r'  s    r   r&  WTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.tearDownClass  r(  r   r   Nr*  r   s   r   TestableTest2rX    s,    / /)2 2r   rd  )r!  r4   rG  rZ  r^  rb  rL  r4   )r!  r  r   r&  r&  r4   rG  r4   )r!  r  r   r&  r&  r4   rG  rZ  r^  rb  rL  r4   
r  r
   r   r   r7  r8  r2   r   r.   r   )rA   rC  rN  rj   rd  r:   rI  r9   s        @@@r    test_run_multiple_module_cleanUp2TestModuleCleanUp.test_run_multiple_module_cleanUp  s   		2 		2f 		2		3 		3f 		3	18,, 	1	2H-- 	2 #,!(I#, !(I- $4 	5 - $4 	5
 -=	>
 	77<r   c                 ,  ^ / m " U4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5        U R                  T/ SQ5        U R                  [        R                  R                  / 5        g )Nc                   ,   > \ rS rSr\U 4S j5       rSrg)JTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.Modulei  c                  ^   > T R                  S5        [        R                  " [        T 5        g r?  r8   r
   r  r;   r   s   r   r!  VTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.Module.setUpModule      .))'8<r   r   N)r   r   r   r   r*  r!  r    r   s   r   r  rj    s    = =r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)PTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTesti  c                 (   > TR                  S5        g r  ro   r'  s    r   r  [TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.setUpClass  r/  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   \TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  ^TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.tearDownClass  r)  r   r   Nr*  r   s   r   rj   rp    r4  r   rj   )r!  r  r   r&  r4   re  )rA   r  rj   r9   s      @r   (test_run_module_cleanUp_without_teardown:TestModuleCleanUp.test_run_module_cleanUp_without_teardown  sw    	=V 	=	18,, 	1 #+ &H $E 	F77<r   c                   ^ / m " U4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ S	Q5        U R                  [        R                  R                  / 5        g )
Nc                   B   > \ rS rSr\U 4S j5       r\U 4S j5       rSrg)QTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Modulei*  c                  ^   > T R                  S5        [        R                  " [        T 5        g r?  rl  r   s   r   r!  ]TestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Module.setUpModule+  rn  r   c                  <   > T R                  S5        [        S5      e)Nr&  r6   r7   r   s   r   r&  `TestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Module.tearDownModule/  s     01!,//r   r   Nr)  r   s   r   r  r{  *  s)    = = 0 0r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)WTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTesti4  c                 (   > TR                  S5        g r  ro   r'  s    r   r  bTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.setUpClass5  r/  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   cTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.testNothing8  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  eTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClass:  r)  r   r   Nr*  r   s   r   rj   r  4  r4  r   rj   r   rn   r  r  r5  r6  rA   r  rj   r   r9   s       @r   /test_run_module_cleanUp_when_teardown_exceptionATestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception(  s    	0V 	0	18,, 	1 #+ &H,'q)!,779"=+,L9	; $4 	5 	77<r   c                   ^^ / mSm " UU4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        R                  R                  U5      nUR                  5         U R                  T/ SQ5        U R                  [        R                  R                  / 5        / mSm[        R                  R                  U5      nU R                  [        5       nUR                  5         S S S 5        U R                  [        WR                  5      S5        U R                  T/ S	Q5        U R                  [        R                  R                  / 5        g ! , (       d  f       Nr= f)
NFc                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)DTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.ModuleiK  c                  \   > TR                  S5        [        R                  " [        TT S9  g Nr!  rD  rl  r,  s   r   r!  PTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.Module.setUpModuleL  !    .))'8FKr   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  STestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.Module.tearDownModuleP  r(  r   r   Nr)  r,  s   r   r  r  K  s+    L L 2 2r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)JTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTestiT  c                 (   > TR                  S5        g r  ro   r'  s    r   r  UTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.setUpClassU  r/  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   VTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.testNothingX  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  XTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.tearDownClassZ  r)  r   r   Nr*  r   s   r   rj   r  T  r4  r   rj   r5  Tr6   )r!  r  r   r&  r&  r5   )r  r
   r   r   r7  r8  r'   r(   r   r   r.   r   rL  r   rM  rN  rA   r  rj   r-   r   r:   r9   s        @@r   "test_debug_module_executes_cleanUp4TestModuleCleanUp.test_debug_module_executes_cleanUpH  s)   	2 	2V 	2	18,, 	1 #+ &H**@@N<	= 	77<**@@N{+rKKM ,R\\*L9 $V 	W77< ,+s   5E22
F c                 L  ^^ / mSm " UU4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        R                  R                  U5      nU R                  [        5       nUR                  5         S S S 5        U R                  [        WR                  5      S5        U R                  T/ SQ5        U R                  [        R                  R                   5        [        R                  R                   R#                  5         / mSm[        R                  R                  U5      nU R                  [        5       nUR                  5         S S S 5        U R                  [        UR                  5      S5        U R                  T/ SQ5        U R                  [        R                  R                   5        [        R                  R                   R#                  5         g ! , (       d  f       GNu= f! , (       d  f       N= f)	NFc                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)STestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Moduleit  c                  \   > TR                  S5        [        R                  " [        TT S9  g r  rl  r,  s   r   r!  _TestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Module.setUpModuleu  r  r   c                  <   > T R                  S5        [        S5      e)Nr&  TearDownModuleExcr7   r   s   r   r&  bTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Module.tearDownModuley  s     01!"566r   r   Nr)  r,  s   r   r  r  t  s+    L L 7 7r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)YTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTesti~  c                 (   > TR                  S5        g r  ro   r'  s    r   r  dTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.setUpClass  r/  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   eTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  gTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClass  r)  r   r   Nr*  r   s   r   rj   r  ~  r4  r   rj   r  )r!  r  r   r&  r&  T)r  r
   r   r   r7  r8  r'   r(   rL  r   r   r   rM  rN  r   r.   r   r\  r  s        @@r   1test_debug_module_cleanUp_when_teardown_exceptionCTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exceptionq  s   	7 	7V 	7	18,, 	1 #+ &H**@@N{+rKKM ,R\\*,?@ $G 	H667&&,,.**@@N{+rKKM ,R\\*,?@ $G 	H667&&,,.# ,+ ,+s   HH
H
H#c                   ^ ^^ / mU4S jm " UU 4S jS[         R                  5      nT R                  [        5         UR	                  5         S S S 5        T R                  [        5         [         R                  R                  U" 5       TS9  S S S 5        [        U5        T R                  TSSSS.4/5        g ! , (       d  f       Ns= f! , (       d  f       NC= f)	Nc                  *   > TR                  X45        g r	   ro   rp   s     r   r;   BTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.cleanup  r  r   c                   4   > \ rS rSr\U U4S j5       rS rSrg)GTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTesti  c                    > U R                  TSSSSS9  TR                  [        5         U R                  TSS9  S S S 5        g ! , (       d  f       g = f)Nrn   rx   r{   r  r  r  r|   r  )r  rL  r   )r  r;   rA   s    r   r  RTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTest.setUpClass  sI    ##GQA1#E&&y1''g'F 211   A
Ac                     g r	   r   rF   s    r   rf   STestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTest.testNothing  rh   r   r   N)r   r   r   r   r+  r  rf   r    r  s   r   rj   r    s    G Gr   rj   )r  r  r  r{   r  r  )r
   r   rL  r   r  r   r2   r   rA   rj   r;   rs   s   ` @@r   test_addClassCleanup_arg_errors1TestModuleCleanUp.test_addClassCleanup_arg_errors  s    	,	 	8,, 	 y)((* *y)((\^g(N *!!#<=>	@ *)))s   B<,$C<
C

Cc                   ^ ^^ / mU4S jm " UU 4S jS[         R                  5      nT R                  [        5         U" 5       R	                  5         S S S 5        T R                  [        5         [         R                  R	                  U" 5       TS9  S S S 5        [        U5        T R                  TSSSS.4/5        g ! , (       d  f       Ns= f! , (       d  f       NC= f)	Nc                  *   > TR                  X45        g r	   ro   rp   s     r   r;   =TestModuleCleanUp.test_addCleanup_arg_errors.<locals>.cleanup  r  r   c                   *   > \ rS rSrU U4S jrS rSrg)BTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTesti  c                    > U R                  TSSSSS9  TR                  [        5         U R                  TSS9  S S S 5        g ! , (       d  f       g = f)Nrn   rx   r{   r  r  rA   r|   r  )r   rL  r   )self2r;   rA   s    r   r   HTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTest.setUp  sI      !Q C&&y1$$g7$C 211r  c                     g r	   r   rF   s    r   rf   NTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTest.testNothing  rh   r   r   N)r   r   r   r   r   rf   r    r  s   r   rj   r    s    Dr   rj   )rA   r  r  r{   r  r  )r
   r   rL  r   r   r2   r   r  s   ` @@r   test_addCleanup_arg_errors,TestModuleCleanUp.test_addCleanup_arg_errors  s    	,	 	8,, 	 y)N%%' *y)((lnw(O *!1#=>?	A *)))s   C1$C
C
C c                 L  ^ / m " U4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ S	Q5        g )
Nc                   B   > \ rS rSr\U 4S j5       r\U 4S j5       rSrg)ETestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Modulei  c                  ^   > T R                  S5        [        R                  " [        T 5        g r?  rl  r   s   r   r!  QTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Module.setUpModule  rn  r   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  TTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Module.tearDownModule  r(  r   r   Nr)  r   s   r   r  r    )    = = 2 2r   r  c                   N   > \ rS rSr\U 4S j5       rU 4S jr\U 4S j5       rSrg)KTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTesti  c                 R   > TR                  S5        U R                  [        TSS9  g r  rE  r'  s    r   r  VTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.setUpClass  r  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   WTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  YTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.tearDownClass  r)  r   r   Nr*  r   s   r   rj   r    s.    D D(1 1r   rj   r   rn   r  r  )r!  r  r   r&  r5   r&  r4   r  r
   r   r   r7  r8  r2   r   r   r  r   r  s       @r   #test_with_errors_in_addClassCleanup5TestModuleCleanUp.test_with_errors_in_addClassCleanup  s    	2V 	2		18,, 		1 #+ &H,'q)!,779"=+,L9	;K	Lr   c                 L  ^ / m " U4S jS[         5      n " U4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  T/ S	Q5        g )
Nc                   B   > \ rS rSr\U 4S j5       r\U 4S j5       rSrg)@TestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Modulei  c                  ^   > T R                  S5        [        R                  " [        T 5        g r?  rl  r   s   r   r!  LTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Module.setUpModule  rn  r   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  OTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Module.tearDownModule  r(  r   r   Nr)  r   s   r   r  r    r  r   r  c                   :   > \ rS rSrU 4S jrU 4S jrU 4S jrSrg)FTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTesti  c                 R   > TR                  S5        U R                  [        TSS9  g rx  ry  r   s    r   r   LTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.setUp  r{  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   RTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.testNothing  r#  r   c                 (   > TR                  S5        g r   ro   r   s    r   r   OTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.tearDown  r   r   r   Nr   r   s   r   rj   r    s    @(, ,r   rj   r   rn   r  r  )r!  r   r   r   r5   r&  r4   r  r  s       @r   test_with_errors_in_addCleanup0TestModuleCleanUp.test_with_errors_in_addCleanup  s    	2V 	2	,8,, 	, #+ &H,'q)!,779"=+,L9	;K	Lr   c                   ^^^^ / mSmSmSm " UU4S jS[         5      n " UUU4S jS[        R                  5      nSUl        U[        R
                  S'   [        U5      nU R                  UR                  S   S   R                  5       S   [         S	35        U R                  T/ S
Q5        / mSmSmSm[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  UR                  S   S   R                  5       S   [         S	35        U R                  TSS/5        / mSmSmSm[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  UR                  S   S   R                  5       S   [         S	35        U R                  T/ SQ5        / mSmSmSm[        U5      nU R                  UR                  S   S   R                  5       S   [         S35        U R                  UR                  S   S   R                  5       S   [         S	35        U R                  T/ SQ5        g )NFc                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)QTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Modulei  c                     > TR                  S5        [        R                  " [        TSS9  T (       a  [	        S5      eg )Nr!  TrD  	ModuleExcr"  module_blow_upr9   s   r   r!  ]TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Module.setUpModule  s4    .))'8DI!%k22 "r   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  `TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Module.tearDownModule  r(  r   r   Nr)  r  s   r   r  r    s)    3 3
 2 2r   r  c                   ^   > \ rS rSr\U U4S j5       rUU4S jrU4S jr\U4S j5       rSr	g)WTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTesti  c                 L   > TR                  S5        T(       a  [        S5      eg )Nr  r  r7   r  s    r   r  bTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.setUpClass  s"    - %j11 !r   c                 L   > TR                  S5        T(       a  [        S5      eg r  r7   r  s    r   r   ]TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.setUp  r  r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   cTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.testNothing"  r#  r   c                 (   > TR                  S5        g r%  ro   r'  s    r   r&  eTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.tearDownClass$  r)  r   r   Nr  r  s   r   rj   r    s1    2 23(1 1r   rj   r   rn   r  r  )r!  r  r   r   r&  r&  r5   Tz: ModuleExcr!  r5   r  )r!  r  r&  r5   r  )r!  r  r   r&  r&  r5   r  )rA   r  rj   r   r  r  r  r9   s       @@@@r   /test_with_errors_in_addModuleCleanup_and_setUpsATestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps  s   		2 		2V 		2	1 	18,, 	1  #+ &H,'q)!,779"=+,L9	;)	*
 ,'q)!,779"=+,K8	:q)!,779"=+,L9	;M=#AB,'q)!,779"=+,J7	9q)!,779"=+,L9	; $E 	F ,'q)!,779"=+,K8	:q)!,779"=+,L9	; $3 	4r   c                 N  ^^^^ / mU4S jmU4S jmU4S jm " UU4S jS[         5      n " UU4S jS[        R                  5      n " UU4S jS	[        R                  5      nSUl        SUl        U[        R
                  S'   [        X#5        U R                  T/ S
Q5        g )Nc                  (   > T R                  S5        g r   ro   r   s   r   rt   MTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup1Y  r   r   c                  (   > T R                  S5        g r   ro   r   s   r   ry   MTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup2\  r   r   c                  (   > T R                  S5        g r   ro   r   s   r   r   MTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup3_  r   r   c                   D   > \ rS rSr\U U4S j5       r\U4S j5       rSrg)KTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Moduleib  c                  T   > TR                  S5        [        R                  " T 5        g r?  )r8   r
   r  rt   r9   s   r   r!  WTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Module.setUpModulec  s    .))(3r   c                  (   > T R                  S5        g r%  ro   r   s   r   r&  ZTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Module.tearDownModuleg  r(  r   r   Nr)  r  s   r   r  r  b  s)    4 4 2 2r   r  c                   <   > \ rS rSrU U4S jrU4S jrU4S jrSrg)QTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTestik  c                 J   > TR                  S5        U R                  T5        g r   r   )rA   ry   r9   s    r   r   WTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.setUpl  r   r   c                 (   > TR                  S5        g r   ro   r   s    r   rf   ]TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.testNothingo  r#  r   c                 (   > TR                  S5        g r   ro   r   s    r   r   ZTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.tearDownq  r   r   r   Nr   )ry   r9   s   r   rj   r  k  s    *(, ,r   rj   c                   <   > \ rS rSrU U4S jrU4S jrU4S jrSrg)VTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTestit  c                 J   > TR                  S5        U R                  T5        g )NsetUp2r   r   s    r   r   \TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.setUpu  s    ))r   c                 (   > TR                  S5        g r]  ro   r   s    r   rf   bTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.testNothingx  r`  r   c                 (   > TR                  S5        g )N	tearDown2ro   r   s    r   r   _TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.tearDownz  s    ,r   r   Nr   )r   r9   s   r   OtherTestableTestr  t  s    *)- -r   r&  )r!  r   r   r   ry   r  r^  r$  r   r&  rt   )r  r
   r   r   r7  r8  r2   r   )rA   r  rj   r&  rt   ry   r   r9   s       @@@@r   )test_module_cleanUp_with_multiple_classes;TestModuleCleanUp.test_module_cleanUp_with_multiple_classesW  s    	(	(	(	2 	2V 	2	, 	,8,, 	,	- 	- 1 1 	- #+'/$ &H1D	Er   c                 T   / n[         R                  " UR                  S5        [        US5      nU R	                  [         R
                  " U5      S5        [         R                  " UR                  S5        [         R                  R                  5         U R	                  U/ SQ5        g )Nrt   r   ry   r   )r
   r  r8   r=   r   enterModuleContextr.   r  )rA   rs   r   s      r   test_enterModuleContext)TestModuleCleanUp.test_enterModuleContext  sw    !!(//:>Hb!44R8"=!!(//:>&&(#LMr   c                 ^    " S S[         R                  5      nU R                  [        S5         [         R                  " [        5       5        S S S 5        U R                  [        S5         [         R                  " [        5       5        S S S 5        U R                  [        S5         [         R                  " [        5       5        S S S 5        U R                  [         R                  R                  / 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f)Nc                       \ rS rSrS rSrg)JTestModuleCleanUp.test_enterModuleContext_arg_errors.<locals>.TestableTesti  c                     g r	   r   rF   s    r   rf   VTestModuleCleanUp.test_enterModuleContext_arg_errors.<locals>.TestableTest.testNothing  rh   r   r   Nri   r   r   r   rj   r/    rk   r   rj   r   )r
   r   r   r   r*  rP   rS   rZ   r   r.   r   r  s     r   "test_enterModuleContext_arg_errors4TestModuleCleanUp.test_enterModuleContext_arg_errors  s    	8,, 	 ##I/DE''(9(;< F##I/DE''
5 F##I/DE''	4 F 	77< FEEEEEs#   C<-D*D<
D

D
D,r   N)r   r   r   r   r  r  r  r9  rf  rw  r  r  r  r  r  r  r  r  r'  r+  r2  r    r   r   r   r  r  ^  sg    =0=,<%=NI=V=2=@'=R+/Z@,A*LBL<M4^-E^	N=r   r  c                       \ 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\R                   \R"                  " 5       S 5       5       rS rS rS rSrg)Test_TextTestRunneri  c                     [         R                  R                  S5      U l        U R                  (       a  [         R                  S	 g g NPYTHONWARNINGS)osenvirongetpythonwarningsrF   s    r   r   Test_TextTestRunner.setUp  s5     !jjnn-=>

+, r   c                 b    U R                   (       a  U R                   [        R                  S'   g g r7  )r<  r9  r:  rF   s    r   r   Test_TextTestRunner.tearDown  s%    +/+>+>BJJ'( r   c                     [         R                  " 5       nU R                  UR                  5        U R                  UR                  5        U R                  UR                  S5        U R                  UR                  S 5        U R                  UR                  5        U R                  UR                  [         R                  5        U R                  UR                  5        U R                  UR                  5        g rm   )r
   r   r   failfastbufferr   	verbositywarningsr   descriptionsr   TextTestResult	tb_localsassertIsNone	durations)rA   r0   s     r   	test_initTest_TextTestRunner.test_init  s    ((*)'))1-$/++,++X-D-DE))*&**+r   c                    ^  " U4S jS[         R                  5      m " S S[         R                  T5      nU" S S S5        g )Nc                   ,   >^  \ rS rSrUU 4S jrSrU =r$ )>Test_TextTestRunner.test_multiple_inheritance.<locals>.AResulti  c                 &   > [         TU ]  XU5        g r	   )superrB   )rA   r   rE  rC  AResult	__class__s       r   rB   GTest_TextTestRunner.test_multiple_inheritance.<locals>.AResult.__init__  s    gt-fINr   r   )r   r   r   r   rB   r    __classcell__)rR  rQ  s   @r   rQ  rN    s    O Or   rQ  c                       \ rS rSrSrg)BTest_TextTestRunner.test_multiple_inheritance.<locals>.ATextResulti  r   Nr   r   r   r   ATextResultrV    r  r   rW  rn   )r
   r   rF  )rA   rW  rQ  s     @r   test_multiple_inheritance-Test_TextTestRunner.test_multiple_inheritance  s9    	Oh)) 	O	(117 	
 	D$"r   c                 d  ^  " S S[         R                  5      n[         R                  " 5       m[         R                  " [        R
                  " 5       SSS9nU4S jUl        UR                  U" S5      5        U R                  TR                  5        U R                  TR                  5        g )Nc                       \ rS rSrS rSrg)7Test_TextTestRunner.testBufferAndFailfast.<locals>.Testi  c                     g r	   r   rF   s    r   testFoo?Test_TextTestRunner.testBufferAndFailfast.<locals>.Test.testFoo  rh   r   r   Nr   r   r   r   r^  r    r   r   r   Testr\    rk   r   ra  T)r   rA  rB  c                     > T $ r	   r   r   s   r   <lambda>;Test_TextTestRunner.testBufferAndFailfast.<locals>.<lambda>      Vr   r^  )r
   r   r   r   r   r   _makeResultr+   r   rA  rB  )rA   ra  r0   r   s      @r   testBufferAndFailfast)Test_TextTestRunner.testBufferAndFailfast  s|    	8$$ 	 $$&((046 ,

4	?#(&r   c                     [         R                  " [        R                  " 5       SS9nUR	                  [         R
                  " 5       5      nU R                  SUR                  5        g )NT)r   rG  )r
   r   r   r   r+   r&   r   rG  )rA   r0   r   s      r   test_localsTest_TextTestRunner.test_locals  sG    ((NH..01v//0r   c                   ^ ^^  " S S[         R                  5      n[         R                  R                  mU4S jnT R	                  U5        [         R
                  " 5       m[         R                  " [        R                  " 5       S9nU4S jUl	        ST l
        UU 4S jnU[         R                  l        UR                  [         R                  " 5       5        T R                  T R                  S5        g )	Nc                       \ rS rSrS rSrg);Test_TextTestRunner.testRunnerRegistersResult.<locals>.Testi  c                     g r	   r   rF   s    r   r^  CTest_TextTestRunner.testRunnerRegistersResult.<locals>.Test.testFoo  rh   r   r   Nr`  r   r   r   ra  rn    rk   r   ra  c                  0   > T [         R                  l        g r	   )r
   r0   registerResult)originalRegisterResults   r   r;   >Test_TextTestRunner.testRunnerRegistersResult.<locals>.cleanup  s    -CHOO*r   )r   c                     > T $ r	   r   r   s   r   rc  ?Test_TextTestRunner.testRunnerRegistersResult.<locals>.<lambda>  re  r   r   c                 T   > T=R                   S-  sl         TR                  U T5        g rm   )wasRegisteredr   )
thisResultr   rA   s    r   fakeRegisterResultITest_TextTestRunner.testRunnerRegistersResult.<locals>.fakeRegisterResult  s$    !#Z0r   rn   )r
   r   r0   rr  r   r   r   r   r   rf  rx  r+   r&   r   )rA   ra  r;   r0   rz  rs  r   s   `    @@r   testRunnerRegistersResult-Test_TextTestRunner.testRunnerRegistersResult  s    	8$$ 	 "*!?!?	D $$&((>+	1 *<&

8%%'(++Q/r   c                    ^^  " S S[         5      m " UU4S jS[        R                  5      mT" 5       nUR                  [        R                  " 5       5        g )Nc                       \ rS rSrSrS rSrg)bTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.OldTextResulti  r$   c                     g r	   r   rF   s    r   printErrorsnTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.OldTextResult.printErrors  rh   r   r   Nr   r   r   r   
separator2r  r    r   r   r   OldTextResultr        Jr   r  c                   8   >^  \ rS rSrUU 4S jrU4S jrSrU =r$ )[Test_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runneri  c                 J   > [         TU ]  [        R                  " 5       5        g r	   )rP  rB   r   r   )rA   RunnerrR  s    r   rB   dTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runner.__init__  s    fd,R[[];r   c                    > T" 5       $ r	   r   )rA   r  s    r   rf  gTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runner._makeResult  s    $&r   r   r   r   r   r   rB   rf  r    rT  )rR  r  r  s   @r   r  r    s    <' 'r   r  )r   r
   r   r+   r&   )rA   r0   r  r  s     @@r   7test_works_with_result_without_startTestRun_stopTestRunKTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun  sE    	? 	
	' 	'X,, 	' 

8%%'(r   c                    ^^  " S S[         5      m " UU4S jS[        R                  5      m/ nT" U5      nUR                  [        R                  " 5       5        SS/nU R                  X5        g )Nc                       \ rS rSrSrS rSrg)STest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingTextResulti  r$   c                     g r	   r   rF   s    r   r  _Test_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingTextResult.printErrors  rh   r   r   Nr  r   r   r   LoggingTextResultr    r  r   r  c                   8   >^  \ rS rSrUU 4S jrU4S jrSrU =r$ )OTest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunneri  c                 V   > [         TU ]  [        R                  " 5       5        Xl        g r	   )rP  rB   r   r   _events)rA   eventsLoggingRunnerrR  s     r   rB   XTest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunner.__init__  s    mT3BKKMB%r   c                 (   > T" U R                   5      $ r	   r  )rA   r  s    r   rf  [Test_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunner._makeResult  s    (66r   r  r  )rR  r  r  s   @r   r  r    s    &7 7r   r  startTestRunstopTestRun)r   r
   r   r+   r&   r   )rA   r  r0   expectedr  r  s       @@r   $test_startTestRun_stopTestRun_called8Test_TextTestRunner.test_startTestRun_stopTestRun_called   sd    	 	
	7 	7H33 	7 v&

8%%'("M2*r   c                 l   [         R                  " S5      n[        R                  " U5      n[	        S[
        R                  S-   5       Hg  n[
        R                  " X#5      n[
        R                  " U5      nU R                  UR                  R                  5       UR                  5       5        Mi     g )Nr   rx   rn   )r   r   r
   r   rangepickleHIGHEST_PROTOCOLdumpsloadsr   r   r  )rA   r   r0   protocolsobjs         r   test_pickle_unpickle(Test_TextTestRunner.test_pickle_unpickle  s}     U#((0a!8!81!<=HV.A,,q/CSZZ002FOO4EF	 >r   c                    S n[        5       n[        5       n[        5       n[        R                  " X#UUS9nU R                  UR                  U5        UR
                  X44nU R                  UR                  5       U5        g )Nc                      U $ r	   r   )rq   s    r   MockResultClass=Test_TextTestRunner.test_resultclass.<locals>.MockResultClass   s    Kr   )r   )r  r
   r   r   r   r   rf  )rA   r  STREAMDESCRIPTIONS	VERBOSITYr0   expectedresults          r   test_resultclass$Test_TextTestRunner.test_resultclass  sq    	xH	((y5DF++_= --A++-~>r   c                    S n[        [        R                  [        R                  [        R                  R                  [        5      S9n[        R                  " [        R                  SS/40 UD6nU   U" U5      u  pES S S 5        U R                  SW5        U R                  [        W5      S5        S H$  nU R                  UR                  U5      S5        M&     S	 H$  nU R                  UR                  U5      S
5        M&     [        R                  SS/[        R                  SSS/[        R                  SS/4nU H\  n[        R                  " U40 UD6nU   U" U5      u  pES S S 5        U R                  SU5        U R                  [        U5      S5        M^     [        R                  " [        R                  SS/40 UD6nU   U" U5      u  pES S S 5        U R                  SU5        U R                  [        U5      S5        S H$  nU R                  UR                  U5      S5        M&     g ! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f)Nc                 h    U R                  5        Vs/ s H  oR                  5       PM     sn$ s  snf r	   )communicater  )pbs     r   get_parse_out_err<Test_TextTestRunner.test_warnings.<locals>.get_parse_out_err5  s$    ,-MMO<OqLLNO<<<s   /)stdoutstderrcwdz-Ez_test_warnings.pys   OK
   )   dw   iw   uwr{   )   rwrn   ignorez-Waz-Wir   always   )r  r  r  r  )r   
subprocessPIPEr9  pathdirname__file__Popenr7  
executabler   r   rj  count)	rA   r  optsr  outerrmsg	args_listrq   s	            r   test_warnings!Test_TextTestRunner.test_warnings,  s   	=:??:??13 cnnd4GHQDQ(+HC eS!S2&(CSYYs^Q/ )CSYYs^Q/ 
 ^^0(;^^U$7B^^U$78
	 D  ..A,Q/ MM%%SXq)  cnn.A8L %#%(+HC eS!S2&/CSYYs^Q/ 0I Q,  Qs$   6H:!II:
I	
I	
I+c                    [         R                  n[        R                  " 5       nU[         l         [        R
                  " 5       nU R                  UR                  R                  UL 5        U[         l        g ! U[         l        f = fr	   )r7  r  r   r   r
   r   r   r   )rA   
old_stderrfr0   s       r   %testStdErrLookedUpAtInstantiationTime9Test_TextTestRunner.testStdErrLookedUpAtInstantiationTimec  sZ    ZZ
KKM
	$,,.FOOFMM00A56#CJCJs   <A: :Bc                     [         R                  " 5       n[        R                  " U5      nU R	                  UR
                  R
                  UL 5        g r	   )r   r   r
   r   r   r   )rA   r  r0   s      r   testSpecifiedStreamUsed+Test_TextTestRunner.testSpecifiedStreamUsedn  s8    KKM((+,,12r   c                   ^  SS.U 4S jjn " S S[         R                  5      nU" U" S5      SS9   " S S[         R                  5      nU" U" S5      SS9   " S S[         R                  5      nU" U" S5      SS9   " S	 S[         R                  5      nU" U" S5      SS9   " S
 S[         R                  5      nU" U" S5      SS9  g )NT)expect_durationsc                  > [        5       n[        R                  " USSS9nUR                  U 5      nTR	                  UR
                  S5        UR                  5         UR                  5       nSnU(       aI  TR	                  [        UR                  5      S5        TR                  SU5        TR                  XV5        g TR	                  [        UR                  5      S5        TR                  SU5        TR                  XV5        g )N   rx   )r   rI  rC  z\n\d+.\d\d\dsrn   zSlowest test durationsr   )r   r
   r   r+   r   rI  flushr  rj  collectedDurationsr   assertRegexassertNotInassertNotRegex)r   r  r   r0   r   textregexrA   s          r   r+   /Test_TextTestRunner.test_durations.<locals>.runu  s    #%F,,FaSTUFZZ%FV--q1LLN??$D$E  V%>%>!?C6=  -  V%>%>!?C  !94@##D0r   c                       \ rS rSrS rSrg)/Test_TextTestRunner.test_durations.<locals>.Fooi  c                     g r	   r   rF   s    r   test_16Test_TextTestRunner.test_durations.<locals>.Foo.test_1  rh   r   r   Nr   r   r   r   r  r    r   r   r   Foor    rk   r   r  r  c                       \ rS rSrS rSrg)r  i  c                 (    U R                  SS5        g )Nr   rn   )r   rF   s    r   r  r    s      A&r   r   Nr  r   r   r   r  r    s    'r   c                       \ rS rSrS rSrg)r  i  c                     SS-    g Nrn   r   r   rF   s    r   r  r    	    Ar   r   Nr  r   r   r   r  r    s    r   c                   $    \ rS rSrS r\rS rSrg)r  i  c                     SS-    g r  r   rF   s    r   r   5Test_TextTestRunner.test_durations.<locals>.Foo.setUp  r  r   c                     g r	   r   rF   s    r   r  r    rh   r   r   N)r   r   r   r   r   r   r  r    r   r   r   r  r    s    Hr   c                   D    \ rS rSr\R
                  " S5      S 5       rSrg)r  i  reasonc                     g r	   r   rF   s    r   r  r    s    r   r   N)r   r   r   r   r
   skipr  r    r   r   r   r  r    s    ]]8$ %r   F)r
   r   )rA   r+   r  s   `  r   test_durations"Test_TextTestRunner.test_durationst  s    *. 	1 	1$	(## 	 	CMD1	'(## 	' 	CMD1	(## 	 	CMD1	(## 	 	CMD1	(## 	
 	CME2r   )r<  rx  N)r   r   r   r   r   r   rJ  rX  rg  rj  r|  r  r  r  r  r   r   requires_subprocessr  r  r  r  r    r   r   r   r5  r5    su    -?
	,
#'1
0.) +(	G?     "30 # !30j	$383r   r5  )F)!r   r9  r7  r  r  r   r   r
   unittest.caser   test.test_unittest.supportr   r   r   r   r   	Exceptionr   r   r   r2   r;   r=   rP   rS   rZ   r   r_   force_not_colorized_test_classr   r  r5  mainr   r   r   <module>r     s&   	 	 
     " !9
	) 	 (0:'=X^2FkR!"(
% 
%	 	  
h-(## h-V 	'']Dx(( ]D (]D@ 	''~=)) ~= (~=BL3(++ L3` zMMO r   