Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.11/unittest/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.11/unittest/test/__pycache__/test_result.cpython-311.opt-2.pyc

�

TԚg������ddlZddlZddlZddlmZmZmZddlZddlZddl	m
Z
Gd�de��Zd�Z
d�Zd�ZGd	�d
��ZGd�dej��ZGd
�dej��Zeejj��ZdD]Zee=�dd�Zeed<edefe��ZGd�dej��ZGd�dej��Zedkrej��dSdS)�N)�warnings_helper�captured_stdout�captured_stderr)�strclassc�(�eZdZGd�d��ZdS)�
MockTracebackc��eZdZd�Zd�ZdS)� MockTraceback.TracebackExceptionc�<�|�dd��|_dS)N�capture_localsF)�getr)�self�args�kwargss   �6/usr/local/lib/python3.11/unittest/test/test_result.py�__init__z)MockTraceback.TracebackException.__init__s��"(�*�*�-=�u�"E�"E�D����c�D�dg}|jr|�d��|S)N�A traceback�locals)r�append�r�results  r�formatz'MockTraceback.TracebackException.formats+��#�_�F��"�
(��
�
�h�'�'�'��MrN)�__name__�
__module__�__qualname__rr�rr�TracebackExceptionr

s5������	F�	F�	F�	�	�	�	�	rrN)rrrrrrrrrs<���������������rrc�2�ttj_dS�N)�	traceback�unittestrrrr�restore_tracebackr$s�� )�H�O���rc�>�td��td���)Nzdo cleanup1zbad cleanup1)�print�	TypeErrorrrr�bad_cleanup1r(s��	�-����
�N�
#�
#�#rc�>�td��td���)Nzdo cleanup2zbad cleanup2)r&�
ValueErrorrrr�bad_cleanup2r+s��	�-����
�^�
$�
$�$rc�&�eZdZd�Zd�Zd�Zd�ZdS)�BufferedWriterc�"�d|_d|_dS�N��r�buffer�rs rrzBufferedWriter.__init__%s���������rc�&�|xj|z
c_dSr!)r2)r�args  r�writezBufferedWriter.write)s�����s�����rc�>�|xj|jz
c_d|_dSr/r1r3s r�flushzBufferedWriter.flush,s�����t�{�"�������rc��|jSr!)rr3s r�getvaluezBufferedWriter.getvalue0s
���{�rN)rrrrr6r8r:rrrr-r-$sP�������������������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)�Test_TestResultc���tj��}|�|�����|�t|j��d��|�t|j��d��|�|jd��|�|j	d��|�
|j��|�
|j��dS�NrF)
r#�
TestResult�
assertTrue�
wasSuccessful�assertEqual�len�errors�failures�testsRun�
shouldStop�assertIsNone�_stdout_buffer�_stderr_bufferrs  r�	test_initzTest_TestResult.test_init>s����$�&�&������,�,�.�.�/�/�/�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2����&�/�0�0�0����&�/�0�0�0�0�0rc��tj��}|���|�|jd��dS�NT)r#r?�stoprBrGrs  r�	test_stopzTest_TestResult.test_stopLs<���$�&�&�����
�
�
�����*�D�1�1�1�1�1rc� �Gd�dtj��}|d��}tj��}|�|��|�|�����|�t|j��d��|�t|j	��d��|�|j
d��|�|jd��|�|��dS)Nc��eZdZd�ZdS)�+Test_TestResult.test_startTest.<locals>.Fooc��dSr!rr3s r�test_1z2Test_TestResult.test_startTest.<locals>.Foo.test_1W����rN�rrrrTrrr�FoorRV�#������
�
�
�
�
rrWrTr�F�
r#�TestCaser?�	startTestr@rArBrCrDrErFrG�stopTest�rrW�testrs    r�test_startTestzTest_TestResult.test_startTestUs��	�	�	�	�	�(�#�	�	�	��s�8�}�}���$�&�&�������������,�,�.�.�/�/�/�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2���������rc�z�Gd�dtj��}|d��}tj��}|�|��|�|�����|�t|j��d��|�t|j	��d��|�|j
d��|�|jd��|�|��|�|�����|�t|j��d��|�t|j	��d��|�|j
d��|�|jd��dS)Nc��eZdZd�ZdS)�*Test_TestResult.test_stopTest.<locals>.Fooc��dSr!rr3s rrTz1Test_TestResult.test_stopTest.<locals>.Foo.test_1lrUrNrVrrrrWrckrXrrWrTrrYFrZr^s    r�
test_stopTestzTest_TestResult.test_stopTestjs���	�	�	�	�	�(�#�	�	�	��s�8�}�}���$�&�&�������������,�,�.�.�/�/�/�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2��������	
����,�,�.�.�/�/�/�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2�2�2rc�|�tj��}|���|���dSr!)r#r?�startTestRun�stopTestRunrs  r�test_startTestRun_stopTestRunz-Test_TestResult.test_startTestRun_stopTestRun�s:���$�&�&���������������rc�J�Gd�dtj��}|d��}tj��}|�|��|�|��|�|��|�|�����|�t|j
��d��|�t|j��d��|�|jd��|�|j
d��dS)Nc��eZdZd�ZdS)�,Test_TestResult.test_addSuccess.<locals>.Fooc��dSr!rr3s rrTz3Test_TestResult.test_addSuccess.<locals>.Foo.test_1�rUrNrVrrrrWrl�rXrrWrTrrYF)r#r[r?r\�
addSuccessr]r@rArBrCrDrErFrGr^s    r�test_addSuccesszTest_TestResult.test_addSuccess�s��	�	�	�	�	�(�#�	�	�	��s�8�}�}���$�&�&������������$���������������,�,�.�.�/�/�/�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2�2�2rc�0�Gd�dtj��}|d��}	|�d��n#tj��}YnxYwtj��}|�|��|�||��|�|��|�	|�
����|�t|j
��d��|�t|j��d��|�|jd��|�|jd��|jd\}}|�||��|�|t&��dS)Nc��eZdZd�ZdS)�,Test_TestResult.test_addFailure.<locals>.Fooc��dSr!rr3s rrTz3Test_TestResult.test_addFailure.<locals>.Foo.test_1�rUrNrVrrrrWrr�rXrrWrT�foorrYF)r#r[�fail�sys�exc_infor?r\�
addFailurer]�assertFalserArBrCrDrErFrG�assertIs�assertIsInstance�str�rrWr_�exc_info_tupler�	test_case�
formatted_excs       r�test_addFailurezTest_TestResult.test_addFailure�s���	�	�	�	�	�(�#�	�	�	��s�8�}�}��	,��I�I�e������	,� �\�^�^�N�N�N�����$�&�&������������$��/�/�/������������-�-�/�/�0�0�0�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2�#)�?�1�#5� �	�=��
�
�i��&�&�&����m�S�1�1�1�1�1s	�;�Ac�����Gd�dtj��}|d����fd�}|��}tj|�}tj��}|����|��|��|����|jdd��fd�|D��}|�	t|��d��|�d|d��dS)	Nc��eZdZd�ZdS)�DTest_TestResult.test_addFailure_filter_traceback_frames.<locals>.Fooc��dSr!rr3s rrTzKTest_TestResult.test_addFailure_filter_traceback_frames.<locals>.Foo.test_1�rUrNrVrrrrWr��rXrrWrTc�h��	��d��dS#tj��cYSxYw)Nrt)rurvrw�r_s�r�get_exc_infozMTest_TestResult.test_addFailure_filter_traceback_frames.<locals>.get_exc_info�s;���
&��	�	�%� � � � � ��
&��|�~�~�%�%�%���s��1rrYc���g|]}|�v�|��	Srr��.0�lr�s  �r�
<listcomp>zKTest_TestResult.test_addFailure_filter_traceback_frames.<locals>.<listcomp>��#���A�A�A��!�=�*@�*@�1�*@�*@�*@r� raise self.failureException(msg)�r#r[r"�format_exceptionr?r\rxr]rErBrC�assertIn�	rrWr�r~�full_excr�droppedr�r_s	       @@r�'test_addFailure_filter_traceback_framesz7Test_TestResult.test_addFailure_filter_traceback_frames�s"����	�	�	�	�	�(�#�	�	�	��s�8�}�}��	&�	&�	&�	&�	&�&������-�~�>���$�&�&������������$��/�/�/�����������*�1�-�
�A�A�A�A�h�A�A�A������W���q�)�)�)��
�
�8�'�!�*�E�E�E�E�Erc�����Gd�dtj��}|d����fd�}|��}tj|�}tj��}|����|��|��|����|jdd��fd�|D��}|�	t|��d��|�d|d��dS)	Nc��eZdZd�ZdS)�LTest_TestResult.test_addFailure_filter_traceback_frames_context.<locals>.Fooc��dSr!rr3s rrTzSTest_TestResult.test_addFailure_filter_traceback_frames_context.<locals>.Foo.test_1�rUrNrVrrrrWr��rXrrWrTc���		��d��dS#td���xYw#tj��cYSxYw)Nrt�*)rur*rvrwr�s�rr�zUTest_TestResult.test_addFailure_filter_traceback_frames_context.<locals>.get_exc_info�sU���
&�)��I�I�e�$�$�$�$�$��)�$�R�.�.�(�����
&��|�~�~�%�%�%���s��,�/�ArrYc���g|]}|�v�|��	Srrr�s  �rr�zSTest_TestResult.test_addFailure_filter_traceback_frames_context.<locals>.<listcomp>r�rr�r�r�s	       @@r�/test_addFailure_filter_traceback_frames_contextz?Test_TestResult.test_addFailure_filter_traceback_frames_context�s"����	�	�	�	�	�(�#�	�	�	��s�8�}�}��	&�	&�	&�	&�	&�&������-�~�>���$�&�&������������$��/�/�/�����������*�1�-�
�A�A�A�A�h�A�A�A������W���q�)�)�)��
�
�8�'�!�*�E�E�E�E�Erc��Gd�dtj��}d�}|��}|d��}tj��}|�|��|�||��|�|��|jdd}|�|�d��d��dS)Nc��eZdZd�ZdS)�`Test_TestResult.test_addFailure_filter_traceback_frames_chained_exception_self_loop.<locals>.Fooc��dSr!rr3s rrTzgTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_self_loop.<locals>.Foo.test_1rUrNrVrrrrWr�rXrrWc�v�	td��}||_||_|�#tj��cYSxYw)N�Loop��	Exception�	__cause__�__context__rvrw)�loops rr�ziTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_self_loop.<locals>.get_exc_infosC��
&� ��(�(��!%���#'�� ��
��
&��|�~�~�%�%�%���s�!�8rTrrYzException: Loop
�	r#r[r?r\rxr]rErB�count�rrWr�r~r_rr�s       r�Ctest_addFailure_filter_traceback_frames_chained_exception_self_loopzSTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_self_loops���	�	�	�	�	�(�#�	�	�	�	&�	&�	&�&������s�8�}�}���$�&�&������������$��/�/�/�����������*�1�-�
�����,�,�-@�A�A�1�E�E�E�E�Erc�(�Gd�dtj��}d�}|��}|d��}tj��}|�|��|�||��|�|��|jdd}|�|�d��d��|�|�d��d��|�|�d	��d��dS)
Nc��eZdZd�ZdS)�\Test_TestResult.test_addFailure_filter_traceback_frames_chained_exception_cycle.<locals>.Fooc��dSr!rr3s rrTzcTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_cycle.<locals>.Foo.test_11rUrNrVrrrrWr�0rXrrWc���	td��td��td��}}}||f||f||fg}|D]\}}||_||_�|�#tj��cYSxYw)N�A�B�Cr�)r�r�r��edges�ex1�ex2s      rr�zeTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_cycle.<locals>.get_exc_info4s���

