Edit File: runner.cpython-36.pyc
3 � \G������������������@���sn���d�Z�ddlZddlZddlZddlmZ�ddlmZ�dZG�dd��de �Z G�d d ��d ej�ZG�dd��de �Z dS�) z Running tests�����N����)�result)�registerResultTc���������������@���s*���e�Zd�ZdZdd��Zdd��Zd dd�ZdS�) �_WritelnDecoratorz@Used to decorate file-like objects with a handy 'writeln' methodc�������������C���s ���||�_�d�S�)N)�stream)�selfr�����r����'/usr/lib64/python3.6/unittest/runner.py�__init__���s����z_WritelnDecorator.__init__c�������������C���s���|dkrt�|��t|�j|�S�)Nr����__getstate__)r���r���)�AttributeError�getattrr���)r����attrr���r���r ����__getattr__���s����z_WritelnDecorator.__getattr__Nc�������������C���s���|r|�j�|��|�j�d��d�S�)N� )�write)r����argr���r���r ����writeln���s���� z_WritelnDecorator.writeln)N)�__name__� __module__�__qualname__�__doc__r ���r���r���r���r���r���r ���r��� ���s���r���c�������������������s����e�Zd�ZdZdd�Zdd�Z��fdd�Zdd��Z��fd d �Z��fdd�Z ��fd d�Z ��fdd�Z��fdd�Z��fdd�Z ��fdd�Zdd��Zdd��Z���ZS�)�TextTestResultzhA test result class that can print formatted text results to a stream. Used by TextTestRunner. �=�F����-c����������������s8���t�t|��j|||��||�_|dk|�_|dk|�_||�_d�S�)Nr���)�superr���r ���r����showAll�dots�descriptions)r���r���r���� verbosity)� __class__r���r ���r ���%���s ���� zTextTestResult.__init__c�������������C���s0���|j���}|�jr$|r$djt|�|f�S�t|�S�d�S�)Nr���)ZshortDescriptionr����join�str)r����testZdoc_first_liner���r���r ����getDescription,���s���� zTextTestResult.getDescriptionc����������������sB���t�t|��j|��|�jr>|�jj|�j|���|�jjd��|�jj���d�S�)Nz ... )r���r���� startTestr���r���r���r%����flush)r���r$���)r!���r���r ���r&���3���s ����zTextTestResult.startTestc����������������sD���t�t|��j|��|�jr$|�jjd��n|�jr@|�jjd��|�jj���d�S�)N�ok�.) r���r���� addSuccessr���r���r���r���r���r'���)r���r$���)r!���r���r ���r*���:���s����zTextTestResult.addSuccessc����������������sF���t�t|��j||��|�jr&|�jjd��n|�jrB|�jjd��|�jj���d�S�)N�ERROR�E) r���r����addErrorr���r���r���r���r���r'���)r���r$����err)r!���r���r ���r-���B���s����zTextTestResult.addErrorc����������������sF���t�t|��j||��|�jr&|�jjd��n|�jrB|�jjd��|�jj���d�S�)N�FAIL�F) r���r���� addFailurer���r���r���r���r���r'���)r���r$���r.���)r!���r���r ���r1���J���s����zTextTestResult.addFailurec����������������sL���t�t|��j||��|�jr,|�jjdj|���n|�jrH|�jjd��|�jj ���d�S�)Nz skipped {0!r}�s) r���r����addSkipr���r���r����formatr���r���r'���)r���r$����reason)r!���r���r ���r3���R���s����zTextTestResult.addSkipc����������������sF���t�t|��j||��|�jr&|�jjd��n|�jrB|�jjd��|�jj���d�S�)Nzexpected failure�x) r���r����addExpectedFailurer���r���r���r���r���r'���)r���r$���r.���)r!���r���r ���r7���Z���s����z!TextTestResult.addExpectedFailurec����������������sD���t�t|��j|��|�jr$|�jjd��n|�jr@|�jjd��|�jj���d�S�)Nzunexpected success�u) r���r����addUnexpectedSuccessr���r���r���r���r���r'���)r���r$���)r!���r���r ���r9���b���s����z#TextTestResult.addUnexpectedSuccessc�������������C���s6���|�j�s|�jr|�jj���|�jd|�j��|�jd|�j��d�S�)Nr+���r/���)r���r���r���r����printErrorList�errors�failures)r���r���r���r ����printErrorsj���s���� zTextTestResult.printErrorsc�������������C���s\���xV|D�]N\}}|�j�j|�j��|�j�jd||�j|�f���|�j�j|�j��|�j�jd|���qW�d�S�)Nz%s: %sz%s)r���r���� separator1r%���� separator2)r���Zflavourr;���r$���r.���r���r���r ���r:���p���s ����zTextTestResult.printErrorList)r���r���r���r���r>���r?���r ���r%���r&���r*���r-���r1���r3���r7���r9���r=���r:���� __classcell__r���r���)r!���r ���r������s���r���c���������������@���s4���e�Zd�ZdZeZd dd�dd�Zd d ��Zdd��ZdS�)�TextTestRunnerz�A test runner class that displays results in textual form. It prints out the names of tests as they are run, errors as they occur, and a summary of the results at the end of the test run. NTr���F)� tb_localsc������ ������C���sN���|dkrt�j}t|�|�_||�_||�_||�_||�_||�_||�_ |dk rJ||�_ dS�)z�Construct a TextTestRunner. Subclasses should accept **kwargs to ensure compatibility as the interface changes. N)�sys�stderrr���r���r���r ����failfast�bufferrB����warnings�resultclass) r���r���r���r ���rE���rF���rH���rG���rB���r���r���r ���r �������s���� zTextTestRunner.__init__c�������������C���s���|�j�|�j|�j|�j�S�)N)rH���r���r���r ���)r���r���r���r ����_makeResult����s����zTextTestRunner._makeResultc�������������C���s4��|�j���}t|��|�j|_|�j|_|�j|_tj�����|�jr^tj|�j��|�jdkr^tjdt dd��t j ��}t|dd�}|dk r�|���z||��W�dt|dd�}|dk r�|���X�t j ��}W�dQ�R�X�||�}|j���t |d �r�|�jj|j��|j}|�jjd ||dk�rd�pd |f���|�jj���d�} �} }ytt|j|j|jf�}W�n�tk �rV���Y�nX�|\} } }g�} |j���s�|�jjd��t|j�t|j��}}|�r�| jd|���|�r�| jd|���n|�jjd��|�r�| jd|���| �r�| jd| ���| �r| jd| ���| �r$|�jjddj| �f���n|�jjd��|S�)z&Run the given test case or test suite.�default�always�modulezPlease use assert\w+ instead.)�category�message�startTestRunN�stopTestRunr?���zRan %d test%s in %.3fsr���r2�����r���ZFAILEDzfailures=%dz errors=%dZOKz skipped=%dzexpected failures=%dzunexpected successes=%dz (%s)z, r���)rJ���rK���)rI���r���rE���rF���rB���rG����catch_warnings�simplefilter�filterwarnings�DeprecationWarning�timer ���r=����hasattrr���r���r?���ZtestsRun�map�lenZexpectedFailures�unexpectedSuccesses�skippedr���Z wasSuccessfulr���r<���r;����appendr"���)r���r$���r���Z startTimerO���rP���ZstopTimeZ timeTaken�runZ expectedFailsrZ���r[���ZresultsZinfosZfailedZerroredr���r���r ���r]�������sr���� zTextTestRunner.run)NTr���FFNN) r���r���r���r���r���rH���r ���rI���r]���r���r���r���r ���rA���x���s����rA���)r���rC���rV���rG���rQ���r���Zsignalsr���Z __unittest�objectr���Z TestResultr���rA���r���r���r���r ����<module>���s���[