HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/unittest/test/__pycache__/test_runner.cpython-311.pyc
�

��Vc'����ddlZddlZddlZddlZddlZddlmZddlZddlm	Z	ddl
mZmZd�Z
d�Zd�Zdd	�ZGd
�d��ZGd�d
��ZGd�d��ZGd�d��ZGd�dej��ZGd�dej��ZGd�dej��ZGd�dej��Zedkrej��dSdS)�N)�support)�_Outcome)�
LoggingResult�#ResultWithNoStartTestRunStopTestRunc�(�tj��S�N)�unittest�
TestResult)�_s �-D:\Python311\Lib\unittest\test\test_runner.py�
resultFactoryr
s���� � � �c�Z�tjttj�����S)N)�resultclass�stream)r	�TextTestRunnerr
�io�StringIO�rr�	getRunnerrs'���"�}�*,�+�-�-�9�9�9�9rc���tj��}|D]6}tj�|��}|�|���7t��}tj��}|�|��|�tj����|�tj����|�|��Sr)r	�	TestSuite�defaultTestLoader�loadTestsFromTestCase�addTestsr�addTest�run)�cases�suite�case�tests�runner�	realSuites      r�runTestsr$s����� � �E������*�@�@��F�F��
���u�����
�[�[�F��"�$�$�I�
���e����	�M�M�(�$�&�&�'�'�'�
���h�(�*�*�+�+�+��:�:�i� � � rFc�|�|s|�d��dS|�d��td���)N�cleanup_good�cleanup_exc�
CleanUpExc��append�	Exception)�ordering�blowUps  r�cleanupr.)sB���&�����'�'�'�'�'����
�&�&�&���%�%�%rc�"�eZdZdd�Zd�Zd�ZdS)�TestCMNc�"�||_||_dSr)r,�enter_result)�selfr,r2s   r�__init__zTestCM.__init__2s�� ��
�(����rc�D�|j�d��|jS)N�enter)r,r*r2�r3s r�	__enter__zTestCM.__enter__6s!���
���W�%�%�%�� � rc�:�|j�d��dS)N�exit)r,r*�r3�exc_infos  r�__exit__zTestCM.__exit__:s���
���V�$�$�$�$�$rr)�__name__�
__module__�__qualname__r4r8r=rrrr0r01sF������)�)�)�)�!�!�!�%�%�%�%�%rr0c��eZdZdS)�LacksEnterAndExitN�r>r?r@rrrrBrB>s�������DrrBc��eZdZd�ZdS)�
LacksEnterc��dSrrr;s  rr=zLacksEnter.__exit__A����rN)r>r?r@r=rrrrErE@�#������
�
�
�
�
rrEc��eZdZd�ZdS)�	LacksExitc��dSrrr7s rr8zLacksExit.__enter__DrGrN)r>r?r@r8rrrrJrJCrHrrJc�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestCleanUpc
���Gd�dtj��}|d��}|�|jg��g��fd�}�fd�}|�|dddd	d
���|�|��|�|j|dtd	d
���f|d
ifg��|�|�����|��dd
ifddtd	d
���fg��dS)Nc��eZdZd�ZdS)�-TestCleanUp.testCleanUp.<locals>.TestableTestc��dSrrr7s r�testNothingz9TestCleanUp.testCleanUp.<locals>.TestableTest.testNothingK����rN�r>r?r@rRrrr�TestableTestrPJ�#������
�
�
�
�
rrUrRc�8����d||f��dS�N��r*��args�kwargs�cleanupss  �r�cleanup1z)TestCleanUp.testCleanUp.<locals>.cleanup1S�"����O�O�Q��f�-�.�.�.�.�.rc�8����d||f��dS)N�rZr[s  �r�cleanup2z)TestCleanUp.testCleanUp.<locals>.cleanup2Vr`rrYrb��hello�goodbye��four�five�rYrbrdr)r	�TestCase�assertEqual�	_cleanups�
addCleanup�dict�
assertTrue�
doCleanups)r3rU�testr_rcr^s     @r�testCleanUpzTestCleanUp.testCleanUpIs^���	�	�	�	�	�8�,�	�	�	��|�M�*�*��������,�,�,���	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	
����!�Q���i��H�H�H�����!�!�!������#�Y��'�	�0R�0R�0R�S�#�R��,�.�	/�	/�	/�	
������)�)�*�*�*�����Q��B�K�!�Y��'�Xa�@b�@b�@b�1c�#d�e�e�e�e�erc���
��Gd�dtj��}|d��}tj��}t|���x}|_td���
td����
fd�}�fd�}|�|��|�|��|�|�����|�|j	��|j
\\}}\}}	|�d	|	��|�d
|	��|�d|	��|�d|��|�d
|��|�d|��dS)Nc��eZdZd�ZdS)�7TestCleanUp.testCleanUpWithErrors.<locals>.TestableTestc��dSrrr7s rrRzCTestCleanUp.testCleanUpWithErrors.<locals>.TestableTest.testNothingerSrNrTrrrrUrvdrVrrUrR��result�foo�barc�����rr)r(s�rr_z3TestCleanUp.testCleanUpWithErrors.<locals>.cleanup1ns	����rc�����rr)�exc2s�rrcz3TestCleanUp.testCleanUpWithErrors.<locals>.cleanup2qs����Jrzin cleanup1zraise CleanUpExczException: foozin cleanup2z
raise exc2zException: bar)r	rkr
r�_outcomer+rn�assertFalserq�success�errors�assertIn)r3rUrrry�outcomer_rcr�msg2�msg1r(r~s          @@r�testCleanUpWithErrorsz!TestCleanUp.testCleanUpWithErrorscs�����	�	�	�	�	�8�,�	�	�	��|�M�*�*���$�&�&��"*�&�"9�"9�"9�9��$�-��u�%�%�
������	�	�	�	�	�	�	�	�	�	�	
����!�!�!�����!�!�!�������*�*�+�+�+������)�)�)�%�}��	��D�9�A�t��
�
�m�T�*�*�*��
�
�(�$�/�/�/��
�
�&��-�-�-��
�
�m�T�*�*�*��
�
�l�D�)�)�)��
�
�&��-�-�-�-�-rc������d�g�G��fd�dtj��}|d����fd�}�fd�}��|����|�����fd�}tj��}||_��|�����gd���d	�g�|d�����|����|�����d
dg��dS)NFc�0��eZdZ��fd�Z�fd�Z�fd�ZdS)�2TestCleanUp.testCleanupInRun.<locals>.TestableTestc�T����d���rtd���dS)N�setUprzr))r3r-r,s ��rr�z8TestCleanUp.testCleanupInRun.<locals>.TestableTest.setUp�s5�������(�(�(��+�#�E�*�*�*�+�+rc�2����d��dS�NrrrZ�r3r,s �rrRz>TestCleanUp.testCleanupInRun.<locals>.TestableTest.testNothing���������'�'�'�'�'rc�2����d��dS�N�tearDownrZr�s �rr�z;TestCleanUp.testCleanupInRun.<locals>.TestableTest.tearDown��������
�+�+�+�+�+rN�r>r?r@r�rRr��r-r,s��rrUr��se�������
+�
+�
+�
+�
+�
+�

(�
(�
(�
(�
(�
,�
,�
,�
,�
,�
,�
,rrUrRc�2����d��dS�Nr_rZ�r,s�rr_z.TestCleanUp.testCleanupInRun.<locals>.cleanup1������O�O�J�'�'�'�'�'rc�2����d��dS�NrcrZr�s�rrcz.TestCleanUp.testCleanupInRun.<locals>.cleanup2�r�rc�^����|�����d��dS)Nr�)rlr*)�	some_testr,r3rrs ���rr�z-TestCleanUp.testCleanupInRun.<locals>.success�s1������Y��-�-�-��O�O�I�&�&�&�&�&r)r�rrr�rcr_r�Tr�r_)r	rkrnr
�
addSuccessrrl)	r3rUr_rcr�ryr-r,rrs	`     @@@r�testCleanupInRunzTestCleanUp.testCleanupInRun�s�����������
	,�
	,�
	,�
	,�
	,�
	,�
	,�
	,�8�,�
	,�
	,�
	,��|�M�*�*��	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�����!�!�!�����!�!�!�	'�	'�	'�	'�	'�	'�	'��$�&�&��#��������������$G�$G�$G�	H�	H�	H������|�M�*�*������!�!�!������������G�Z�#8�9�9�9�9�9rc�������g�G��fd�dtj��}|d������fd���fd������|��gd���dS)Nc�0��eZdZ��fd�Z�fd�Z�fd�ZdS)�CTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTestc�\����d��|����dS�Nr��r*rn)r3r_r,s ��rr�zITestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.setUp��-�������(�(�(�����)�)�)�)�)rc�2����d��dSr�rZr�s �rrRzOTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zLTestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.TestableTest.tearDown�r�rNr��r_r,s��rrUr��se�������
*�
*�
*�
*�
*�
*�
(�
(�
(�
(�
(�
,�
,�
,�
,�
,�
,�
,rrUrRc�\����d�������dSr�r�)rcr,rrs���rr_z?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup1�s-����O�O�J�'�'�'��O�O�H�%�%�%�%�%rc�2����d��dSr�rZr�s�rrcz?TestCleanUp.testTestCaseDebugExecutesCleanups.<locals>.cleanup2�r�r)r�rrr�r_rc)r	rk�debugrl)r3rUr_rcr,rrs  @@@@r�!testTestCaseDebugExecutesCleanupsz-TestCleanUp.testTestCaseDebugExecutesCleanups�s���������		,�		,�		,�		,�		,�		,�		,�		,�8�,�		,�		,�		,��|�M�*�*��	&�	&�	&�	&�	&�	&�	&�	(�	(�	(�	(�	(�	
�
�
��������#X�#X�#X�Y�Y�Y�Y�Yrc��Gd�dtj��}|d��}g}|�|jd��t	|d��}|�|�|��d��|�|jd��|�|�����|�|gd���dS)Nc��eZdZd�ZdS)�3TestCleanUp.test_enterContext.<locals>.TestableTestc��dSrrr7s rrRz?TestCleanUp.test_enterContext.<locals>.TestableTest.testNothing�rSrNrTrrrrUr��rVrrUrRr_�*rc�r6rcr:r_)	r	rkrnr*r0rl�enterContextrprq)r3rUrrr^�cms     r�test_enterContextzTestCleanUp.test_enterContext�s���	�	�	�	�	�8�,�	�	�	��|�M�*�*����������4�4�4�
�H�b�
!�
!������*�*�2�.�.��3�3�3�������4�4�4�������)�)�*�*�*�����#L�#L�#L�M�M�M�M�Mrc�z�Gd�dtj��}|d��}|�td��5|�t����ddd��n#1swxYwY|�td��5|�t
����ddd��n#1swxYwY|�td��5|�t����ddd��n#1swxYwY|�|j	g��dS)Nc��eZdZd�ZdS)�>TestCleanUp.test_enterContext_arg_errors.<locals>.TestableTestc��dSrrr7s rrRzJTestCleanUp.test_enterContext_arg_errors.<locals>.TestableTest.testNothing�rSrNrTrrrrUr��rVrrUrR�the context manager)
r	rk�assertRaisesRegex�	TypeErrorr�rBrErJrlrm)r3rUrrs   r�test_enterContext_arg_errorsz(TestCleanUp.test_enterContext_arg_errors�s���	�	�	�	�	�8�,�	�	�	��|�M�*�*��
�
#�
#�I�/D�
E�
E�	3�	3����/�1�1�2�2�2�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3�
�
#�
#�I�/D�
E�
E�	,�	,����j�l�l�+�+�+�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,����	,�	,�	,�	,�
�
#�
#�I�/D�
E�
E�	+�	+����i�k�k�*�*�*�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+�	
������,�,�,�,�,s5�"A-�-A1�4A1�"C�C�C�'"D�D�DN)	r>r?r@rsr�r�r�r�r�rrrrMrMHsx������f�f�f�4.�.�.�>):�):�):�VZ�Z�Z�4N�N�N� -�-�-�-�-rrMc�V�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
S)�TestClassCleanupc
����Gd�dtj��}|d��}|�|jg��g��fd�}�fd�}|�|dddd	d
���|�|��|�|j|dtd	d
���f|d
ifg��|���|��dd
ifddtd	d
���fg��dS)Nc��eZdZd�ZdS)�;TestClassCleanup.test_addClassCleanUp.<locals>.TestableTestc��dSrrr7s rrRzGTestClassCleanup.test_addClassCleanUp.<locals>.TestableTest.testNothing�rSrNrTrrrrUr��rVrrUrRc�8����d||f��dS�NrdrZ�r\r]�class_cleanupss  �r�class_cleanup1z=TestClassCleanup.test_addClassCleanUp.<locals>.class_cleanup1��$����!�!�1�d�F�"3�4�4�4�4�4rc�8����d||f��dS�N�rZr�s  �r�class_cleanup2z=TestClassCleanup.test_addClassCleanUp.<locals>.class_cleanup2�r�rrYrbrdrerfrgrjrr�)r	rkrl�_class_cleanups�addClassCleanupro�doClassCleanups)r3rUrrr�r�r�s     @r�test_addClassCleanUpz%TestClassCleanup.test_addClassCleanUp�s���	�	�	�	�	�8�,�	�	�	��|�M�*�*������-�r�2�2�2���	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	�$�$�^�Q��1�*1�	�	%�	C�	C�	C��$�$�^�4�4�4�����-�)�9��W�9�=�=�=�?�)�2�r�2�4�	5�	5�	5�
	�$�$�&�&�&�����1�b�"�+��9�*.�G�)�*L�*L�*L�8N�*O�	P�	P�	P�	P�	Prc�����g�d�G��fd�dtj��}t|��|��ddg��g�d�t|��|��gd���dS)NTc�P��eZdZe��fd���Z�fd�Ze�fd���ZdS)�=TestClassCleanup.test_run_class_cleanUp.<locals>.TestableTestc�����d��|�t����rt���dS�N�
setUpClass�r*r�r.r+��clsr-r,s ��rr�zHTestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.setUpClass	�G�������-�-�-��#�#�G�X�6�6�6��&�#�+�+�%�&�&rc�2����d��dSr�rZr�s �rrRzITestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.testNothingr�rc�2����d��dS�N�
tearDownClassrZ�r�r,s �rr�zKTestClassCleanup.test_run_class_cleanUp.<locals>.TestableTest.tearDownClass��������0�0�0�0�0rN�r>r?r@�classmethodr�rRr�r�s��rrUr�sy�������
�
&�
&�
&�
&�
&��[�
&�

(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUr�r&F�r�rrr�r&�r	rkr$rl�r3rUr-r,s  @@r�test_run_class_cleanUpz'TestClassCleanup.test_run_class_cleanUps���������	1�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�	���������L�.�#A�B�B�B��������������P�P�P�	R�	R�	R�	R�	Rrc�����g�d�G��fd�dtj��}t|��|��ddg��g�d�t|��|��gd���dS)NTc�\��eZdZe��fd���Z�fd�Zeed�����ZdS)�STestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTestc�����d��|�t����rt���dSr�r�r�s ��rr�z^TestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.setUpClass#r�rc�2����d��dSr�rZr�s �rrRz_TestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.testNothing)r�rc��t�r)�AttributeError�r�s rr�zaTestClassCleanup.test_run_class_cleanUp_without_tearDownClass.<locals>.TestableTest.tearDownClass+s
��%�$rN)r>r?r@r�r�rR�propertyr�r�s��rrUr�"sy�������
�
&�
&�
&�
&�
&��[�
&�

(�
(�
(�
(�
(�
�
�
%�
%��X��[�
%�
%�
%rrUr�r&F)r�rrr&r�r�s  @@r�,test_run_class_cleanUp_without_tearDownClassz=TestClassCleanup.test_run_class_cleanUp_without_tearDownClasss���������	%�	%�	%�	%�	%�	%�	%�	%�8�,�	%�	%�	%�	���������L�.�#A�B�B�B��������������?�?�?�	A�	A�	A�	A�	Arc�0���g�d�G��fd�dtj��}tj�|��}|���|��gd���g�d�tj�|��}|�t��5}|���ddd��n#1swxYwY|�t|j	��d��|��gd���dS)NFc�P��eZdZe��fd���Z�fd�Ze�fd���ZdS)�GTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTestc�l����d��|�t�����dS�Nr��r-�r*r�r.r�s ��rr�zRTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.setUpClass>�6�������-�-�-��#�#�G�X�f�#�E�E�E�E�Erc�2����d��dSr�rZr�s �rrRzSTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.testNothingBr�rc�2����d��dSr�rZr�s �rr�zUTestClassCleanup.test_debug_executes_classCleanUp.<locals>.TestableTest.tearDownClassDr�rNr�r�s��rrUr�=s�������
�
F�
F�
F�
F�
F��[�
F�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUr�Tr()r�rrr�r')
r	rkrrr�rl�assertRaisesr+�str�	exception�r3rUrr�r-r,s    @@r� test_debug_executes_classCleanUpz1TestClassCleanup.test_debug_executes_classCleanUp9s|��������		1�		1�		1�		1�		1�		1�		1�		1�8�,�		1�		1�		1��*�@�@��N�N��
���
�
�
�����P�P�P�	R�	R�	R������*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�L�9�9�9�����O�O�O�	Q�	Q�	Q�	Q�	Qs�*C�C�Cc����g�d�G��fd�dtj��}tj�|��}|�t
��5}|���ddd��n#1swxYwY|�t|j	��d��|��ddg��|�
|j��|j���g�d�tj�|��}|�t
��5}|���ddd��n#1swxYwY|�t|j	��d��|��ddg��|�
|j��|j���dS)NFc�L��eZdZe��fd���Z�fd�Zed���ZdS)�_TestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTestc�l����d��|�t�����dSr�r�r�s ��rr�zjTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.setUpClass[r�rc�2����d��dSr�rZr�s �rrRzkTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.testNothing_r�rc� �td���)N�TearDownClassExc�r+r�s rr�zmTestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClassas��� 2�3�3�3rNr�r�s��rrUrZsu�������
�
F�
F�
F�
F�
F��[�
F�
(�
(�
(�
(�
(�
�
4�
4��[�
4�
4�
4rrUr	r�rrT)
r	rkrrr�r+r�rlr�rrpr��clearrs    @@r�8test_debug_executes_classCleanUp_when_teardown_exceptionzITestClassCleanup.test_debug_executes_classCleanUp_when_teardown_exceptionVs:��������		4�		4�		4�		4�		4�		4�		4�		4�8�,�		4�		4�		4��*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�,>�?�?�?�����L�&�#9�:�:�:�����4�5�5�5��$�*�*�,�,�,������*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�,>�?�?�?�����L�&�#9�:�:�:�����4�5�5�5��$�*�*�,�,�,�,�,s$�A<�<B�B�7E�E�Ec�P�Gd�dtj��}d�}d�}|�|��|�|��|�t��5}|���|�|d��ddd��dS#1swxYwYdS)Nc��eZdZd�ZdS)�WTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.TestableTestc��dSrrr7s rrRzcTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.TestableTest.testNothingyrSrNrTrrrrUrxrVrrUc� �td���r�r
rrrr_zSTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.cleanup1|����J�'�'�'rc� �td���r�r
rrrrczSTestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUp.<locals>.cleanup2rrr_)r	rkr�r�r+r�rl)r3rUr_rc�es     r�0test_doClassCleanups_with_errors_addClassCleanUpzATestClassCleanup.test_doClassCleanups_with_errors_addClassCleanUpws��	�	�	�	�	�8�,�	�	�	�	(�	(�	(�	(�	(�	(�	�$�$�X�.�.�.��$�$�X�.�.�.�
�
�
�y�
)�
)�	,�Q��(�(�*�*�*����Q�
�+�+�+�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,����	,�	,�	,�	,�	,�	,s�#+B�B�"Bc���g�G�fd�dtj��}t|��}|�|jdd���dd��|��gd���dS)Nc�T��eZdZe�fd���Z�fd�Zd�Ze�fd���ZdS)�BTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTestc�h����d��|�t���dSr�r�r�s �rr�zMTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.setUpClass��1�������-�-�-��#�#�G�X�6�6�6�6�6rc�l����d��|�t�d���dS�Nr�Tr��r*rnr.r�s �rr�zHTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.setUp��3�������(�(�(������$��?�?�?�?�?rc��dSrrr7s rrRzNTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.testNothing�rSrc�2����d��dSr�rZr�s �rr�zPTestClassCleanup.test_with_errors_addCleanUp.<locals>.TestableTest.tearDownClass�r�rN�r>r?r@r�r�r�rRr�r�s�rrUr�s��������
�
7�
7�
7�
7��[�
7�
@�
@�
@�
@�
@�
�
�
�
�
1�
1�
1�
1��[�
1�
1�
1rrUrrY����Exception: CleanUpExc)r�r�r'r�r&�r	rkr$rlr��
splitlines�r3rUryr,s   @r�test_with_errors_addCleanUpz,TestClassCleanup.test_with_errors_addCleanUp�s������	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1��,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����;�;�;�	<�	<�	<�	<�	<rc���g�G�fd�dtj��}t|��}|�|jdd���dd��|��gd���dS)Nc�X��eZdZe�fd���Z�fd�Z�fd�Ze�fd���ZdS)�KTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTestc�l����d��|�t�d���dS�Nr�Tr�r�r�s �rr�zVTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.setUpClass��6�������-�-�-��#�#�G�X�d�#�C�C�C�C�Crc�h����d��|�t���dSr�rr�s �rr�zQTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.setUp�s/�������(�(�(������2�2�2�2�2rc�2����d��dSr�rZr�s �rrRzWTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zYTestClassCleanup.test_run_with_errors_addClassCleanUp.<locals>.TestableTest.tearDownClass�r�rNr!r�s�rrUr*�s��������
�
D�
D�
D�
D��[�
D�
3�
3�
3�
3�
3�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUrrYr"r#)r�r�rrr&r�r'r$r&s   @r�$test_run_with_errors_addClassCleanUpz5TestClassCleanup.test_run_with_errors_addClassCleanUp�s������	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1��,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����:�:�:�	;�	;�	;�	;�	;rc������g�d�d�G���fd�dtj��}t|��}|�|jdd���dd��|��gd���g�d	�d�t|��}|�|jdd���dd
��|�|jdd���dd��|��ddg��g�d�d	�t|��}|�|jdd���dd
��|�|jdd���dd��|��gd���dS)NFc�\��eZdZe��fd���Z��fd�Z�fd�Ze�fd���ZdS)�UTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTestc�����d��|�t�d����rtd���dS)Nr�Tr��ClassExcr��r��
class_blow_upr,s ��rr�z`TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.setUpClass�sP�������-�-�-��#�#�G�X�d�#�C�C�C� �0�#�J�/�/�/�0�0rc�T����d���rtd���dS�Nr��	MethodExcr)�r3�method_blow_upr,s ��rr�z[TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.setUp��5�������(�(�(�!�1�#�K�0�0�0�1�1rc�2����d��dSr�rZr�s �rrRzaTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zcTestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps.<locals>.TestableTest.tearDownClass�r�rNr!�r8r=r,s���rrUr4�s��������
�
0�
0�
0�
0�
0��[�
0�

1�
1�
1�
1�
1�
1�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUrrYr"r#)r�r�rrr�r'T�Exception: ClassExcr�r'�Exception: MethodExc)r�r�r�r'r$)r3rUryr8r=r,s   @@@r�.test_with_errors_in_addClassCleanup_and_setUpsz?TestClassCleanup.test_with_errors_in_addClassCleanup_and_setUps�s@��������
���	1�	1�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�"�,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����:�:�:�	;�	;�	;����
����,�'�'�������q�)�!�,�7�7�9�9�"�=�.�	0�	0�	0������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����&�
�6�	8�	8�	8����
����,�'�'�������q�)�!�,�7�7�9�9�"�=�/�	1�	1�	1������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����)�)�)�	*�	*�	*�	*�	*rc���g�G�fd�dtj��}t|��}|�|jdd���dd��|��gd���dS)Nc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�HTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTestc�h����d��|�t���dSr�r�r�s �rr�zSTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.setUpClass�rrc�2����d��dSr�rZr�s �rrRzTTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.testNothing�r�rc�L����d��td���)Nr��TearDownExcr)r�s �rr�zVTestClassCleanup.test_with_errors_in_tearDownClass.<locals>.TestableTest.tearDownClass�s#�������0�0�0��
�.�.�.rNr�r�s�rrUrG�st�������
�
7�
7�
7�
7��[�
7�
(�
(�
(�
(�
(�
�
/�
/�
/�
/��[�
/�
/�
/rrUrrYr"zException: TearDownExcr�r$r&s   @r�!test_with_errors_in_tearDownClassz2TestClassCleanup.test_with_errors_in_tearDownClass�s������
	/�
	/�
	/�
	/�
	/�
	/�
	/�8�,�
	/�
	/�
	/��,�'�'�������q�)�!�,�7�7�9�9�"�=�1�	3�	3�	3�����P�P�P�	R�	R�	R�	R�	Rrc�p�Gd�dtj��}g}|�|jd��t	|d��}|�|�|��d��|�|jd��|���|�|gd���dS)Nc��eZdZd�ZdS)�=TestClassCleanup.test_enterClassContext.<locals>.TestableTestc��dSrrr7s rrRzITestClassCleanup.test_enterClassContext.<locals>.TestableTest.testNothingrSrNrTrrrrUrO�rVrrUr_r�rcr�)r	rkr�r*r0rl�enterClassContextr�)r3rUr^r�s    r�test_enterClassContextz'TestClassCleanup.test_enterClassContext�s���	�	�	�	�	�8�,�	�	�	����$�$�X�_�j�A�A�A�
�H�b�
!�
!������7�7��;�;�R�@�@�@��$�$�X�_�j�A�A�A��$�$�&�&�&�����#L�#L�#L�M�M�M�M�Mrc�d�Gd�dtj��}|�td��5|�t����ddd��n#1swxYwY|�td��5|�t
����ddd��n#1swxYwY|�td��5|�t����ddd��n#1swxYwY|�|j	g��dS)Nc��eZdZd�ZdS)�HTestClassCleanup.test_enterClassContext_arg_errors.<locals>.TestableTestc��dSrrr7s rrRzTTestClassCleanup.test_enterClassContext_arg_errors.<locals>.TestableTest.testNothingrSrNrTrrrrUrUrVrrUr�)
r	rkr�r�rQrBrErJrlr��r3rUs  r�!test_enterClassContext_arg_errorsz2TestClassCleanup.test_enterClassContext_arg_errors
s���	�	�	�	�	�8�,�	�	�	��
#�
#�I�/D�
E�
E�	@�	@��*�*�+<�+>�+>�?�?�?�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@����	@�	@�	@�	@�
�
#�
#�I�/D�
E�
E�	9�	9��*�*�:�<�<�8�8�8�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9����	9�	9�	9�	9�
�
#�
#�I�/D�
E�
E�	8�	8��*�*�9�;�;�7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�	
����5�r�:�:�:�:�:s5�"A"�"A&�)A&�"B6�6B:�=B:�"D
�
D�DN)r>r?r@r�r�r�rrrr'r1rDrLrRrXrrrr�r��s�������P�P�P�6R�R�R�4A�A�A�6Q�Q�Q�:-�-�-�B,�,�,�"<�<�<�.;�;�;�.2*�2*�2*�hR�R�R�(
N�
N�
N�;�;�;�;�;rr�c�t�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�ZdS)�TestModuleCleanUpc
�����g��fd���fd��G��fd�dt��}|�tjj�dtdd���f�d	ifg��tj���|��d
d	ifddtdd���fg��|�tjjg��dS)Nc�8����d||f��dSr�rZ�r\r]�module_cleanupss  �r�module_cleanup1zHTestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.module_cleanup1 �$����"�"�A�t�V�#4�5�5�5�5�5rc�8����d||f��dSr�rZr]s  �r�module_cleanup2zHTestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.module_cleanup2#r`rc�\��eZdZej�ddddd���ej���dS)�?TestModuleCleanUp.test_add_and_do_ModuleCleanup.<locals>.ModulerYrbrdrerfrgN�r>r?r@r	�addModuleCleanup)r_rbs��r�Modulerd&sQ�������%�H�%�o�q�!�Q�+2��
D�
D�
D�
D�%�H�%�o�6�6�6�6�6rrgrjrerfrgrr�rd)�objectrlr	r �_module_cleanupsro�doModuleCleanups)r3rgr_rbr^s  @@@r�test_add_and_do_ModuleCleanupz/TestModuleCleanUp.test_add_and_do_ModuleCleanups;�������	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	7�	7�	7�	7�	7�	7�	7�	7�V�	7�	7�	7�
	
�����7�*�I��W�9�=�=�=�?�*�B��3�5�	6�	6�	6�
	�
�&�&�(�(�(�����A�r�2�;��I�*.�G�)�*L�*L�*L�9N�+O�	P�	P�	P������7��<�<�<�<�<rc	�����g��fd��d��G��fd�dt��}|�tjj�dtdd���f�d	ifg��|�t��5}tj���ddd��n#1swxYwY|�t|j
��d
��|�tjjg��dS)Nc�8����d||f��dSr�rZr]s  �r�module_cleanup_goodzcTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.module_cleanup_good8r`rc� �td����Nr(r
)r\r]s  r�module_cleanup_badzbTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.module_cleanup_bad;s���L�)�)�)rc�\��eZdZej�ddddd���ej���dS)�VTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup.<locals>.ModulerYrbrdrerfrgNre)rqrns��rrgrs>sS�������%�H�%�&9�1�a��+2��
D�
D�
D�
D�%�H�%�&8�9�9�9�9�9rrgrjrerfrgrr()rhrlr	r riror�r+rjr�r)r3rgrrqrnr^s   @@@r�4test_doModuleCleanup_with_errors_in_addModuleCleanupzFTestModuleCleanUp.test_doModuleCleanup_with_errors_in_addModuleCleanup5sr�������	6�	6�	6�	6�	6�	*�	*�	*�	:�	:�	:�	:�	:�	:�	:�	:�V�	:�	:�	:�	
�����7�.�	��W�9�=�=�=�?�-�r�2�6�8�	9�	9�	9��
�
�y�
)�
)�	-�Q��M�*�*�,�,�,�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-����	-�	-�	-�	-�����Q�[�)�)�<�8�8�8������7��<�<�<�<�<s�:B%�%B)�,B)c�����g��fd��G��fd�dt��}tj������dddifg��dS)Nc�6����||f��dSrrZr[s  �rr.zCTestModuleCleanUp.test_addModuleCleanup_arg_errors.<locals>.cleanupM�����O�O�T�6�N�+�+�+�+�+rc�0��eZdZej�ddd�����e��5ej�d���ddd��n#1swxYwY��e��5ej��ddd��dS#1swxYwYdS)�BTestModuleCleanUp.test_addModuleCleanup_arg_errors.<locals>.ModulerYrbre)�function�rz�argN)r>r?r@r	rfr�r��r.r3s��rrgryPsB�������%�H�%�g�q�!�g�F�F�F�F��"�"�9�-�-�
I�
I�)��)�7��H�H�H�H�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I����
I�
I�
I�
I��"�"�9�-�-�
,�
,�)��)�+�+�+�
,�
,�
,�
,�
,�
,�
,�
,�
,�
,�
,�
,����
,�
,�
,�
,�
,�
,s#�A�A�A�.B�B�Brg�rYrbrzre)rhr	r rjrl)r3rgr.r^s` @@r� test_addModuleCleanup_arg_errorsz2TestModuleCleanUp.test_addModuleCleanup_arg_errorsKs��������	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�V�	,�	,�	,�	�
�&�&�(�(�(�����!�J��#8�9�:�	<�	<�	<�	<�	<rc�
���d�g�G��fd�dt��}G�fd�dtj��}d|_|tjd<t
|��}|��ddg��|�|jdd	�	��d
d��g�d�t
|��|��gd
���|�tj
jg��dS)NTc�F��eZdZe��fd���Ze�fd���ZdS)�9TestModuleCleanUp.test_run_module_cleanUp.<locals>.Modulec�����d��tjt����rt	d���dS)N�setUpModulezsetUpModule Exc�r*r	rfr.r+r�s��rr�zETestModuleCleanUp.test_run_module_cleanUp.<locals>.Module.setUpModule^sI������
�.�.�.��)�'�8�<�<�<��7�#�$5�6�6�6�7�7rc�2����d��dS�N�tearDownModulerZr�s�rr�zHTestModuleCleanUp.test_run_module_cleanUp.<locals>.Module.tearDownModuled������� 0�1�1�1�1�1rN�r>r?r@�staticmethodr�r�r�s��rrgr�]sb�������
�
7�
7�
7�
7�
7��\�
7�
�
2�
2�
2�
2��\�
2�
2�
2rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�?TestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�zJTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.setUpClassi��������-�-�-�-�-rc�2����d��dSr�rZr�s �rrRzKTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.testNothinglr�rc�2����d��dSr�rZr�s �rr�zMTestModuleCleanUp.test_run_module_cleanUp.<locals>.TestableTest.tearDownClassnr�rNr�r�s�rrUr�h�t�������
�
.�
.�
.�
.��[�
.�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUr�r&rrYr"zException: setUpModule ExcF�r�r�rrr�r�r&�rhr	rkr?�sys�modulesr$rlr�r%r ri)r3rgrUryr-r,s    @@r�test_run_module_cleanUpz)TestModuleCleanUp.test_run_module_cleanUpZs\��������		2�		2�		2�		2�		2�		2�		2�		2�V�		2�		2�		2�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�#+��� &���H���,�'�'������M�>�#B�C�C�C������q�)�!�,�7�7�9�9�"�=�5�	7�	7�	7��������������<�<�<�	=�	=�	=�	
�����7��<�<�<�<�<rc�����d�d�g�G��fd�dt��}G��fd�dt��}G�fd�dtj��}G�fd	�d
tj��}d|_|tjd<d|_|tjd<t
||��|��gd���g�d�d�t
||��|��gd���g�d�d�t
||��|��gd
���|�tjj	g��dS)NTFc�F��eZdZe��fd���Ze�fd���ZdS)�CTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1c�����d��tjt����rt	���dS�Nr�r�r�s��rr�zOTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1.setUpModule�sD������
�.�.�.��)�'�8�<�<�<��&�#�+�+�%�&�&rc�2����d��dSr�rZr�s�rr�zRTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module1.tearDownModule�r�rNr�r�s��r�Module1r��sb�������
�
&�
&�
&�
&�
&��\�
&�
�
2�
2�
2�
2��\�
2�
2�
2rr�c�F��eZdZe��fd���Ze�fd���ZdS)�CTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2c�����d��tjt����rt	���dS)N�setUpModule2r���blowUp2r,s��rr�zOTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2.setUpModule�sD�������/�/�/��)�'�8�<�<�<��&�#�+�+�%�&�&rc�2����d��dS)N�tearDownModule2rZr�s�rr�zRTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.Module2.tearDownModule�s������ 1�2�2�2�2�2rNr�r�s��r�Module2r��sb�������
�
&�
&�
&�
&�
&��\�
&�
�
3�
3�
3�
3��\�
3�
3�
3rr�c�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�HTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�zSTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.setUpClass�r�rc�2����d��dSr�rZr�s �rrRzTTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zVTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest.tearDownClass�r�rNr�r�s�rrUr��r�rrUc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�ITestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2c�2����d��dS)N�setUpClass2rZr�s �rr�zTTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.setUpClass�s������
�.�.�.�.�.rc�2����d��dS�N�test2rZr�s �rrRzUTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.testNothing���������(�(�(�(�(rc�2����d��dS)N�tearDownClass2rZr�s �rr�zWTestModuleCleanUp.test_run_multiple_module_cleanUp.<locals>.TestableTest2.tearDownClass�r�rNr�r�s�r�
TestableTest2r��st�������
�
/�
/�
/�
/��[�
/�
)�
)�
)�
)�
)�
�
2�
2�
2�
2��[�
2�
2�
2rr�)r�r&r�r�r�r�r�r&)r�r�rrr�r�r&r�r&)r�r�rrr�r�r&r�r�r�r�r�r&�
rhr	rkr?r�r�r$rlr ri)r3r�r�rUr�r-r�r,s     @@@r� test_run_multiple_module_cleanUpz2TestModuleCleanUp.test_run_multiple_module_cleanUp�s�����������		2�		2�		2�		2�		2�		2�		2�		2�f�		2�		2�		2�		3�		3�		3�		3�		3�		3�		3�		3�f�		3�		3�		3�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�	2�	2�	2�	2�	2�	2�	2�H�-�	2�	2�	2�#,���!(���I��#,�
� �!(���I����}�-�-�-�����$4�$4�$4�	5�	5�	5���������}�-�-�-�����$4�$4�$4�	5�	5�	5�
��������}�-�-�-�����=�=�=�	>�	>�	>�
	