&�$�C�.�.�)�C�.�.�)�C�.�.�a�1���Q��!�Q��!�Q��0�� %�*�*�H�C��$'�C�M�&)�C�O�O����
&��|�~�~�%�%�%���s�AA�A)rTrrYz
Exception: A
z
Exception: B
z
Exception: C
r�r�s       r�?test_addFailure_filter_traceback_frames_chained_exception_cyclezOTest_TestResult.test_addFailure_filter_traceback_frames_chained_exception_cycle/s(��	�	�	�	�	�(�#�	�	�	�	&�	&�	&�&������s�8�}�}���$�&�&������������$��/�/�/�����������*�1�-�
�����,�,�-=�>�>��B�B�B�����,�,�-=�>�>��B�B�B�����,�,�-=�>�>��B�B�B�B�Brc� �Gd�dtj��}|d��}	t���#tj��}YnxYwtj��}|�|��|�||��|�|��|�	|�
����|�t|j
��d��|�t|j��d��|�|jd��|�|jd��|j
d\}}|�||��|�|t&��dS)Nc��eZdZd�ZdS)�*Test_TestResult.test_addError.<locals>.Fooc��dSr!rr3s rrTz1Test_TestResult.test_addError.<locals>.Foo.test_1erUrNrVrrrrWr�drXrrWrTrYrF)r#r[r'rvrwr?r\�addErrorr]ryrArBrCrDrErFrGrzr{r|r}s       r�
test_addErrorzTest_TestResult.test_addErrorcs��	�	�	�	�	�(�#�	�	�	��s�8�}�}��	,��+�+���	,� �\�^�^�N�N�N�����$�&�&�������������n�-�-�-������������-�-�/�/�0�0�0�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2�#)�=��#3� �	�=��
�
�i��&�&�&����m�S�1�1�1�1�1s	�3�A
c��Gd�dtj��}|d��}tj��}d|_ttj_|�t��|�	��|�
|��|���|�t|j��d��|jd\}}|�d|��dS)Nc��eZdZd�ZdS)�1Test_TestResult.test_addError_locals.<locals>.Fooc��ddzdS)NrYrrr3s rrTz8Test_TestResult.test_addError_locals.<locals>.Foo.test_1�s���!����rNrVrrrrWr�s#������
�
�
�
�
rrWrTTrYrzA tracebacklocals)r#r[r?�	tb_localsrrr"�
addCleanupr$rg�runrhrBrCrD)rrWr_rrr�s      r�test_addError_localsz$Test_TestResult.test_addError_locals~s���	�	�	�	�	�(�#�	�	�	��s�8�}�}���$�&�&�����$1���!����)�*�*�*������������������������V�]�+�+�Q�/�/�/�#)�=��#3� �	�=����,�m�<�<�<�<�<rc�����G���fd�dtj��}d�|d���tj��������|�������|�t�j��d��|�t�j	��d��|��j
d��|��jd���jd\}}|�|���|�
d|���j	d\}}|�|���|�
d|��dS)	Nc���eZdZ���fd�ZdS)�,Test_TestResult.test_addSubTest.<locals>.Fooc� ��|�d���5|j�	ddzn##t$rtj��}YnwxYw����|��|�d��ddd��dS#1swxYwYdS)NrY�rtr�some recognizable failure)�subTest�_subtest�ZeroDivisionErrorrvrw�
addSubTestru)rr~r�subtestr_s  ���rrTz3Test_TestResult.test_addSubTest.<locals>.Foo.test_1�s�����\�\�a�\�(�(�	;�	;�"�m�G�8��!�����,�8�8�8�),�������8�����%�%�d�G�^�D�D�D��I�I�9�:�:�:�	;�	;�	;�	;�	;�	;�	;�	;�	;�	;�	;�	;����	;�	;�	;�	;�	;�	;s1�B�'�B�A�B�A�/B�B�
BNrV)rr�r_s���rrWr��s8�������
;�
;�
;�
;�
;�
;�
;�
;�
;rrWrTrYFrr�r�)r#r[r?r�ryrArBrCrDrErFrGrzr�)rrWrr�rr�r_s    @@@r�test_addSubTestzTest_TestResult.test_addSubTest�s������	;�	;�	;�	;�	;�	;�	;�	;�	;�(�#�	;�	;�	;����s�8�}�}���$�&�&�������������-�-�/�/�0�0�0�����V�]�+�+�Q�/�/�/�����V�_�-�-�q�1�1�1������!�,�,�,�����*�E�2�2�2�#)�=��#3� �	�=��
�
�i��)�)�)��
�
�)�=�9�9�9�#)�?�1�#5� �	�=��
�
�i��)�)�)��
�
�1�=�A�A�A�A�Arc��Gd�dt��}tj��}|�|�|����d|jjd<|�|�|����dS)Nc�*�eZdZGd�de��ZdS)�5Test_TestResult.testStackFrameTrimming.<locals>.Framec��eZdZiZdS)�>Test_TestResult.testStackFrameTrimming.<locals>.Frame.tb_frameN)rrr�	f_globalsrrr�tb_framer��s�������	�	�	rr�N)rrr�objectr�rrr�Framer��s>������
�
�
�
�
�6�
�
�
�
�
rr�T�
__unittest)r�r#r?ry�_is_relevant_tb_levelr�r�r@)rr�rs   r�testStackFrameTrimmingz&Test_TestResult.testStackFrameTrimming�s���	�	�	�	�	�F�	�	�	��$�&�&������5�5�e�<�<�=�=�=�15��� ��.�����4�4�U�;�;�<�<�<�<�<rc���tj��}d�|_d|_|�dd��|�|j��tj��}d�|_d|_|�dd��|�|j��tj��}d�|_d|_|�d��|�|j��dS)Nc��dSr/r��_s r�<lambda>z.Test_TestResult.testFailFast.<locals>.<lambda>�����rTc��dSr/rr�s rr�z.Test_TestResult.testFailFast.<locals>.<lambda>�r�rc��dSr/rr�s rr�z.Test_TestResult.testFailFast.<locals>.<lambda>�r�r)	r#r?�_exc_info_to_string�failfastr�r@rGrx�addUnexpectedSuccessrs  r�testFailFastzTest_TestResult.testFailFast�s����$�&�&��%2�]��"��������d�#�#�#�����)�*�*�*��$�&�&��%2�]��"�������$��%�%�%�����)�*�*�*��$�&�&��%2�]��"�����#�#�D�)�)�)�����)�*�*�*�*�*rc� ��t��}tj|d���}�fd�}|�|��}|�����|����d����dS)NT)�streamr�c�<����|j��dSr!)r@r�)rrs �rr_z5Test_TestResult.testFailFastSetByRunner.<locals>.test�s����O�O�F�O�,�,�,�,�,rz

