U
    UºcD  ã                   @   s4   d Z ddlZG dd„ dejƒZG dd„ dejƒZdS )zATestResult implementing default output for test execution status.é    Nc                       s|   e Zd ZdZ‡ fdd„Zdd„ Z‡ fdd„Z‡ fdd	„Z‡ fd
d„Z‡ fdd„Z	‡ fdd„Z
‡ fdd„Z‡ fdd„Z‡  ZS )ÚTextTestResultzBTestResult class that provides the default text result formatting.c                    s"   t t| ƒ ||d¡ |dk| _d S )Nr   )Úsuperr   Ú__init__Ú_per_test_output)ÚselfÚstreamÚdescriptionsÚ	verbosity©Ú	__class__© úG/tmp/pip-unpacked-wheel-yg88_g5m/absl/testing/_pretty_print_reporter.pyr      s    zTextTestResult.__init__c                 C   sL   | j rH| ¡ }| d¡r(|tdƒd … }td||f | jd | j ¡  d S )Nz	__main__.z[%s] %s)Úfile)r   ÚidÚ
startswithÚlenÚprintr   Úflush)r   ÚtagÚtestZtest_idr   r   r   Ú_print_status   s    
zTextTestResult._print_statusc                    s    t t| ƒ |¡ |  d|¡ d S )Nz
 RUN      )r   r   Ú	startTestr   ©r   r   r
   r   r   r   %   s    zTextTestResult.startTestc                    s    t t| ƒ |¡ |  d|¡ d S ©Nz
       OK )r   r   Ú
addSuccessr   r   r
   r   r   r   )   s    zTextTestResult.addSuccessc                    s"   t t| ƒ ||¡ |  d|¡ d S ©Nz
  FAILED  )r   r   ÚaddErrorr   ©r   r   Úerrr
   r   r   r   -   s    zTextTestResult.addErrorc                    s"   t t| ƒ ||¡ |  d|¡ d S r   )r   r   Ú
addFailurer   r   r
   r   r   r   1   s    zTextTestResult.addFailurec                    s"   t t| ƒ ||¡ |  d|¡ d S )Nz
  SKIPPED )r   r   ÚaddSkipr   )r   r   Úreasonr
   r   r   r    5   s    zTextTestResult.addSkipc                    s"   t t| ƒ ||¡ |  d|¡ d S r   )r   r   ÚaddExpectedFailurer   r   r
   r   r   r"   9   s    z!TextTestResult.addExpectedFailurec                    s    t t| ƒ |¡ |  d|¡ d S r   )r   r   ÚaddUnexpectedSuccessr   r   r
   r   r   r#   =   s    z#TextTestResult.addUnexpectedSuccess)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r    r"   r#   Ú__classcell__r   r   r
   r   r      s   r   c                       s8   e Zd ZdZeZdZ‡ fdd„Zdd„ Zdd„ Z	‡  Z
S )	ÚTextTestRunnerz3A test runner that produces formatted text results.Fc                    s$   | j r|  |¡S tt| ƒ |¡S d S ©N)Úrun_for_debuggingÚ
_run_debugr   r)   Úrunr   r
   r   r   r-   M   s    
zTextTestRunner.runc                 C   s   |  ¡  |  ¡ S r*   )ÚdebugÚ_makeResultr   r   r   r   r,   T   s    zTextTestRunner._run_debugc                 C   s   t | j| j| jƒS r*   )r   r   r   r	   )r   r   r   r   r/   Z   s    zTextTestRunner._makeResult)r$   r%   r&   r'   r   Z_TEST_RESULT_CLASSr+   r-   r,   r/   r(   r   r   r
   r   r)   B   s   r)   )r'   Zunittestr   r)   r   r   r   r   Ú<module>   s   .