�����7��<�<�<�<�<rc�.��g�G�fd�dt��}G�fd�dtj��}d|_|tjd<t
|��|��gd���|�tjj	g��dS)Nc�*��eZdZe�fd���ZdS)�JTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.Modulec�f����d��tjt���dSr��r*r	rfr.r�s�rr�zVTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.Module.setUpModule��.������
�.�.�.��)�'�8�<�<�<�<�<rN)r>r?r@r�r�r�s�rrgr��s8�������
�
=�
=�
=�
=��\�
=�
=�
=rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�PTestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�z[TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.setUpClass�r�rc�2����d��dSr�rZr�s �rrRz\TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�z^TestModuleCleanUp.test_run_module_cleanUp_without_teardown.<locals>.TestableTest.tearDownClass�r�rNr�r�s�rrUr��r�rrU�r�r�rrr�r&r�)r3rgrUr,s   @r�(test_run_module_cleanUp_without_teardownz:TestModuleCleanUp.test_run_module_cleanUp_without_teardown�s������	=�	=�	=�	=�	=�	=�	=�V�	=�	=�	=�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�#+��� &���H�����������$E�$E�$E�	F�	F�	F������7��<�<�<�<�<rc���g�G�fd�dt��}G�fd�dtj��}d|_|tjd<t
|��}|�|jdd�	��dd��|��gd	���|�tj
jg��dS)
Nc�@��eZdZe�fd���Zed���ZdS)�QTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Modulec�f����d��tjt���dSr�r�r�s�rr�z]TestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Module.setUpModule�r�rc� �td���rpr
rrrr�z`TestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.Module.tearDownModule�s����-�-�-rNr�r�s�rrgr��sS�������
�
=�
=�
=�
=��\�
=��
.�
.��\�
.�
.�
.rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�WTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�zbTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.setUpClass�r�rc�2����d��dSr�rZr�s �rrRzcTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zeTestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClass�r�rNr�r�s�rrUr��r�rrUrrYr"r#r�r��r3rgrUryr,s    @r�/test_run_module_cleanUp_when_teardown_exceptionzATestModuleCleanUp.test_run_module_cleanUp_when_teardown_exception�s �����	.�	.�	.�	.�	.�	.�	.�V�	.�	.�	.�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�#+��� &���H���,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����$E�$E�$E�	F�	F�	F������7��<�<�<�<�<rc����g�d�G��fd�dt��}G�fd�dtj��}d|_|tjd<tj�|��}|���|�	�gd���|�	tj
jg��g�d�tj�|��}|�t��5}|���ddd��n#1swxYwY|�	t|j��d��|�	�gd	���|�	tj
jg��dS)
NFc�F��eZdZe��fd���Ze�fd���ZdS)�DTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.Modulec�j����d��tjt�����dS�Nr�r�r�r�s��rr�zPTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.Module.setUpModule�3������
�.�.�.��)�'�8�F�K�K�K�K�K�Krc�2����d��dSr�rZr�s�rr�zSTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.Module.tearDownModuler�rNr�r�s��rrgr�sh�������
�
L�
L�
L�
L�
L��\�
L��
2�
2�
2�
2��\�
2�
2�
2rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�JTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�zUTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.setUpClassr�rc�2����d��dSr�rZr�s �rrRzVTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.testNothingr�rc�2����d��dSr�rZr�s �rr�zXTestModuleCleanUp.test_debug_module_executes_cleanUp.<locals>.TestableTest.tearDownClassr�rNr�r�s�rrUr�r�rrUr�Tr()r�r�rrr�r�r')rhr	rkr?r�r�rrr�rlr rir�r+r�r�r3rgrUrr�r-r,s     @@r�"test_debug_module_executes_cleanUpz4TestModuleCleanUp.test_debug_module_executes_cleanUps��������	2�	2�	2�	2�	2�	2�	2�	2�V�	2�	2�	2�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�#+��� &���H���*�@�@��N�N��
���
�
�
�����<�<�<�	=�	=�	=�	
�����7��<�<�<������*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�L�9�9�9�����$V�$V�$V�	W�	W�	W������7��<�<�<�<�<s�:D�D�"Dc�V���g�d�G��fd�dt��}G�fd�dtj��}d|_|tjd<tj�|��}|�t��5}|�
��ddd��n#1swxYwY|�t|j
��d��|��gd���|�tjj��tjj���g�d�tj�|��}|�t��5}|�
��ddd��n#1swxYwY|�t|j
��d��|��gd���|�tjj��tjj���dS)	NFc�B��eZdZe��fd���Zed���ZdS)�STestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Modulec�j����d��tjt�����dSr�r�r�s��rr�z_TestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Module.setUpModule0r�rc� �td���)N�TearDownModuleExcr
rrrr�zbTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.Module.tearDownModule4s��� 3�4�4�4rNr�r�s��rrgr�/s^�������
�
L�
L�
L�
L�
L��\�
L��
5�
5��\�
5�
5�
5rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�YTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTestc�2����d��dSr�rZr�s �rr�zdTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.setUpClass9r�rc�2����d��dSr�rZr�s �rrRzeTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.testNothing<r�rc�2����d��dSr�rZr�s �rr�zgTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception.<locals>.TestableTest.tearDownClass>r�rNr�r�s�rrUr�8r�rrUr�)r�r�rrr�T)rhr	rkr?r�r�rrr�r+r�rlr�rrpr rirr�s     @@r�1test_debug_module_cleanUp_when_teardown_exceptionzCTestModuleCleanUp.test_debug_module_cleanUp_when_teardown_exception,s���������	5�	5�	5�	5�	5�	5�	5�	5�V�	5�	5�	5�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1�#+��� &���H���*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�,?�@�@�@�����$5�$5�$5�	6�	6�	6�����
�6�7�7�7��
�&�,�,�.�.�.������*�@�@��N�N��
�
�
�y�
)�
)�	�R��K�K�M�M�M�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�����R�\�*�*�,?�@�@�@�����$5�$5�$5�	6�	6�	6�����
�6�7�7�7��
�&�,�,�.�.�.�.�.s$�B'�'B+�.B+�6F�F�Fc������g��fd��G��fd�dtj��}��t��5|���ddd��n#1swxYwY��t��5tj�|������ddd��n#1swxYwYt
|�����dddd�fg��dS)	Nc�6����||f��dSrrZr[s  �rr.zBTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.cleanupZrwrc�2��eZdZe��fd���Zd�ZdS)�GTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTestc����|��dddd�����t��5|��d���ddd��dS#1swxYwYdS)NrYrbrdr��rzr�rer{)r�r�r�)r�r.r3s ��rr�zRTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTest.setUpClass^s�����#�#�G�Q��A�1�#�E�E�E��&�&�y�1�1�G�G��'�'��g�'�F�F�F�G�G�G�G�G�G�G�G�G�G�G�G����G�G�G�G�G�G��A�A�"Ac��dSrrr7s rrRzSTestModuleCleanUp.test_addClassCleanup_arg_errors.<locals>.TestableTest.testNothingcrSrN)r>r?r@r�r�rRr}s��rrUr�]sR�������
�
G�
G�
G�
G�
G��[�
G�
�
�
�
�
rrU)r�rzr~rdr�r�)r	rkr�r�r�rnr$rl�r3rUr.r^s` @@r�test_addClassCleanup_arg_errorsz1TestModuleCleanUp.test_addClassCleanup_arg_errorsXs��������	,�	,�	,�	,�	,�	�	�	�	�	�	�	�	�8�,�	�	�	��
�
�y�
)�
)�	+�	+��(�(�*�*�*�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+�
�
�
�y�
)�
)�	O�	O���(�(�\�\�^�^�g�(�N�N�N�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O����	O�	O�	O�	O����������!��!�#<�#<�=�>�	@�	@�	@�	@�	@s$�A!�!A%�(A%�*B<�<C�Cc�����g��fd��G��fd�dtj��}��t��5|�����ddd��n#1swxYwY��t��5tj�|������ddd��n#1swxYwYt|�����dddd�fg��dS)	Nc�6����||f��dSrrZr[s  �rr.z=TestModuleCleanUp.test_addCleanup_arg_errors.<locals>.cleanupprwrc�"��eZdZ��fd�Zd�ZdS)�BTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTestc����|��dddd�����t��5|��d���ddd��dS#1swxYwYdS)NrYrbrdr��rzr3rer{)rnr�r�)�self2r.r3s ��rr�zHTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTest.setUpts����� � ��!�Q��� �C�C�C��&�&�y�1�1�D�D��$�$�g�7�$�C�C�C�D�D�D�D�D�D�D�D�D�D�D�D����D�D�D�D�D�Dr�c��dSrrr7s rrRzNTestModuleCleanUp.test_addCleanup_arg_errors.<locals>.TestableTest.testNothingxrSrN)r>r?r@r�rRr}s��rrUr�ssH�������
D�
D�
D�
D�
D�
D�
�
�
�
�
rrU)r3rzr~rdr�r�)r	rkr�r�rnr$rlr�s` @@r�test_addCleanup_arg_errorsz,TestModuleCleanUp.test_addCleanup_arg_errorsns��������	,�	,�	,�	,�	,�	�	�	�	�	�	�	�	�8�,�	�	�	��
�
�y�
)�
)�	(�	(��L�N�N�%�%�'�'�'�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(����	(�	(�	(�	(�
�
�
�y�
)�
)�	P�	P���(�(�l�l�n�n�w�(�O�O�O�	P�	P�	P�	P�	P�	P�	P�	P�	P�	P�	P����	P�	P�	P�	P����������!��1�#=�#=�>�?�	A�	A�	A�	A�	As$�A)�)A-�0A-�*C�C�Cc�b��g�G�fd�dt��}G�fd�dtj��}d|_|tjd<t
|��}|�|jdd�	��dd��|��gd	���dS)
Nc�D��eZdZe�fd���Ze�fd���ZdS)�ETestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Modulec�f����d��tjt���dSr�r�r�s�rr�zQTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Module.setUpModule�r�rc�2����d��dSr�rZr�s�rr�zTTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.Module.tearDownModule�r�rNr�r�s�rrgr��]�������
�
=�
=�
=�
=��\�
=��
2�
2�
2�
2��\�
2�
2�
2rrgc�N��eZdZe�fd���Z�fd�Ze�fd���ZdS)�KTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTestc�l����d��|�t�d���dSr,r�r�s �rr�zVTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.setUpClass�r-rc�2����d��dSr�rZr�s �rrRzWTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zYTestModuleCleanUp.test_with_errors_in_addClassCleanup.<locals>.TestableTest.tearDownClass�r�rNr�r�s�rrUr�sy�������
�
D�
D�
D�
D��[�
D�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUrrYr"r#)r�r�rrr�r'r�r&�
rhr	rkr?r�r�r$rlr�r%r�s    @r�#test_with_errors_in_addClassCleanupz5TestModuleCleanUp.test_with_errors_in_addClassCleanup�s�����	2�	2�	2�	2�	2�	2�	2�V�	2�	2�	2�		1�		1�		1�		1�		1�		1�		1�8�,�		1�		1�		1�#+��� &���H���,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����K�K�K�	L�	L�	L�	L�	Lrc�b��g�G�fd�dt��}G�fd�dtj��}d|_|tjd<t
|��}|�|jdd�	��dd��|��gd	���dS)
Nc�D��eZdZe�fd���Ze�fd���ZdS)�@TestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Modulec�f����d��tjt���dSr�r�r�s�rr�zLTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Module.setUpModule�r�rc�2����d��dSr�rZr�s�rr�zOTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.Module.tearDownModule�r�rNr�r�s�rrgr�rrrgc�.��eZdZ�fd�Z�fd�Z�fd�ZdS)�FTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTestc�l����d��|�t�d���dSrrr�s �rr�zLTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.setUp�rrc�2����d��dSr�rZr�s �rrRzRTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zOTestModuleCleanUp.test_with_errors_in_addCleanup.<locals>.TestableTest.tearDown�r�rNr�r�s�rrUr�se�������
@�
@�
@�
@�
@�
(�
(�
(�
(�
(�
,�
,�
,�
,�
,�
,�
,rrUrrYr"r#)r�r�rrr�r'r�r&rr�s    @r�test_with_errors_in_addCleanupz0TestModuleCleanUp.test_with_errors_in_addCleanup�s�����	2�	2�	2�	2�	2�	2�	2�V�	2�	2�	2�	,�	,�	,�	,�	,�	,�	,�8�,�	,�	,�	,�#+��� &���H���,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����K�K�K�	L�	L�	L�	L�	Lrc������g�d�d�d�G��fd�dt��}G���fd�dtj��}d|_|tjd<t
|��}|�|jdd�	��dd	��|��gd
���g�d�d�d�t
|��}|�|jdd�	��dd��|�|jdd�	��dd	��|��d
dg��g�d�d�d�t
|��}|�|jdd�	��dd��|�|jdd�	��dd	��|��gd���g�d�d�d�t
|��}|�|jdd�	��dd��|�|jdd�	��dd	��|��gd���dS)NFc�F��eZdZe��fd���Ze�fd���ZdS)�QTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Modulec�����d��tjt�d����rt	d���dS)Nr�Tr��	ModuleExcr���module_blow_upr,s��rr�z]TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Module.setUpModule�sM������
�.�.�.��)�'�8�D�I�I�I�I�!�1�#�K�0�0�0�1�1rc�2����d��dSr�rZr�s�rr�z`TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.Module.tearDownModule�r�rNr�rs��rrgr�sb�������
�
1�
1�
1�
1�
1��\�
1�
�
2�
2�
2�
2��\�
2�
2�
2rrgc�\��eZdZe��fd���Z��fd�Z�fd�Ze�fd���ZdS)�WTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTestc�T����d���rtd���dS)Nr�r6r)r7s ��rr�zbTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.setUpClass�s5�������-�-�-� �0�#�J�/�/�/�0�0rc�T����d���rtd���dSr:r)r<s ��rr�z]TestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.setUp�r>rc�2����d��dSr�rZr�s �rrRzcTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.testNothing�r�rc�2����d��dSr�rZr�s �rr�zeTestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps.<locals>.TestableTest.tearDownClass�r�rNr!rAs���rrUr!�s��������
�
0�
0�
0�
0�
0��[�
0�
1�
1�
1�
1�
1�
1�
(�
(�
(�
(�
(�
�
1�
1�
1�
1��[�
1�
1�
1rrUrrYr"r#)r�r�r�rrr�r�r'TzException: ModuleExcr�r'rB)r�r�r�r'rC)r�r�r�r�r�r'r)r3rgrUryr8r=rr,s    @@@@r�/test_with_errors_in_addModuleCleanup_and_setUpszATestModuleCleanUp.test_with_errors_in_addModuleCleanup_and_setUps�sZ�����������
���		2�		2�		2�		2�		2�		2�		2�		2�V�		2�		2�		2�	1�	1�	1�	1�	1�	1�	1�	1�	1�8�,�	1�	1�	1� #+��� &���H���,�'�'�������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����)�)�)�	*�	*�	*�
�����
����,�'�'�������q�)�!�,�7�7�9�9�"�=�/�	1�	1�	1������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����M�=�#A�B�B�B������
����,�'�'�������q�)�!�,�7�7�9�9�"�=�.�	0�	0�	0������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����$E�$E�$E�	F�	F�	F������
����,�'�'�������q�)�!�,�7�7�9�9�"�=�/�	1�	1�	1������q�)�!�,�7�7�9�9�"�=�0�	2�	2�	2�����$3�$3�$3�	4�	4�	4�	4�	4rc�R�����g��fd���fd���fd��G��fd�dt��}G��fd�dtj��}G��fd�d	tj��}d|_d|_|tjd<t
||��|��gd
���dS)Nc�2����d��dSr�rZr�s�rr_zMTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup1r�rc�2����d��dSr�rZr�s�rrczMTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup2r�rc�2����d��dS)N�cleanup3rZr�s�rr+zMTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.cleanup3r�rc�F��eZdZe��fd���Ze�fd���ZdS)�KTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Modulec�Z����d��tj���dSr�)r*r	rfr�s��rr�zWTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Module.setUpModules,������
�.�.�.��)�(�3�3�3�3�3rc�2����d��dSr�rZr�s�rr�zZTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.Module.tearDownModule!r�rNr�r�s��rrgr-sb�������
�
4�
4�
4�
4�
4��\�
4��
2�
2�
2�
2��\�
2�
2�
2rrgc�0��eZdZ��fd�Z�fd�Z�fd�ZdS)�QTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTestc�\����d��|����dSr�r�)r3rcr,s ��rr�zWTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.setUp&r�rc�2����d��dSr�rZr�s �rrRz]TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.testNothing)r�rc�2����d��dSr�rZr�s �rr�zZTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.TestableTest.tearDown+r�rNr�)rcr,s��rrUr1%se�������
*�
*�
*�
*�
*�
*�
(�
(�
(�
(�
(�
,�
,�
,�
,�
,�
,�
,rrUc�0��eZdZ��fd�Z�fd�Z�fd�ZdS)�VTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTestc�\����d��|����dS)N�setUp2r�)r3r+r,s ��rr�z\TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.setUp/s-�������)�)�)�����)�)�)�)�)rc�2����d��dSr�rZr�s �rrRzbTestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.testNothing2r�rc�2����d��dS)N�	tearDown2rZr�s �rr�z_TestModuleCleanUp.test_module_cleanUp_with_multiple_classes.<locals>.OtherTestableTest.tearDown4s�������,�,�,�,�,rNr�)r+r,s��r�OtherTestableTestr6.se�������
*�
*�
*�
*�
*�
*�
)�
)�
)�
)�
)�
-�
-�
-�
-�
-�
-�
-rr<)r�r�rrr�rcr8r�r;r+r�r_)rhr	rkr?r�r�r$rl)r3rgrUr<r_rcr+r,s    @@@@r�)test_module_cleanUp_with_multiple_classesz;TestModuleCleanUp.test_module_cleanUp_with_multiple_classessr��������	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	2�	2�	2�	2�	2�	2�	2�	2�V�	2�	2�	2�	,�	,�	,�	,�	,�	,�	,�	,�8�,�	,�	,�	,�	-�	-�	-�	-�	-�	-�	-�	-�� 1�	-�	-�	-�#+���'/��$� &���H����0�1�1�1�����D�D�D�	E�	E�	E�	E�	Erc�N�g}tj|jd��t|d��}|�tj|��d��tj|jd��tj���|�|gd���dS)Nr_r�rcr�)r	rfr*r0rl�enterModuleContextr rj)r3r^r�s   r�test_enterModuleContextz)TestModuleCleanUp.test_enterModuleContext@s������!�(�/�:�>�>�>�
�H�b�
!�
!������4�R�8�8�"�=�=�=��!�(�/�:�>�>�>��
�&�&�(�(�(�����#L�#L�#L�M�M�M�M�Mrc�r�Gd�dtj��}|�td��5tjt����ddd��n#1swxYwY|�td��5tjt
����ddd��n#1swxYwY|�td��5tjt����ddd��n#1swxYwY|�tj	j
g��dS)Nc��eZdZd�ZdS)�JTestModuleCleanUp.test_enterModuleContext_arg_errors.<locals>.TestableTestc��dSrrr7s rrRzVTestModuleCleanUp.test_enterModuleContext_arg_errors.<locals>.TestableTest.testNothingMrSrNrTrrrrUrCLrVrrUr�)r	rkr�r�r?rBrErJrlr rirWs  r�"test_enterModuleContext_arg_errorsz4TestModuleCleanUp.test_enterModuleContext_arg_errorsKs���	�	�	�	�	�8�,�	�	�	��
#�
#�I�/D�
E�
E�	=�	=��'�(9�(;�(;�<�<�<�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=����	=�	=�	=�	=�
�
#�
#�I�/D�
E�
E�	6�	6��'�
���5�5�5�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6����	6�	6�	6�	6�
�
#�
#�I�/D�
E�
E�	5�	5��'�	���4�4�4�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5����	5�	5�	5�	5�	
�����7��<�<�<�<�<s5�!A!�!A%�(A%�!B4�4B8�;B8�!D�D�DN)r>r?r@rkrtrr�r�r�r�r�r�r�r�rrr&r=r@rErrrrZrZs2������=�=�=�0=�=�=�,
<�
<�
<�%=�%=�%=�NI=�I=�I=�V=�=�=�2=�=�=�<'=�'=�'=�R*/�*/�*/�X@�@�@�,A�A�A�*L�L�L�BL�L�L�<M4�M4�M4�^-E�-E�-E�^	N�	N�	N�=�=�=�=�=rrZc��eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zej��d
���Zd�Zd�ZdS)�Test_TextTestRunnerzTests for TextTestRunner.c�z�tj�d��|_|jrtjd=dSdS�N�PYTHONWARNINGS)�os�environ�get�pythonwarningsr7s rr�zTest_TextTestRunner.setUp]sA��!�j�n�n�-=�>�>�����	-��
�+�,�,�,�	-�	-rc�@�|jr|jtjd<dSdSrI)rNrKrLr7s rr�zTest_TextTestRunner.tearDownds-����	?�+/�+>�B�J�'�(�(�(�	?�	?rc��tj��}|�|j��|�|j��|�|jd��|�|jd��|�|j	��|�|j
tj��|�|j��dSrX)
r	rr��failfast�bufferrl�	verbosity�warningsrp�descriptionsr�TextTestResult�	tb_locals)r3r"s  r�	test_initzTest_TextTestRunner.test_initis����(�*�*�������)�)�)������'�'�'�����)�1�-�-�-������$�/�/�/�����+�,�,�,�����+�X�-D�E�E�E�����)�*�*�*�*�*rc���G�fd�dtj���Gd�dtj���}|ddd��dS)Nc�"���eZdZ��fd�Z�xZS)�>Test_TextTestRunner.test_multiple_inheritance.<locals>.AResultc�R��t�|���|||��dSr)�superr4)r3rrUrS�AResult�	__class__s    ��rr4zGTest_TextTestRunner.test_multiple_inheritance.<locals>.AResult.__init__us+����g�t�$�$�-�-�f�l�I�N�N�N�N�Nr)r>r?r@r4�
__classcell__)r_r^s@�rr^r[tsH��������
O�
O�
O�
O�
O�
O�
O�
O�
O�
Orr^c��eZdZdS)�BTest_TextTestRunner.test_multiple_inheritance.<locals>.ATextResultNrCrrr�ATextResultrbxs�������DrrcrY)r	r
rV)r3rcr^s  @r�test_multiple_inheritancez-Test_TextTestRunner.test_multiple_inheritancess����	O�	O�	O�	O�	O�	O�	O�h�)�	O�	O�	O�	�	�	�	�	�(�1�7�	�	�	�
	��D�$��"�"�"�"�"rc�f��Gd�dtj��}tj���tjt	j��dd���}�fd�|_|�|d����|��j	��|��j
��dS)Nc��eZdZd�ZdS)�7Test_TextTestRunner.testBufferAndFailfast.<locals>.Testc��dSrrr7s r�testFooz?Test_TextTestRunner.testBufferAndFailfast.<locals>.Test.testFoo�rSrN�r>r?r@rirrr�Testrg�rVrrkT)rrQrRc����Srrrxs�r�<lambda>z;Test_TextTestRunner.testBufferAndFailfast.<locals>.<lambda>�����V�rri)r	rkr
rrr�_makeResultrrprQrR)r3rkr"rys   @r�testBufferAndFailfastz)Test_TextTestRunner.testBufferAndFailfasts����	�	�	�	�	�8�$�	�	�	��$�&�&���(���
�
��04�6�6�6��,�^�^�^����
�
�4�4�	�?�?�#�#�#������(�(�(�����
�&�&�&�&�&rc���tjtj��d���}|�tj����}|�d|j��dS)NT)rrW)r	rrrrrrlrW)r3r"rys   r�test_localszTest_TextTestRunner.test_locals�sV���(���
�
��N�N�N�����H�.�0�0�1�1������v�/�0�0�0�0�0rc������Gd�dtj��}tjj��fd�}��|��tj���tjtj�����}�fd�|_	d�_
��fd�}|tj_|�tj������
�j
d��dS)	Nc��eZdZd�ZdS)�;Test_TextTestRunner.testRunnerRegistersResult.<locals>.Testc��dSrrr7s rrizCTest_TextTestRunner.testRunnerRegistersResult.<locals>.Test.testFoo�rSrNrjrrrrkru�rVrrkc�*���tj_dSr)r	r"�registerResult)�originalRegisterResults�rr.z>Test_TextTestRunner.testRunnerRegistersResult.<locals>.cleanup�s���-C�H�O�*�*�*r)rc����Srrrxs�rrmz?Test_TextTestRunner.testRunnerRegistersResult.<locals>.<lambda>�rnrrc�T���xjdz
c_��|���dSrX)�
wasRegisteredrl)�
thisResultryr3s ��r�fakeRegisterResultzITest_TextTestRunner.testRunnerRegistersResult.<locals>.fakeRegisterResult�s3������!�#������Z��0�0�0�0�0rrY)r	rkr"rxrnr
rrrror|rrrl)r3rkr.r"r~ryrys`    @@r�testRunnerRegistersResultz-Test_TextTestRunner.testRunnerRegistersResult�s�����	�	�	�	�	�8�$�	�	�	�"*��!?��	D�	D�	D�	D�	D����� � � ��$�&�&���(���
�
�>�>�>��+�^�^�^������	1�	1�	1�	1�	1�	1�*<���&��
�
�8�%�'�'�(�(�(�����+�Q�/�/�/�/�/rc�����Gd�dt���G��fd�dtj������}|�tj����dS)Nc��eZdZdZd�ZdS)�bTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.OldTextResult�c��dSrrr7s r�printErrorsznTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.OldTextResult.printErrors�rSrN�r>r?r@�
separator2r�rrr�
OldTextResultr���(�������J�
�
�
�
�
rr�c�,���eZdZ��fd�Z�fd�Z�xZS)�[Test_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runnerc�p��t�|���tj����dSr)r]r4rr)r3�Runnerr_s ��rr4zdTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runner.__init__�s-����f�d�#�#�,�,�R�[�]�]�;�;�;�;�;rc������Srr)r3r�s �rrozgTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun.<locals>.Runner._makeResult�s���$�}���&r�r>r?r@r4ror`)r_r�r�s@��rr�r��sW��������
<�
<�
<�
<�
<�
<�
'�
'�
'�
'�
'�
'�
'�
'�
'rr�)rr	rrr)r3r"r�r�s  @@r�7test_works_with_result_without_startTestRun_stopTestRunzKTest_TextTestRunner.test_works_with_result_without_startTestRun_stopTestRun�s�����	�	�	�	�	�?�	�	�	�
	'�	'�	'�	'�	'�	'�	'�	'�X�,�	'�	'�	'�������
�
�8�%�'�'�(�(�(�(�(rc����Gd�dt���G��fd�dtj���g}�|��}|�tj����ddg}|�||��dS)Nc��eZdZdZd�ZdS)�STest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingTextResultr�c��dSrrr7s rr�z_Test_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingTextResult.printErrors�rSrNr�rrr�LoggingTextResultr��r�rr�c�,���eZdZ��fd�Z�fd�Z�xZS)�OTest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunnerc�~��t�|���tj����||_dSr)r]r4rr�_events)r3�events�
LoggingRunnerr_s  ��rr4zXTest_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunner.__init__�s2����m�T�*�*�3�3�B�K�M�M�B�B�B�%����rc�$���|j��Sr)r�)r3r�s �rroz[Test_TextTestRunner.test_startTestRun_stopTestRun_called.<locals>.LoggingRunner._makeResult�s���(�(���6�6�6rr�)r_r�r�s@��rr�r��sW��������
&�
&�
&�
&�
&�
&�
7�
7�
7�
7�
7�
7�
7�
7�
7rr��startTestRun�stopTestRun)rr	rrrrl)r3r�r"�expectedr�r�s    @@r�$test_startTestRun_stopTestRun_calledz8Test_TextTestRunner.test_startTestRun_stopTestRun_called�s�����	�	�	�	�	�
�	�	�	�
	7�	7�	7�	7�	7�	7�	7�	7�H�3�	7�	7�	7�����v�&�&���
�
�8�%�'�'�(�(�(�"�M�2�������*�*�*�*�*rc�f�tjd��}tj|��}t	dt
jdz��D]j}tj||��}tj|��}|�	|j
���|������kdS)NrzrbrY)rrr	r�range�pickle�HIGHEST_PROTOCOL�dumps�loadsrlr�getvalue)r3rr"�protocol�s�objs      r�test_pickle_unpicklez(Test_TextTestRunner.test_pickle_unpickle�s�����U�#�#���(��0�0���a��!8�1�!<�=�=�	G�	G�H���V�X�.�.�A��,�q�/�/�C����S�Z�0�0�2�2�F�O�O�4E�4E�F�F�F�F�		G�	Grc�*�d�}t��}t��}t��}tj||||���}|�|j|��|j||f}|�|���|��dS)Nc��|Srr)r\s r�MockResultClassz=Test_TextTestRunner.test_resultclass.<locals>.MockResultClass�s���Kr)r)rhr	rrlrrro)r3r��STREAM�DESCRIPTIONS�	VERBOSITYr"�expectedresults       r�test_resultclassz$Test_TextTestRunner.test_resultclass�s���	�	�	������x�x���H�H�	��(���y�5D�F�F�F������+�_�=�=�=� �-��y�A������+�+�-�-�~�>�>�>�>�>rc�h�d�}ttjtjtj�t�����}d}d}tjtj	ddgfi|��}|5||��\}}ddd��n#1swxYwY|�
d|��|�t|��d	��d
D]+}|�|�
|��d���,||dfD]+}|�|�
|��d
���,tj	ddgtj	dddgtj	ddgf}	|	D]u}
tj|
fi|��}|5||��\}}ddd��n#1swxYwY|�
d|��|�t|��d���vtjtj	ddgfi|��}|5||��\}}ddd��n#1swxYwY|�
d|��|�t|��d��dD]+}|�|�
|��d���,||fD]+}|�|�
|��d
���,dS)zx
        Check that warnings argument of TextTestRunner correctly affects the
        behavior of the warnings.
        c�>�d�|���D��S)Nc�6�g|]}|�����Sr)r%)�.0�bs  r�
<listcomp>zPTest_TextTestRunner.test_warnings.<locals>.get_parse_out_err.<locals>.<listcomp>�s ��<�<�<�q�A�L�L�N�N�<�<�<r)�communicate)�ps r�get_parse_out_errz<Test_TextTestRunner.test_warnings.<locals>.get_parse_out_err�s��<�<�A�M�M�O�O�<�<�<�<r)�stdout�stderr�cwdsPlease use assertEqual instead.sPlease use assertTrue instead.z-Ez_test_warnings.pyNsOK�)�dw�iw�uwrd�rwrY�ignorez-Waz-Wir�always�)r�r�r�r�)ro�
subprocess�PIPErK�path�dirname�__file__�Popenr��
executabler�rl�len�count)r3r��opts�ae_msg�at_msgr��out�err�msg�	args_listr\s           r�
test_warningsz!Test_TextTestRunner.test_warnings�s���	=�	=�	=��:�?�:�?������1�1�3�3�3��3��2��
��c�n�d�4G�H�Q�Q�D�Q�Q��
�	,�	,�(�(��+�+�H�C��	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,����	,�	,�	,�	,��
�
�e�S�!�!�!�����S���2�&�&�&�(�	0�	0�C����S�Y�Y�s�^�^�Q�/�/�/�/��F�E�*�	0�	0�C����S�Y�Y�s�^�^�Q�/�/�/�/��^�0�(�;�
�^�U�$7��B�
�^�U�$7�8�

�	��	*�	*�D�� ��.�.��.�.�A��
0�
0�,�,�Q�/�/���S�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0����
0�
0�
0�
0��M�M�%��%�%�%����S��X�X�q�)�)�)�)�

��c�n�.A�8�L�
%�
%�#�
%�
%��
�	,�	,�(�(��+�+�H�C��	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,����	,�	,�	,�	,��
�
�e�S�!�!�!�����S���2�&�&�&�/�	0�	0�C����S�Y�Y�s�^�^�Q�/�/�/�/��F�#�	0�	0�C����S�Y�Y�s�^�^�Q�/�/�/�/�	0�	0s6�1B�B�B�4F�F	�F	�5H�H�Hc��tj}tj��}|t_	t	j��}|�|jj|u��|t_dS#|t_wxYwr)r�r�rrr	rrpr)r3�
old_stderr�fr"s    r�%testStdErrLookedUpAtInstantiationTimez9Test_TextTestRunner.testStdErrLookedUpAtInstantiationTimesh���Z�
��K�M�M����
�	$��,�.�.�F��O�O�F�M�0�A�5�6�6�6�#�C�J�J�J���C�J�#�#�#�#s�4A/�/A=c��tj��}tj|��}|�|jj|u��dSr)rrr	rrpr)r3r�r"s   r�testSpecifiedStreamUsedz+Test_TextTestRunner.testSpecifiedStreamUsed*s?���K�M�M���(��+�+������
�,��1�2�2�2�2�2rN)r>r?r@�__doc__r�r�rXrdrprrrr�r�r�r�r�requires_subprocessr�r�r�rrrrGrGZs������#�#�-�-�-�?�?�?�
+�+�+�
#�
#�
#�'�'�'�1�1�1�
0�0�0�.)�)�)� +�+�+�(	G�	G�	G�?�?�?�!�W� �"�"�70�70�#�"�70�r	$�	$�	$�3�3�3�3�3rrG�__main__)F)rrKr�r�r�rrrr	�
unittest.caser�unittest.test.supportrrr
rr$r.r0rBrErJrkrMr�rZrGr>�mainrrr�<module>r�su��	�	�	�	�	�	�	�	�
�
�
�
�
�
�
�
���������������"�"�"�"�"�"�H�H�H�H�H�H�H�H�!�!�!�9�9�9�
!�!�!�"&�&�&�&�
%�
%�
%�
%�
%�
%�
%�
%�	�	�	�	�	�	�	�	�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
]-�]-�]-�]-�]-�(�#�]-�]-�]-�@q;�q;�q;�q;�q;�x�(�q;�q;�q;�h	{=�{=�{=�{=�{=��)�{=�{=�{=�|T3�T3�T3�T3�T3�(�+�T3�T3�T3�n�z����H�M�O�O�O�O�O��r