OK
)r-r#�TextTestRunnerr�r8r@r:�endswith)rr��runnerr_rs`    r�testFailFastSetByRunnerz'Test_TestResult.testFailFastSetByRunner�s�����!�!���(���F�F�F��	-�	-�	-�	-�	-����D�!�!��������������)�)�2�2�:�>�>�?�?�?�?�?rN)rrrrKrOr`reriror�r�r�r�r�r�r�r�r�r�r�rrrr<r<4s*������	1�	1�	1�2�2�2����*3�3�3�6���03�3�3�N2�2�2�6F�F�F�4F�F�F�:F�F�F�2C�C�C�h2�2�2�6=�=�=�& B� B� B�D=�=�=�+�+�+�&@�@�@�@�@rr<c���eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	e
jej
jdkd	��d
���Ze
jej
jdkd	��d���Ze
jej
jdkd	��d���Ze
jej
jdkd	��d
���ZGd�de
j��Zdd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)�Test_TextTestResultNc��tjddd��}|�|�|��dtzdz��dS)NTrYz$testGetDescriptionWithoutDocstring (z8.Test_TextTestResult.testGetDescriptionWithoutDocstring)�r#�TextTestResultrB�getDescriptionrrs  r�"testGetDescriptionWithoutDocstringz6Test_TextTestResult.testGetDescriptionWithoutDocstring�s_���(��t�Q�7�7������%�%�d�+�+�6��A�J�K�	L�	L�	L�	L�	Lrc��|�dd���5tjddd��}|�|�|j��dtzdz��ddd��n#1swxYwY|�d��5tjddd��}|�|�|j��dtzdz��ddd��dS#1swxYwYdS)	NrY��rt�barTz+testGetSubTestDescriptionWithoutDocstring (zN.Test_TextTestResult.testGetSubTestDescriptionWithoutDocstring) (foo=1, bar=2)zsome messagezN.Test_TextTestResult.testGetSubTestDescriptionWithoutDocstring) [some message]�r�r#r�rBr�r�rrs  r�)testGetSubTestDescriptionWithoutDocstringz=Test_TextTestResult.testGetSubTestDescriptionWithoutDocstring�s���
�\�\�a�Q�\�
'�
'�	f�	f��,�T�4��;�;�F�����)�)�$�-�8�8�A�H�L�d�e�
f�
f�
f�	f�	f�	f�	f�	f�	f�	f�	f�	f�	f�	f����	f�	f�	f�	f��\�\�.�
)�
)�	f�	f��,�T�4��;�;�F�����)�)�$�-�8�8�A�H�L�d�e�
f�
f�
f�	f�	f�	f�	f�	f�	f�	f�	f�	f�	f�	f�	f����	f�	f�	f�	f�	f�	fs%�AA4�4A8�;A8�AC1�1C5�8C5c��|���5tjddd��}|�|�|j��dtzdz��ddd��dS#1swxYwYdS)NTrYz4testGetSubTestDescriptionWithoutDocstringAndParams (zT.Test_TextTestResult.testGetSubTestDescriptionWithoutDocstringAndParams) (<subtest>)r�rs  r�2testGetSubTestDescriptionWithoutDocstringAndParamszFTest_TextTestResult.testGetSubTestDescriptionWithoutDocstringAndParams�s���
�\�\�^�^�	#�	#��,�T�4��;�;�F�����)�)�$�-�8�8��"�#�&"�"�
#�
#�
#�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#����	#�	#�	#�	#�	#�	#s�AA2�2A6�9A6c��d}tjddd��}ddgfD]g}|�|��5|�|�|j��|t|fz��ddd��n#1swxYwY�hdS)NzmtestGetSubTestDescriptionForFalsyValues (%s.Test_TextTestResult.testGetSubTestDescriptionForFalsyValues) [%s]TrYr�r#r�r�rBr�r�r)r�expectedrr5s    r�'testGetSubTestDescriptionForFalsyValuesz;Test_TextTestResult.testGetSubTestDescriptionForFalsyValues�s���C���(��t�Q�7�7���t�R�=�	�	�C����c�"�"�
�
�� � ��)�)�$�-�8�8���#��.����
�
�
�
�
�
�
�
�
�
�
����
�
�
�
��	�	s�9A:�:A>	�A>	c�`�|�d���5|�dd���5tjddd��}|�|�|j��dtzdz��ddd��n#1swxYwYddd��dS#1swxYwYdS)	NrYr�r����bazr�Tz1testGetNestedSubTestDescriptionWithoutDocstring (z[.Test_TextTestResult.testGetNestedSubTestDescriptionWithoutDocstring) (baz=2, bar=3, foo=1)r�rs  r�/testGetNestedSubTestDescriptionWithoutDocstringzCTest_TextTestResult.testGetNestedSubTestDescriptionWithoutDocstrings;��
�\�\�a�\�
 �
 �	1�	1����!���+�+�
1�
1�!�0��t�Q�?�?��� � ��-�-�d�m�<�<��&�'�*0�0�1�1�1�
1�
1�
1�
1�
1�
1�
1�
1�
1�
1�
1����
1�
1�
1�
1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1����	1�	1�	1�	1�	1�	1s5�B#�AB�?B#�B	�B#�B	�B#�#B'�*B'c�b�|�dd���5|�dd���5tjddd��}|�|�|j��dtzd	z��ddd��n#1swxYwYddd��dS#1swxYwYdS)
NrYr�r�r�rTz;testGetDuplicatedNestedSubTestDescriptionWithoutDocstring (ze.Test_TextTestResult.testGetDuplicatedNestedSubTestDescriptionWithoutDocstring) (baz=3, bar=4, foo=1)r�rs  r�9testGetDuplicatedNestedSubTestDescriptionWithoutDocstringzMTest_TextTestResult.testGetDuplicatedNestedSubTestDescriptionWithoutDocstringsg��
�\�\�a�Q�\�
'�
'�	R�	R����!���+�+�
R�
R�!�0��t�Q�?�?��� � ��-�-�d�m�<�<��&�'�*Q�Q�R�R�R�
R�
R�
R�
R�
R�
R�
R�
R�
R�
R�
R����
R�
R�
R�
R�	R�	R�	R�	R�	R�	R�	R�	R�	R�	R�	R�	R����	R�	R�	R�	R�	R�	Rs5�B$�AB�B$�B	�B$�B	�B$�$B(�+B(r�z)Docstrings are omitted with -O2 and abovec��	tjddd��}|�|�|��dtzdz��dS)NTrYz(testGetDescriptionWithOneLineDocstring (zr.Test_TextTestResult.testGetDescriptionWithOneLineDocstring)
Tests getDescription() for a method with a docstring.r�rs  r�&testGetDescriptionWithOneLineDocstringz:Test_TextTestResult.testGetDescriptionWithOneLineDocstringsm��	D��(��t�Q�7�7������%�%�d�+�+����"H�H�	J�	J�	J�	J�	Jrc��	tjddd��}|�dd���5|�|�|j��dtzdz��ddd��dS#1swxYwYdS)NTrYr�r�z/testGetSubTestDescriptionWithOneLineDocstring (z�.Test_TextTestResult.testGetSubTestDescriptionWithOneLineDocstring) (foo=1, bar=2)
Tests getDescription() for a method with a docstring.rrs  r�-testGetSubTestDescriptionWithOneLineDocstringzATest_TextTestResult.testGetSubTestDescriptionWithOneLineDocstring$s���	D��(��t�Q�7�7��
�\�\�a�Q�\�
'�
'�	J�	J�����%�%�d�m�4�4����"H�H�
J�
J�
J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J����	J�	J�	J�	J�	J�	J��:A6�6A:�=A:c��	tjddd��}|�|�|��dtzdz��dS)NTrYz*testGetDescriptionWithMultiLineDocstring (z{.Test_TextTestResult.testGetDescriptionWithMultiLineDocstring)
Tests getDescription() for a method with a longer docstring.r�rs  r�(testGetDescriptionWithMultiLineDocstringz<Test_TextTestResult.testGetDescriptionWithMultiLineDocstring2sg��	��(��t�Q�7�7������%�%�d�+�+����"��	�	�	�	�	rc��	tjddd��}|�dd���5|�|�|j��dtzdz��ddd��dS#1swxYwYdS)NTrYr�r�z1testGetSubTestDescriptionWithMultiLineDocstring (z�.Test_TextTestResult.testGetSubTestDescriptionWithMultiLineDocstring) (foo=1, bar=2)
Tests getDescription() for a method with a longer docstring.rrs  r�/testGetSubTestDescriptionWithMultiLineDocstringzCTest_TextTestResult.testGetSubTestDescriptionWithMultiLineDocstring@s���	��(��t�Q�7�7��
�\�\�a�Q�\�
'�
'�	�	�����%�%�d�m�4�4����"��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rc�|�eZdZd�Zd�Zd�Zd�Zejd���Z	ejd���Z
d�Zd�Zd	Z
d
�Zd	S)�Test_TextTestResult.Testc��dSr!rr3s r�testSuccessz$Test_TextTestResult.Test.testSuccessQs���Drc�0�|�d��dS)N�skip��skipTestr3s r�testSkipz!Test_TextTestResult.Test.testSkipSs���M�M�&�!�!�!�!�!rc�0�|�d��dS�Nru�rur3s r�testFailz!Test_TextTestResult.Test.testFailUs���I�I�f�����rc� �td���)N�error)r�r3s r�	testErrorz"Test_TextTestResult.Test.testErrorWs���G�$�$�$rc�0�|�d��dSr!r"r3s r�testExpectedFailurez,Test_TextTestResult.Test.testExpectedFailureYs���I�I�f�����rc��dSr!rr3s r�testUnexpectedSuccessz.Test_TextTestResult.Test.testUnexpectedSuccess\s���Drc���|�dd���5	ddd��n#1swxYwY|�dd���5	ddd��dS#1swxYwYdS)N�onerY��a�twor���b)r�r3s r�testSubTestSuccessz+Test_TextTestResult.Test.testSubTestSuccess_s������e�q��)�)�
�
��
�
�
�
�
�
�
�
�
�
�
����
�
�
�
����e�q��)�)�
�
��
�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�
�
s�&�*�*�A�A�Ac���|�dd���5	ddd��n#1swxYwY|�dd���5|�d��ddd��n#1swxYwY|�dd�	��5|�d��ddd��n#1swxYwY|�d
d���5td
���#1swxYwYdS)
N�successrYr-rr�r0rur)�cr%r)�d)r�rrur�r3s r�testSubTestMixedz)Test_TextTestResult.Test.testSubTestMixedds������i�1��-�-�
�
��
�
�
�
�
�
�
�
�
�
�
����
�
�
�
����f���*�*�
&�
&��
�
�f�%�%�%�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&����
&�
&�
&�
&����f���*�*�
"�
"��	�	�&�!�!�!�
"�
"�
"�
"�
"�
"�
"�
"�
"�
"�
"����
"�
"�
"�
"����g���+�+�
)�
)���(�(�(�
)�
)�
)�
)����
)�
)�
)�
)�
)�
)sB�&�*�*�A*�*A.�1A.�B.�.B2�5B2�C � C$�'C$Nc�"�|j�|j�dSr!)�
tearDownErrorr3s r�tearDownz!Test_TextTestResult.Test.tearDownos���!�-��(�(�.�-r)rrrrrr#r&r#�expectedFailurer(r*r2r7r9r:rrr�TestrPs�������	�	�	�	"�	"�	"�	�	�	�	%�	%�	%�	�	!�	�	�
"�	!�	�	�	!�	�	�
"�	!�	�	�	�	�
	)�	)�	)��
�	)�	)�	)�	)�	)rr<c��t��}tj�|��}tj|d|��}|�|��}||_|�|��|���SrM)	r-r#r��_WritelnDecoratorr�r<r9r�r:)r�	test_name�	verbosityr9r�rr_s       r�	_run_testzTest_TextTestResult._run_testssq���!�!����2�2�6�:�:���(���y�A�A���y�y��#�#��*������������� � � rc��|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd��d	��|�|�d
d��d��|�|�dd��d
��dS)NrrY�.r�sr#�Fr&�Er(�xr*�u�rBrAr3s r�testDotsOutputz"Test_TextTestResult.testDotsOutput|s���������
�q�9�9�3�?�?�?�������
�A�6�6��<�<�<�������
�A�6�6��<�<�<��������Q�7�7��=�=�=�������(=�q�A�A�3�G�G�G�������(?��C�C�S�I�I�I�I�Irc�Z�t�d|jj��}|�|�dd��d|�d���|�|�dd��d|�d���|�|�d	d��d
|�d���|�|�dd��d
|�d���|�|�dd��d|�d���|�|�dd��d|�d���dS)NrCrr��
testSuccess (z.testSuccess) ... ok
r�
testSkip (z.testSkip) ... skipped 'skip'
r#�
testFail (z.testFail) ... FAIL
r&�testError (z.testError) ... ERROR
r(ztestExpectedFailure (z+.testExpectedFailure) ... expected failure
r*ztestUnexpectedSuccess (z/.testUnexpectedSuccess) ... unexpected success
�rr<rrBrA�r�	classnames  r�testLongOutputz"Test_TextTestResult.testLongOutput�s~���:�:�$�)�"8�:�:�	�������
�q�9�9�J��J�J�J�	L�	L�	L�������
�A�6�6�P�i�P�P�P�	R�	R�	R�������
�A�6�6�F�i�F�F�F�	H�	H�	H��������Q�7�7�I�y�I�I�I�	K�	K�	K�������(=�q�A�A�h��h�h�h�	j�	j�	j�������(?��C�C�n�9�n�n�n�	p�	p�	p�	p�	prc�Z�|�|�dd��d��dS)Nr2rYrCrIr3s r�testDotsOutputSubTestSuccessz0Test_TextTestResult.testDotsOutputSubTestSuccess�s-��������(<�a�@�@�#�F�F�F�F�Frc��t�d|jj��}|�|�dd��d|�d���dS)NrCr2r�ztestSubTestSuccess (z.testSubTestSuccess) ... ok
rPrQs  r�testLongOutputSubTestSuccessz0Test_TextTestResult.testLongOutputSubTestSuccess�s`���:�:�$�)�"8�:�:�	�������(<�a�@�@�X�	�X�X�X�	Z�	Z�	Z�	Z�	Zrc�Z�|�|�dd��d��dS)Nr7rY�sFErIr3s r�testDotsOutputSubTestMixedz.Test_TextTestResult.testDotsOutputSubTestMixed�s-��������(:�A�>�>��F�F�F�F�Frc��t�d|jj��}|�|�dd��d|�d|�d|�d|�d�	��dS)	NrCr7r�ztestSubTestMixed (z,.testSubTestMixed) ... 
  testSubTestMixed (zG.testSubTestMixed) [skip] (b=2) ... skipped 'skip'
  testSubTestMixed (z=.testSubTestMixed) [fail] (c=3) ... FAIL
  testSubTestMixed (z+.testSubTestMixed) [error] (d=4) ... ERROR
