관리-도구
편집 파일: suite.cpython-39.opt-2.pyc
a �����DOg�4����������������������@���sx���d�dl�Z�ddlmZ�ddlmZ�dZdd��ZG�dd ��d e�ZG�d d��de�ZG�dd ��d e�Z dd��Z G�dd��de�ZdS�)�����N����)�case)�utilTc�����������������C���s���t�|�|dd���}|���d�S�)Nc�������������������S���s���d�S��N��r���r���r����&/usr/lib64/python3.9/unittest/suite.py�<lambda>��������z!_call_if_exists.<locals>.<lambda>)�getattr)�parent�attr�funcr���r���r����_call_if_exists���s����r���c�������������������@���sj���e�Zd�ZdZddd�Zdd��Zdd��Zd d ��Zdd��Zd d��Z dd��Z dd��Zdd��Zdd��Z dd��ZdS�)� BaseTestSuiteTr���c�����������������C���s���g�|�_�d|�_|��|��d�S��Nr���)�_tests�_removed_tests�addTests)�self�testsr���r���r����__init__���s����zBaseTestSuite.__init__c�����������������C���s���dt��|�j�t|��f�S�)Nz <%s tests=%s>)r����strclass� __class__�list�r���r���r���r����__repr__���s����zBaseTestSuite.__repr__c�����������������C���s ���t�||�j�stS�t|��t|�kS�r���)� isinstancer����NotImplementedr���)r����otherr���r���r����__eq__���s����zBaseTestSuite.__eq__c�����������������C���s ���t�|�j�S�r���)�iterr���r���r���r���r����__iter__"���s����zBaseTestSuite.__iter__c�����������������C���s$���|�j�}|�D�]}|r ||���7�}q |S�r���)r����countTestCases)r���Zcases�testr���r���r���r"���%���s ����zBaseTestSuite.countTestCasesc�����������������C���sL���t�|�std�t|����t|t�r<t|tjt f�r<td��|�j �|��d�S�)Nz{} is not callablezNTestCases and TestSuites must be instantiated before passing them to addTest())�callable� TypeError�format�reprr����type� issubclassr���ZTestCase� TestSuiter����append�r���r#���r���r���r����addTest,���s�����zBaseTestSuite.addTestc�����������������C���s*���t�|t�rtd��|D�]}|��|��qd�S�)Nz0tests must be an iterable of tests, not a string)r����strr%���r-���)r���r���r#���r���r���r���r���6���s���� zBaseTestSuite.addTestsc�����������������C���s8���t�|��D�]*\}}|jr�q4||��|�jr|��|��q|S�r���)� enumerate� shouldStop�_cleanup�_removeTestAtIndex)r����result�indexr#���r���r���r����run<���s����zBaseTestSuite.runc�����������������C���sL���z|�j�|�}W�n�ty ���Y�n(0�t|d�r>|��j|���7��_d�|�j�|<�d�S�)Nr"���)r���r%����hasattrr���r"���)r���r4���r#���r���r���r���r2���E���s���� z BaseTestSuite._removeTestAtIndexc�����������������O���s���|�j�|i�|��S�r����r5���)r����args�kwdsr���r���r����__call__S���s����zBaseTestSuite.__call__c�����������������C���s���|�D�]}|�����qd�S�r���)�debugr,���r���r���r���r;���V���s����zBaseTestSuite.debugN)r���)�__name__� __module__�__qualname__r1���r���r���r���r!���r"���r-���r���r5���r2���r:���r;���r���r���r���r���r������s��� r���c�������������������@���sZ���e�Zd�Zddd�Zdd��Zdd��Zdd ��Zd d��Zdd d�Zddd�Z dd��Z dd��ZdS�)r*���Fc�����������������C���s����d}t�|dd�du�rd�|_}t|��D�]�\}}|jr8�q�t|�r�|��||��|��||��|��||��|j|_ t�|jdd�s&t�|dd�r�q&|s�||��n|� ���|�jr&|��|��q&|r�|��d�|��|�� |��d|_|S�)NF�_testRunEnteredT�_classSetupFailed�_moduleSetUpFailed)r ���r?���r/���r0����_isnotsuite�_tearDownPreviousClass�_handleModuleFixture�_handleClassSetUpr����_previousTestClassr;���r1���r2����_handleModuleTearDown)r���r3���r;���ZtopLevelr4���r#���r���r���r���r5���f���s2���� � z TestSuite.runc�����������������C���s���t���}|��|d��d�S�)NT)�_DebugResultr5���)r���r;���r���r���r���r;�������s����zTestSuite.debugc�����������������C���sZ��t�|dd��}|j}||krd�S�|jr(d�S�t�|dd�r8d�S�d}z d|_W�n�tyX���Y�n0�t�|dd��}t�|dd��}|d�u�rVt|d��z�z |���W�nl�ty��}�zTt|t�r���d}z d|_W�n�ty����Y�n0�t � |�} |��||d| ��W�Y�d�}~n d�}~0�0�|�r<|d�u�r<|���|jD�]} |�j|| d�d| | d ���qW�t|d ��nt|d ��0�d�S�)NrF����__unittest_skip__F� setUpClass�doClassCleanups�_setupStdoutTr�����info�_restoreStdout) r ���r���rA���r@���r%���r���� Exceptionr���rH���r���r����"_createClassOrModuleLevelException�tearDown_exceptions)r���r#���r3���� previousClass�currentClassZfailedrJ���rK����e� className�exc_infor���r���r���rE�������sR���� � �zTestSuite._handleClassSetUpc�����������������C���s"���d�}t�|dd��}|d�ur|j}|S�)NrF���)r ���r=���)r���r3����previousModulerS���r���r���r����_get_previous_module����s ����zTestSuite._get_previous_modulec�������������� ���C���s0��|���|�}|jj}||krd�S�|��|��d|_ztj|�}W�n�tyP���Y�d�S�0�t|dd��}|d�u�r,t |d��z�z |���W�nF�t y��}�z.t|t�r���d|_|�� ||d|��W�Y�d�}~n d�}~0�0�|j�rzt����W�n6�t �y�}�z|�� ||d|��W�Y�d�}~n d�}~0�0�W�t |d��nt |d��0�d�S�)NF�setUpModulerL���TrO���)rY���r���r=���rG���rA����sys�modules�KeyErrorr ���r���rP���r���rH���rQ���r����doModuleCleanups)r���r#���r3���rX���Z currentModule�modulerZ���rU���r���r���r���rD�������sB���� ��zTestSuite._handleModuleFixtureNc�����������������C���s$���|��d|��d�}|���||||��d�S�)Nz (�))�_addClassOrModuleLevelException)r���r3����excZmethod_namer���rN���� errorNamer���r���r���rQ�������s����z,TestSuite._createClassOrModuleLevelExceptionc�����������������C���s^���t�|�}t|dd��}|d�ur8t|tj�r8||t|���n"|sN|�|t�����n|�||��d�S�)N�addSkip) �_ErrorHolderr ���r���r���ZSkipTestr.���ZaddErrorr[���rW���)r���r3���� exceptionrc���rN����errorrd���r���r���r���ra�������s����z)TestSuite._addClassOrModuleLevelExceptionc�������������� ���C���s��|���|�}|d�u�rd�S�|jr d�S�ztj|�}W�n�tyB���Y�d�S�0�t|d��z�t|dd��}|d�ur�z |���W�n@�ty��}�z(t|t �r���|�� ||d|��W�Y�d�}~n d�}~0�0�zt����W�nB�t��y��}�z(t|t �rڂ�|�� ||d|��W�Y�d�}~n d�}~0�0�W�t|d��nt|d��0�d�S�)NrL����tearDownModulerO���) rY���rA���r[���r\���r]���r���r ���rP���r���rH���rQ���r���r^���)r���r3���rX���r_���rh���rU���r���r���r���rG�������s@���� � �zTestSuite._handleModuleTearDownc����������� ��� ���C���s^��t�|dd��}|j}||ks"|d�u�r&d�S�t�|dd�r6d�S�t�|dd�rFd�S�t�|dd�rVd�S�t�|dd��}t�|dd��}|d�u�r�|d�u�r�d�S�t|d��z�|d�ur�z |���W�nJ�ty��}�z2t|t�r���t�|�}|��||d|��W�Y�d�}~n d�}~0�0�|d�u�r@|���|j D�]<} t|t��r| d ��t�|�}|�j|| d �d|| d ���qW�t|d��nt|d��0�d�S�)NrF���r@���FrA���rI���� tearDownClassrK���rL���r���rM���rO���) r ���r���r���rP���r���rH���r���r���rQ���rR���) r���r#���r3���rS���rT���ri���rK���rU���rV���rW���r���r���r���rC�����sN���� � �z TestSuite._tearDownPreviousClass)F)N)N)r<���r=���r>���r5���r;���rE���rY���rD���rQ���ra���rG���rC���r���r���r���r���r*���\���s��� !.&�� �� #r*���c�������������������@���sP���e�Zd�ZdZdd��Zdd��Zdd��Zdd ��Zd d��Zdd ��Z dd��Z dd��ZdS�)re���Nc�����������������C���s ���||�_�d�S�r�����description)r���rk���r���r���r���r���T��s����z_ErrorHolder.__init__c�����������������C���s���|�j�S�r���rj���r���r���r���r����idW��s����z_ErrorHolder.idc�����������������C���s���d�S�r���r���r���r���r���r����shortDescriptionZ��s����z_ErrorHolder.shortDescriptionc�����������������C���s���d|�j�f�S�)Nz<ErrorHolder description=%r>rj���r���r���r���r���r���]��s����z_ErrorHolder.__repr__c�����������������C���s���|�����S�r���)rl���r���r���r���r����__str__`��s����z_ErrorHolder.__str__c�����������������C���s���d�S�r���r����r���r3���r���r���r���r5���c��s����z_ErrorHolder.runc�����������������C���s ���|���|�S�r���r7���ro���r���r���r���r:���h��s����z_ErrorHolder.__call__c�����������������C���s���dS�r���r���r���r���r���r���r"���k��s����z_ErrorHolder.countTestCases)r<���r=���r>���ZfailureExceptionr���rl���rm���r���rn���r5���r:���r"���r���r���r���r���re���H��s��� re���c�����������������C���s&���zt�|���W�n�ty ���Y�dS�0�dS�)NTF)r ���r%���)r#���r���r���r���rB���n��s ����rB���c�������������������@���s���e�Zd�ZdZdZdZdS�)rH���NF)r<���r=���r>���rF���rA���r0���r���r���r���r���rH���w��s���rH���)r[�����r���r���Z __unittestr����objectr���r*���re���rB���rH���r���r���r���r����<module>���s���L�m&