rPrQs  r�testLongOutputSubTestMixedz.Test_TextTestResult.testLongOutputSubTestMixed�s����:�:�$�)�"8�:�:�	�������(:�A�>�>�_�Y�_�_�'0�_�_�'0�_�_�(1�_�_�_�	`�	`�	`�	`�	`rc���|�ddtd����}|�|d��|�ddtd����}|�|d��|�ddtd����}|�|d	��|�d
dtd����}|�|d��dS)NrrYrurEr&�EFr#r%�FEr�sF)rA�AssertionErrorrBr�)r�outs  r�testDotsOutputTearDownFailz.Test_TextTestResult.testDotsOutputTearDownFail�s����n�n�]�A�~�f�/E�/E�F�F������c�"�"�"��n�n�[�!�^�F�-C�-C�D�D������d�#�#�#��n�n�Z��I�g�,>�,>�?�?������d�#�#�#��n�n�Z��N�6�,B�,B�C�C������d�#�#�#�#�#rc�4�t�d|jj��}|�ddt	d����}|�|d|�d���|�ddt	d����}|�|d|�d	|�d
���|�ddt
d����}|�|d
|�d|�d���|�ddt	d����}|�|d|�d|�d���dS)NrCrr�rurLz.testSuccess) ... FAIL
r&rOz!.testError) ... ERROR
testError (z.testError) ... FAIL
r#r%rNz.testFail) ... FAIL
testFail (z.testFail) ... ERROR
rrMz(.testSkip) ... skipped 'skip'
testSkip (z.testSkip) ... FAIL
)rr<rrArarBr�)rrRrbs   r�testLongOutputTearDownFailz.Test_TextTestResult.testLongOutputTearDownFail�s����:�:�$�)�"8�:�:�	��n�n�]�A�~�f�/E�/E�F�F������L��L�L�L�	N�	N�	N��n�n�[�!�^�F�-C�-C�D�D������I�y�I�I�'0�I�I�I�	J�	J�	J��n�n�Z��I�g�,>�,>�?�?������H�i�H�H�&/�H�H�H�	I�	I�	I��n�n�Z��N�6�,B�,B�C�C������G�i�G�G�&/�G�G�G�	H�	H�	H�	H�	Hrr!)rrr�maxDiffr�r�rrr
r
r#�skipIfrv�flags�optimizerrrrr[r<rArJrSrUrWrZr\rcrerrrr�r��sO�������G�L�L�L�
f�
f�
f�#�#�#����1�1�1�R�R�R��X�_�S�Y�'�1�,�@�B�B�J�J�B�B�J��X�_�S�Y�'�1�,�@�B�B�
J�
J�B�B�
J��X�_�S�Y�'�1�,�@�B�B�
�
�B�B�
��X�_�S�Y�'�1�,�@�B�B���B�B��!)�!)�!)�!)�!)�x� �!)�!)�!)�F!�!�!�!�J�J�J�
p�
p�
p�G�G�G�Z�Z�Z�
G�G�G�`�`�`�$�$�$�H�H�H�H�Hrr�)�addSkip�addExpectedFailurer�rc�Z�g|_g|_d|_d|_d|_d|_dSr>)rErDrFrGr2r�)rr��descriptionsr@s    rrr�s0���D�M��D�K��D�M��D�O��D�K��D�N�N�Nrr�	OldResultc�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�Test_OldTestResultc��tjdtf��5t��}|�|��|�t
|j��|��ddd��dS#1swxYwYdS)NzTestResult has no add.+ method,)r�check_warnings�RuntimeWarningrnr�rBrCrE)rr_rErs    r�assertOldResultWarningz)Test_OldTestResult.assertOldResultWarning�s���
�
+�2�N�C�E�E�	=�	=��[�[�F��H�H�V�������S���1�1�8�<�<�<�		=�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=����	=�	=�	=�	=�	=�	=s�AA5�5A9�<A9c��Gd�dtj��}dD]4\}}||��}|�|t|�����5dS)Nc�T�eZdZd�Zejd���Zejd���ZdS)�2Test_OldTestResult.testOldTestResult.<locals>.Testc�0�|�d��dS)N�foobarrr3s rrz;Test_OldTestResult.testOldTestResult.<locals>.Test.testSkip�s���
�
�h�'�'�'�'�'rc��t�r!)r'r3s r�testExpectedFailzCTest_OldTestResult.testOldTestResult.<locals>.Test.testExpectedFail�s���rc��dSr!rr3s rr*zHTest_OldTestResult.testOldTestResult.<locals>.Test.testUnexpectedSuccess�s���rN)rrrrr#r;r{r*rrrr<rw�s]������
(�
(�
(�
�
%�
 �
 �&�
%�
 �
�
%�
�
�&�
%�
�
�
rr<))rT)r{T)r*F)r#r[rt�int)rr<r?�should_passr_s     r�testOldTestResultz$Test_OldTestResult.testOldTestResult�s���	�	�	�	�	�8�$�	�	�	�'I�	D�	D�"�I�{��4�	�?�?�D��'�'��c�k�/�.B�.B�C�C�C�C�		D�	Drc�t�Gd�dtj��}|�|d��d��dS)Nc��eZdZd�Zd�ZdS)�7Test_OldTestResult.testOldTestTesultSetup.<locals>.Testc�0�|�d��dS)N�	no reasonrr3s r�setUpz=Test_OldTestResult.testOldTestTesultSetup.<locals>.Test.setUp�s���
�
�k�*�*�*�*�*rc��dSr!rr3s r�testFooz?Test_OldTestResult.testOldTestTesultSetup.<locals>.Test.testFoo�rUrN)rrrr�r�rrrr<r��s2������
+�
+�
+�
�
�
�
�
rr<r�r)r#r[rt�rr<s  r�testOldTestTesultSetupz)Test_OldTestResult.testOldTestTesultSetup�sU��	�	�	�	�	�8�$�	�	�	�
	
�#�#�D�D��O�O�Q�7�7�7�7�7rc��tjd��Gd�dtj����}|�|d��d��dS)Nr�c��eZdZd�ZdS)�7Test_OldTestResult.testOldTestResultClass.<locals>.Testc��dSr!rr3s rr�z?Test_OldTestResult.testOldTestResultClass.<locals>.Test.testFoo�rUrN�rrrr�rrrr<r��s#������
�
�
�
�
rr<r�r)r#rr[rtr�s  r�testOldTestResultClassz)Test_OldTestResult.testOldTestResultClass�sj��	��{�	#�	#�	�	�	�	�	�8�$�	�	�
$�	#�	�	
�#�#�D�D��O�O�Q�7�7�7�7�7rc���Gd�dtj��}tjtt	j�����}|�|d����dS)Nc��eZdZd�ZdS)�8Test_OldTestResult.testOldResultWithRunner.<locals>.Testc��dSr!rr3s rr�z@Test_OldTestResult.testOldResultWithRunner.<locals>.Test.testFoo�rUrNr�rrrr<r��rXrr<)�resultclassr�r�)r#r[r�rn�io�StringIOr�)rr<r�s   r�testOldResultWithRunnerz*Test_OldTestResult.testOldResultWithRunner�sx��	�	�	�	�	�8�$�	�	�	��(�Y�13����@�@�@��	�
�
�4�4�	�?�?�#�#�#�#�#rN)rrrrtrr�r�r�rrrrprp�sb������=�=�=�D�D�D�"8�8�8�8�8�8�$�$�$�$�$rrpc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestOutputBufferingc�J�tj|_tj|_dSr!)rv�stdout�	_real_out�stderr�	_real_errr3s rr�zTestOutputBuffering.setUp	s�����������rc�J�|jt_|jt_dSr!)r�rvr�r�r�r3s rr:zTestOutputBuffering.tearDown
s���^��
��^��
�
�
rc��|j}|j}tj��}|�|j��|�|tj��|�|tj	��|�
|��|�|tj��|�|tj	��dSr!)r�r�r#r?ryr2rzrvr�r�r\)r�real_out�real_errrs    r�testBufferOutputOffz'TestOutputBuffering.testBufferOutputOffs����>���>���$�&�&�������'�'�'��
�
�h��
�+�+�+��
�
�h��
�+�+�+���������
�
�h��
�+�+�+��
�
�h��
�+�+�+�+�+rc�$�|j}|j}tj��}|�|j��d|_|�|tj��|�|tj	��|�
|��|�|tj��|�|tj	��|�tjtj��|�tj	tj��|�tjtj	��tj}tj	}tj��|_tj��|_t#d��t#dtj	���|�|���d��|�|���d��|�|j���d��|�|j���d��|�|��|�|��|�tj|j��|�tj	|j��|�|j���d��|�|j���d��|�|���d��|�|���d��dS)NTrtr���filezfoo
zbar
r0)r�r�r#r?ryr2rzrvr�r�r\�assertIsNotr{r�r��_original_stdout�_original_stderrr&rBr:rnr])rr�r�r�
out_stream�
err_streams      r�#testBufferOutputStartTestAddSuccessz7TestOutputBuffering.testBufferOutputStartTestAddSuccess s����>���>���$�&�&�������'�'�'���
��
�
�h��
�+�+�+��
�
�h��
�+�+�+������������3�:�.�.�.�����3�:�.�.�.����c�j�"�+�6�6�6����c�j�"�+�6�6�6������S�Z�0�0�0��Z�
��Z�
�"$�+�-�-���"$�+�-�-���
�e����
�e�#�*�%�%�%�%�����,�,�.�.��8�8�8�����,�,�.�.��8�8�8�����0�9�9�;�;�R�@�@�@�����0�9�9�;�;�R�@�@�@����$������������
�
�c�j�&�"9�:�:�:��
�
�c�j�&�"9�:�:�:�����0�9�9�;�;�R�@�@�@�����0�9�9�;�;�R�@�@�@�����,�,�.�.��3�3�3�����,�,�.�.��3�3�3�3�3rc�d�tj��}d|_|�|��|SrM)r#r?r2r\rs  r�getStartedResultz$TestOutputBuffering.getStartedResultPs0���$�&�&����
���������
rc���ttj_|�t
��dD�]�\}}}|���}tj}tj	}tj��|_tj��|_
tdtj���|rtdtj	���t||��}||d��|�|��t||��}|�t%|��d��|d\}	}
t'jd��}d	}|rt'jd
��}d|�|��}
|�|	|��|�|j���|��|�|j
���|��|�|
|
�����dS)N)�rDr�T�rErxFr�r�rtr�r��NNNrYrz9
                Stdout:
                foo
            r0z9
                Stderr:
                bar
            r)rr#rr"r�r$r�rvr�r�r�r�r�r�r&�getattrr]rBrC�textwrap�dedentrzr:�assertMultiLineEqual)r�message_attr�add_attr�
include_errorr�buffered_out�buffered_err�addFunction�result_listr_�message�expectedOutMessage�expectedErrMessage�expectedFullMessages              r�!testBufferOutputAddErrorOrFailurez5TestOutputBuffering.testBufferOutputAddErrorOrFailureVs���$1���!����)�*�*�*�6
�)	D�)	D�1�L�(�M��*�*�,�,�F��:�L��:�L�&(�k�m�m�F�#�&(�k�m�m�F�#��%�c�j�)�)�)�)��
.��e�#�*�-�-�-�-�"�&�(�3�3�K��K��0�1�1�1��O�O�D�!�!�!�!�&�,�7�7�K����S��-�-�q�1�1�1�'��N�M�D�'�!)��2�"�"��"$���
�%-�_�6�&�&�"��
8J�7I�K]�K]�"^���M�M�$��%�%�%����V�4�=�=�?�?�AS�T�T�T����V�4�=�=�?�?�AS�T�T�T��%�%�g�/B�C�C�C�C�S)	D�)	Drc��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�t|��|��|�d
|��|�||��dS)NTc��eZdZd�Zd�ZdS)�0TestOutputBuffering.testBufferSetUp.<locals>.Fooc�.�td��ddzdS�N�set uprYr�r&r3s rr�z6TestOutputBuffering.testBufferSetUp.<locals>.Foo.setUp�s���h�����!����rc��dSr!rr3s r�test_fooz9TestOutputBuffering.testBufferSetUp.<locals>.Foo.test_foo�rUrN�rrrr�r�rrrrWr���2������
�
�
�
�
�
�
�
rrWr��
Stdout:
set up
rY�
test_foo (�
.test_foo)r�#ZeroDivisionError: division by zero�
rr#r?r2r[�	TestSuiterBr:rCrDrr|r��	rr�rrW�suite�expected_out�descriptionrr�s	         r�testBufferSetUpz#TestOutputBuffering.testBufferSetUp�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�,��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�<�8�C�=�=�<�<�<��#)�=��#3� �	�=�����Y����5�5�5��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2��/�3�3c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�t|��|��|�d
|��|�||��dS)NTc��eZdZd�Zd�ZdS)�3TestOutputBuffering.testBufferTearDown.<locals>.Fooc�.�td��ddzdS�Nz	tear downrYrr�r3s rr:z<TestOutputBuffering.testBufferTearDown.<locals>.Foo.tearDown�����k�"�"�"��!����rc��dSr!rr3s rr�z<TestOutputBuffering.testBufferTearDown.<locals>.Foo.test_foo�rUrN)rrrr:r�rrrrWr��r�rrWr�z
Stdout:
tear down
rYr�r�rr�r�r�s	         r�testBufferTearDownz&TestOutputBuffering.testBufferTearDown�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�/��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�<�8�C�=�=�<�<�<��#)�=��#3� �	�=�����Y����5�5�5��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2r�c���t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�t|��|��|�d
|��|�
d|��|�d|��|�
d
|��|j	d\}}|�t|��|��|�d|��|�
d|��|�||��dS)NTc��eZdZd�Zd�ZdS)�5TestOutputBuffering.testBufferDoCleanups.<locals>.Fooc��td��|�t��|�t��dS�Nr��r&r�r(r+r3s rr�z;TestOutputBuffering.testBufferDoCleanups.<locals>.Foo.setUp��7���h��������-�-�-�����-�-�-�-�-rc��dSr!rr3s rr�z>TestOutputBuffering.testBufferDoCleanups.<locals>.Foo.test_foo�rUrNr�rrrrWr��s2������
.�
.�
.�
�
�
�
�
rrWr��(
Stdout:
set up
do cleanup2
do cleanup1
r�r�r�r�ValueError: bad cleanup2r'�
Stdout:
set up
do cleanup2
�
do cleanup1
rY�TypeError: bad cleanup1r*�rr#r?r2r[r�rBr:rCrDrr|r��assertNotInr�s	         r�testBufferDoCleanupsz(TestOutputBuffering.testBufferDoCleanups�s��
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�F��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�<�8�C�=�=�<�<�<��#)�=��#3� �	�=�����Y����5�5�5��
�
�0�-�@�@�@�����m�4�4�4��
�
�8�-�H�H�H����*�M�:�:�:�#)�=��#3� �	�=�����Y����5�5�5��
�
�/��?�?�?�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�t|��|��|�d
|��|�
d|��|�
d|��|�d
|��|�
d|��|�
d|��|j	d\}}|�t|��|��|�d|��|�
d|��|�
d|��|�d|��|�
d|��|j	d\}}|�t|��|��|�d|��|�
d|��|�
d|��|�||��dS)NTc��eZdZd�Zd�ZdS)�;TestOutputBuffering.testBufferSetUp_DoCleanups.<locals>.Fooc��td��|�t��|�t��ddzdSr�r�r3s rr�zATestOutputBuffering.testBufferSetUp_DoCleanups.<locals>.Foo.setUp�s>���h��������-�-�-�����-�-�-��!����rc��dSr!rr3s rr�zDTestOutputBuffering.testBufferSetUp_DoCleanups.<locals>.Foo.test_foo�rUrNr�rrrrWr��s2������
�
�
�

�
�
�
�
rrWr�r�rr�r�rr�r*r'r��
do cleanup2
r�rYr�r�r�r�r�r�r�s	         r�testBufferSetUp_DoCleanupsz.TestOutputBuffering.testBufferSetUp_DoCleanups�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�F��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�<�8�C�=�=�<�<�<��#)�=��#3� �	�=�����Y����5�5�5��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�+�]�;�;�;����*�M�:�:�:����*�M�:�:�:�#)�=��#3� �	�=�����Y����5�5�5��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�8�-�H�H�H����*�M�:�:�:�#)�=��#3� �	�=�����Y����5�5�5��
�
�/��?�?�?����,�m�<�<�<�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�t|��|��|�d
|��|�
d|��|�
d|��|�d
|��|�
d|��|�
d|��|j	d\}}|�t|��|��|�d|��|�
d|��|�
d|��|�d|��|�
d|��|j	d\}}|�t|��|��|�d|��|�
d|��|�
d|��|�||��dS)NTc� �eZdZd�Zd�Zd�ZdS)�>TestOutputBuffering.testBufferTearDown_DoCleanups.<locals>.Fooc��td��|�t��|�t��dSr�r�r3s rr�zDTestOutputBuffering.testBufferTearDown_DoCleanups.<locals>.Foo.setUp�r�rc�.�td��ddzdSr�r�r3s rr:zGTestOutputBuffering.testBufferTearDown_DoCleanups.<locals>.Foo.tearDownr�rc��dSr!rr3s rr�zGTestOutputBuffering.testBufferTearDown_DoCleanups.<locals>.Foo.test_foorUrN)rrrr�r:r�rrrrWr��sA������
.�
.�
.�
�
�
�
�
�
�
�
rrWr�z2
Stdout:
set up
tear down
do cleanup2
do cleanup1
rr�r�rr�r*r'z
Stdout:
set up
tear down
r�r�rYr�r�z&
Stdout:
set up
tear down
do cleanup2
r�r�r�r�s	         r�testBufferTearDown_DoCleanupsz1TestOutputBuffering.testBufferTearDown_DoCleanups�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�		�		�		�		�		�(�#�		�		�		��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�Q��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�<�8�C�=�=�<�<�<��#)�=��#3� �	�=�����Y����5�5�5��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�6�
�F�F�F����*�M�:�:�:����*�M�:�:�:�#)�=��#3� �	�=�����Y����5�5�5��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�C�]�S�S�S����*�M�:�:�:�#)�=��#3� �	�=�����Y����5�5�5��
�
�/��?�?�?����,�m�<�<�<�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�|j|��|�d
|��|�||��dS)NTc�*�eZdZed���Zd�ZdS)�5TestOutputBuffering.testBufferSetupClass.<locals>.Fooc�.�td��ddzdS�N�set up classrYrr���clss r�
setUpClassz@TestOutputBuffering.testBufferSetupClass.<locals>.Foo.setUpClass)s���n�%�%�%��!����rc��dSr!rr3s rr�z>TestOutputBuffering.testBufferSetupClass.<locals>.Foo.test_foo-rUrN�rrr�classmethodrr�rrrrWr(�<������
�
�
��[�
�
�
�
�
�
rrWr��
Stdout:
set up class
rY�setUpClass (�)rr��
rr#r?r2r[r�rBr:rCrDrr�r�r�s	         r�testBufferSetupClassz(TestOutputBuffering.testBufferSetupClass#s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�2��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�5�X�c�]�]�5�5�5��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�|j|��|�d
|��|�||��dS)NTc�*�eZdZed���Zd�ZdS)�8TestOutputBuffering.testBufferTearDownClass.<locals>.Fooc�.�td��ddzdS�N�tear down classrYrr�rs r�
tearDownClasszFTestOutputBuffering.testBufferTearDownClass.<locals>.Foo.tearDownClass@����'�(�(�(��!����rc��dSr!rr3s rr�zATestOutputBuffering.testBufferTearDownClass.<locals>.Foo.test_fooDrUrN)rrrrrr�rrrrWr?rrrWr��
Stdout:
tear down class
rY�tearDownClass (rrr�rr�s	         r�testBufferTearDownClassz+TestOutputBuffering.testBufferTearDownClass:s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�5��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�8���
�
�8�8�8��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�|j|��|�d
|��|�
d|��|�||��|j	d\}}|�|j|��|�d
|��|�
d|��|�||��dS)NTc�@�eZdZed���Zed���Zd�ZdS)�:TestOutputBuffering.testBufferDoClassCleanups.<locals>.Fooc��td��|�t��|�t��dS�Nr�r&�addClassCleanupr(r+rs rrzETestOutputBuffering.testBufferDoClassCleanups.<locals>.Foo.setUpClassW�>���n�%�%�%��#�#�L�1�1�1��#�#�L�1�1�1�1�1rc�$�td��dS)Nrr�rs rrzHTestOutputBuffering.testBufferDoClassCleanups.<locals>.Foo.tearDownClass\s���'�(�(�(�(�(rc��dSr!rr3s rr�zCTestOutputBuffering.testBufferDoClassCleanups.<locals>.Foo.test_foo_rUrN�rrrrrrr�rrrrWr VsW������
�
2�
2��[�
2��
)�
)��[�
)�
�
�
�
�
rrWr��1
Stdout:
tear down class
do cleanup2
do cleanup1
r�rrrr�r'rYr�r*�rr#r?r2r[r�rBr:rCrDrr�r�r�r�s	         r�testBufferDoClassCleanupsz-TestOutputBuffering.testBufferDoClassCleanupsQs���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�
	�
	�
	�
	�
	�(�#�
	�
	�
	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�O��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�8���
�
�8�8�8��#)�=��#3� �	�=�����.��<�<�<��
�
�0�-�@�@�@�����m�4�4�4��
�
�l�M�2�2�2�#)�=��#3� �	�=�����.��<�<�<��
�
�/��?�?�?�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c���t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�|j|��|�d
|��|�
d|��|�
d|��|�d
|��|j	d\}}|�|j|��|�d|��|�
d|��|�
d|��|�||��|j	d\}}|�|j|��|�d|��|�
d|��|�
d|��|�||��dS)NTc�*�eZdZed���Zd�ZdS)�ETestOutputBuffering.testBufferSetupClass_DoClassCleanups.<locals>.Fooc��td��|�t��|�t��ddzdSrr#rs rrzPTestOutputBuffering.testBufferSetupClass_DoClassCleanups.<locals>.Foo.setUpClassxsE���n�%�%�%��#�#�L�1�1�1��#�#�L�1�1�1��!����rc��dSr!rr3s rr�zNTestOutputBuffering.testBufferSetupClass_DoClassCleanups.<locals>.Foo.test_foo~rUrNr
rrrrWr.ws<������
�
�
��[�
�

�
�
�
�
rrWr�z.
Stdout:
set up class
do cleanup2
do cleanup1
rrrrr�r*r'r
rYr�r�r�r�r*r�s	         r�$testBufferSetupClass_DoClassCleanupsz8TestOutputBuffering.testBufferSetupClass_DoClassCleanupsrs���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�L��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�5�X�c�]�]�5�5�5��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�1�=�A�A�A�#)�=��#3� �	�=�����.��<�<�<��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�l�M�2�2�2�#)�=��#3� �	�=�����.��<�<�<��
�
�/��?�?�?����,�m�<�<�<�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c���t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}tj|d��g��}||��d}|�|���|��|�t|j	��d��dt|���d�}|j	d	\}}|�|j|��|�d
|��|�
d|��|�
d|��|�d
|��|j	d\}}|�|j|��|�d|��|�
d|��|�
d|��|�||��|j	d\}}|�|j|��|�d|��|�
d|��|�
d|��|�||��dS)NTc�@�eZdZed���Zed���Zd�ZdS)�HTestOutputBuffering.testBufferTearDownClass_DoClassCleanups.<locals>.Fooc��td��|�t��|�t��dSr"r#rs rrzSTestOutputBuffering.testBufferTearDownClass_DoClassCleanups.<locals>.Foo.setUpClass�r%rc�.�td��ddzdSrr�rs rrzVTestOutputBuffering.testBufferTearDownClass_DoClassCleanups.<locals>.Foo.tearDownClass�rrc��dSr!rr3s rr�zQTestOutputBuffering.testBufferTearDownClass_DoClassCleanups.<locals>.Foo.test_foo�rUrNr(rrrrWr4�sW������
�
2�
2��[�
2��
�
��[�
�
�
�
�
�
rrWr�r)rrrrr�r*r'rrYr�r�r�r�r*r�s	         r�'testBufferTearDownClass_DoClassCleanupsz;TestOutputBuffering.testBufferTearDownClass_DoClassCleanups�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�O��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�8���
�
�8�8�8��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�4�m�D�D�D�#)�=��#3� �	�=�����.��<�<�<��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�l�M�2�2�2�#)�=��#3� �	�=�����.��<�<�<��
�
�/��?�?�?����,�m�<�<�<�����}�5�5�5��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}Gd�dt
��}d|_|tjd<|�	tjj
d��tj|d��g��}||��d}|�|�
��|��|�t|j��d��d	}|jd
\}}	|�|j|��|�d|	��|�||	��dS)NTc��eZdZd�ZdS)�6TestOutputBuffering.testBufferSetUpModule.<locals>.Fooc��dSr!rr3s rr�z?TestOutputBuffering.testBufferSetUpModule.<locals>.Foo.test_foo�rUrN�rrrr�rrrrWr;�rXrrWc�$�eZdZed���ZdS)�9TestOutputBuffering.testBufferSetUpModule.<locals>.Modulec�.�td��ddzdS�N�
set up modulerYrr�rrr�setUpModulezETestOutputBuffering.testBufferSetUpModule.<locals>.Module.setUpModule�s���o�&�&�&��!����rN�rrr�staticmethodrCrrr�Moduler?��-������
�
�
��\�
�
�
rrFr��
Stdout:
set up module
rY�setUpModule (Module)rr��rr#r?r2r[r�rrv�modulesr��popr�rBr:rCrDr�r��
rr�rrWrFr�r�r�rr�s
          r�testBufferSetUpModulez)TestOutputBuffering.testBufferSetUpModule�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	�	�	�	�	�	�V�	�	�	�"��� &���H���������2�2�2��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�3��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�,��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}Gd�dt
��}d|_|tjd<|�	tjj
d��tj|d��g��}||��d}|�|�
��|��|�t|j��d��d	}|jd
\}}	|�|j|��|�d|	��|�||	��dS)NTc��eZdZd�ZdS)�9TestOutputBuffering.testBufferTearDownModule.<locals>.Fooc��dSr!rr3s rr�zBTestOutputBuffering.testBufferTearDownModule.<locals>.Foo.test_foo�rUrNr=rrrrWrQ�rXrrWc�$�eZdZed���ZdS)�<TestOutputBuffering.testBufferTearDownModule.<locals>.Modulec�.�td��ddzdS�Nztear down modulerYrr�rrr�tearDownModulezKTestOutputBuffering.testBufferTearDownModule.<locals>.Module.tearDownModule�����(�)�)�)��!����rN)rrrrErWrrrrFrT�rGrrFr��
Stdout:
tear down module
rY�tearDownModule (Module)rr�rJrMs
          r�testBufferTearDownModulez,TestOutputBuffering.testBufferTearDownModule�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	�	�	�	�	�	�V�	�	�	�"��� &���H���������2�2�2��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�6��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�/��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K��
�
�l�M�2�2�2�2�2r�c�&�t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}Gd�dt
��}d|_|tjd<|�	tjj
d��tj|d��g��}||��d}|�|�
��|��|�t|j��d��d	}|jd
\}}	|�|j|��|�d|	��|�d|	��|�||	��dS)
NTc��eZdZd�ZdS)�;TestOutputBuffering.testBufferDoModuleCleanups.<locals>.Fooc��dSr!rr3s rr�zDTestOutputBuffering.testBufferDoModuleCleanups.<locals>.Foo.test_foorUrNr=rrrrWr^rXrrWc�$�eZdZed���ZdS)�>TestOutputBuffering.testBufferDoModuleCleanups.<locals>.Modulec��td��tjt��tjt��dS�NrB�r&r#�addModuleCleanupr(r+rrrrCzJTestOutputBuffering.testBufferDoModuleCleanups.<locals>.Module.setUpModule�8���o�&�&�&��)�,�7�7�7��)�,�7�7�7�7�7rNrDrrrrFras-������
�
8�
8��\�
8�
8�
8rrFr�z!
Stdout:
do cleanup2
do cleanup1
rYrZrr�r'�rr#r?r2r[r�rrvrKr�rLr�rBr:rCrDr�r�r�rMs
          r�testBufferDoModuleCleanupsz.TestOutputBuffering.testBufferDoModuleCleanups�s���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	�	8�	8�	8�	8�	8�V�	8�	8�	8�"��� &���H���������2�2�2��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�>��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�/��#)�=��#3� �	�=�����.��<�<�<��
�
�0�-�@�@�@�����m�4�4�4��
�
�l�M�2�2�2�2�2r�c��t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}Gd�dt
��}d|_|tjd<|�	tjj
d��tj|d��g��}||��d}|�|�
��|��|�t|j��d��d	}|jd
\}}	|�|j|��|�d|	��|�d|	��|�d
|	��|�d|	��|jd\}}	|�||	��|�|j|��|�d|	��|�d|	��|�d
|	��|�||	��dS)NTc��eZdZd�ZdS)�GTestOutputBuffering.testBufferSetUpModule_DoModuleCleanups.<locals>.Fooc��dSr!rr3s rr�zPTestOutputBuffering.testBufferSetUpModule_DoModuleCleanups.<locals>.Foo.test_foorUrNr=rrrrWrkrXrrWc�$�eZdZed���ZdS)�JTestOutputBuffering.testBufferSetUpModule_DoModuleCleanups.<locals>.Modulec��td��tjt��tjt��ddzdSrArdrrrrCzVTestOutputBuffering.testBufferSetUpModule_DoModuleCleanups.<locals>.Module.setUpModule"s?���o�&�&�&��)�,�7�7�7��)�,�7�7�7��!����rNrDrrrrFrn!s-������
�
�
��\�
�
�
rrFr�z/
Stdout:
set up module
do cleanup2
do cleanup1
r�rIrr�r*r'rHrYr�r�rgrMs
          r�&testBufferSetUpModule_DoModuleCleanupsz:TestOutputBuffering.testBufferSetUpModule_DoModuleCleanupss���
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	�	�	�	�	�	�V�	�	�	�"��� &���H���������2�2�2��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�M��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�,��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�2�M�B�B�B�#)�=��#3� �	�=��
�
�l�M�2�2�2�����.��<�<�<��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�l�M�2�2�2�2�2r�c�X�t��5}tj��}ddd��n#1swxYwYd|_Gd�dtj��}Gd�dt
��}d|_|tjd<|�	tjj
d��tj|d��g��}||��d}|�|�
��|��|�t|j��d��d	}|jd
\}}	|�|j|��|�d|	��|�d|	��|�d
|	��|�d|	��|jd\}}	|�|j|��|�d|	��|�d|	��|�d
|	��|�||	��dS)NTc��eZdZd�ZdS)�JTestOutputBuffering.testBufferTearDownModule_DoModuleCleanups.<locals>.Fooc��dSr!rr3s rr�zSTestOutputBuffering.testBufferTearDownModule_DoModuleCleanups.<locals>.Foo.test_fooFrUrNr=rrrrWrsErXrrWc�:�eZdZed���Zed���ZdS)�MTestOutputBuffering.testBufferTearDownModule_DoModuleCleanups.<locals>.Modulec��td��tjt��tjt��dSrcrdrrrrCzYTestOutputBuffering.testBufferTearDownModule_DoModuleCleanups.<locals>.Module.setUpModuleIrfrc�.�td��ddzdSrVr�rrrrWz\TestOutputBuffering.testBufferTearDownModule_DoModuleCleanups.<locals>.Module.tearDownModuleNrXrN)rrrrErCrWrrrrFrvHsH������
�
8�
8��\�
8��
�
��\�
�
�
rrFr�z2
Stdout:
tear down module
do cleanup2
do cleanup1
r�rZrr�r*r'rYrYr�r�rgrMs
          r�)testBufferTearDownModule_DoModuleCleanupsz=TestOutputBuffering.testBufferTearDownModule_DoModuleCleanups@sq��
�
�
�	+�&��(�*�*�F�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+���
�	�	�	�	�	�(�#�	�	�	�		�		�		�		�		�V�		�		�		�"��� &���H���������2�2�2��"�C�C�
�O�O�#4�5�5��
��f�
�
�
�P��������*�*�L�9�9�9�����V�]�+�+�Q�/�/�/�/��#)�=��#3� �	�=�����.��<�<�<��
�
�;�]�K�K�K�����}�5�5�5�����m�4�4�4��
�
�5�}�E�E�E�#)�=��#3� �	�=�����.��<�<�<��
�
�0�-�@�@�@����,�m�<�<�<�����m�4�4�4��
�
�l�M�2�2�2�2�2r�N)rrrr�r:r�r�r�r�r�r�r�r�r�rrr+r1r8rNr[rhrpryrrrr�r�sZ������$�$�$�$�$�$�
,�
,�
,�-4�-4�-4�`���-D�-D�-D�^3�3�3�,3�3�3�,3�3�3�<'3�'3�'3�R)3�)3�)3�V3�3�3�.3�3�3�.3�3�3�B%3�%3�%3�N(3�(3�(3�T3�3�3�83�3�3�83�3�3�<%3�%3�%3�N'3�'3�'3�'3�'3rr��__main__r�) r�rvr��test.supportrrrr"r#�
unittest.utilrr�rr$r(r+r-r[r<r��dictr?�__dict__�	classDict�mr�typernrpr�r�mainrrr�<module>r�sP��	�	�	�	�
�
�
�
�����J�J�J�J�J�J�J�J�J�J���������"�"�"�"�"�"������F����*�*�*�$�$�$�
%�%�%�

�
�
�
�
�
�
�
� c@�c@�c@�c@�c@�h�'�c@�c@�c@�L
fH�fH�fH�fH�fH�(�+�fH�fH�fH�R
�D��$�-�.�.�	�
���A��!�������!�	�*���D��v�i��3�3�	�1$�1$�1$�1$�1$��*�1$�1$�1$�h`	3�`	3�`	3�`	3�`	3�(�+�`	3�`	3�`	3�F�z����H�M�O�O�O�O�O��r

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists