???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................U
    e5dW  ã                   @   sj   d dl Z d dlZd dlZddlmZ ddlmZ dZG dd„ deƒZ	G dd	„ d	ej
ƒZG d
d„ deƒZdS )é    Né   )Úresult)ÚregisterResultTc                   @   s&   e Zd Zdd„ Zdd„ Zddd„ZdS )	Ú_WritelnDecoratorc                 C   s
   || _ d S ©N)Ústream)Úselfr   © r	   ú'/usr/lib64/python3.8/unittest/runner.pyÚ__init__   s    z_WritelnDecorator.__init__c                 C   s   |dkrt |ƒ‚t| j|ƒS )N)r   Ú__getstate__)ÚAttributeErrorÚgetattrr   )r   Úattrr	   r	   r
   Ú__getattr__   s    z_WritelnDecorator.__getattr__Nc                 C   s   |r|   |¡ |   d¡ d S ©NÚ
)Úwrite)r   Úargr	   r	   r
   Úwriteln   s    
z_WritelnDecorator.writeln)N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r	   r	   r	   r
   r      s   r   c                       s   e Zd 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dd„ Zdd„ Z‡  ZS )ÚTextTestResultzF======================================================================zF----------------------------------------------------------------------c                    s8   t t| ƒ |||¡ || _|dk| _|dk| _|| _d S )Nr   )Úsuperr   r   r   ÚshowAllÚdotsÚdescriptions)r   r   r   Ú	verbosity©Ú	__class__r	   r
   r   %   s
    

zTextTestResult.__init__c                 C   s0   |  ¡ }| jr$|r$d t|ƒ|f¡S t|ƒS d S r   )ZshortDescriptionr   ÚjoinÚstr)r   ÚtestZdoc_first_liner	   r	   r
   ÚgetDescription,   s    
zTextTestResult.getDescriptionc                    sB   t t| ƒ |¡ | jr>| j |  |¡¡ | j d¡ | j ¡  d S )Nz ... )r   r   Ú	startTestr   r   r   r$   Úflush©r   r#   r   r	   r
   r%   3   s
    zTextTestResult.startTestc                    sD   t t| ƒ |¡ | jr$| j d¡ n| jr@| j d¡ | j ¡  d S )NÚokÚ.)	r   r   Ú
addSuccessr   r   r   r   r   r&   r'   r   r	   r
   r*   :   s    zTextTestResult.addSuccessc                    sF   t t| ƒ ||¡ | jr&| j d¡ n| jrB| j d¡ | j ¡  d S )NÚERRORÚE)	r   r   ÚaddErrorr   r   r   r   r   r&   ©r   r#   Úerrr   r	   r
   r-   B   s    zTextTestResult.addErrorc                    sF   t t| ƒ ||¡ | jr&| j d¡ n| jrB| j d¡ | j ¡  d S )NÚFAILÚF)	r   r   Ú
addFailurer   r   r   r   r   r&   r.   r   r	   r
   r2   J   s    zTextTestResult.addFailurec                    sL   t t| ƒ ||¡ | jr,| j d |¡¡ n| jrH| j d¡ | j 	¡  d S )Nzskipped {0!r}Ús)
r   r   ÚaddSkipr   r   r   Úformatr   r   r&   )r   r#   Úreasonr   r	   r
   r4   R   s    zTextTestResult.addSkipc                    sF   t t| ƒ ||¡ | jr&| j d¡ n| jrB| j d¡ | j ¡  d S )Nzexpected failureÚx)	r   r   ÚaddExpectedFailurer   r   r   r   r   r&   r.   r   r	   r
   r8   Z   s    z!TextTestResult.addExpectedFailurec                    sD   t t| ƒ |¡ | jr$| j d¡ n| jr@| j d¡ | j ¡  d S )Nzunexpected successÚu)	r   r   ÚaddUnexpectedSuccessr   r   r   r   r   r&   r'   r   r	   r
   r:   b   s    z#TextTestResult.addUnexpectedSuccessc                 C   s6   | j s| jr| j ¡  |  d| j¡ |  d| j¡ d S )Nr+   r0   )r   r   r   r   ÚprintErrorListÚerrorsÚfailures©r   r	   r	   r
   ÚprintErrorsj   s    
zTextTestResult.printErrorsc                 C   sX   |D ]N\}}| j  | j¡ | j  d||  |¡f ¡ | j  | j¡ | j  d| ¡ qd S )Nz%s: %sz%s)r   r   Ú
separator1r$   Ú
separator2)r   Zflavourr<   r#   r/   r	   r	   r
   r;   p   s
    zTextTestResult.printErrorList)r   r   r   r@   rA   r   r$   r%   r*   r-   r2   r4   r8   r:   r?   r;   Ú__classcell__r	   r	   r   r
   r      s   r   c                   @   s0   e Zd ZeZdddœdd„Zdd	„ Zd
d„ ZdS )ÚTextTestRunnerNTr   F)Ú	tb_localsc          	      C   sN   |d krt j}t|ƒ| _|| _|| _|| _|| _|| _|| _	|d k	rJ|| _
d S r   )ÚsysÚstderrr   r   r   r   ÚfailfastÚbufferrD   ÚwarningsÚresultclass)	r   r   r   r   rG   rH   rJ   rI   rD   r	   r	   r
   r   €   s    
zTextTestRunner.__init__c                 C   s   |   | j| j| j¡S r   )rJ   r   r   r   r>   r	   r	   r
   Ú_makeResult”   s    zTextTestRunner._makeResultc                 C   s2  |   ¡ }t|ƒ | j|_| j|_| j|_t ¡ † | jr^t | j¡ | jdkr^tjdt	dd t
 ¡ }t|dd ƒ}|d k	r€|ƒ  z||ƒ W 5 t|dd ƒ}|d k	r¨|ƒ  X t
 ¡ }W 5 Q R X || }| ¡  t|dƒrä| j |j¡ |j}| j d||d	koþd
pd|f ¡ | j ¡  d }	 }
}ztt|j|j|jfƒ}W n tk
rT   Y nX |\}	}
}g }| ¡ sº| j d¡ t|jƒt|jƒ }}|r¤| d| ¡ |rÆ| d| ¡ n| j d¡ |rÚ| d| ¡ |	rî| d|	 ¡ |
r| d|
 ¡ |r"| j dd |¡f ¡ n| j d¡ |S )N)ÚdefaultÚalwaysÚmodulezPlease use assert\w+ instead.)ÚcategoryÚmessageÚstartTestRunÚstopTestRunrA   zRan %d test%s in %.3fsr   r3   Ú r   ZFAILEDzfailures=%dz	errors=%dZOKz
skipped=%dzexpected failures=%dzunexpected successes=%dz (%s)z, r   )rK   r   rG   rH   rD   rI   Úcatch_warningsÚsimplefilterÚfilterwarningsÚDeprecationWarningÚtimeÚperf_counterr   r?   Úhasattrr   r   rA   ZtestsRunÚmapÚlenZexpectedFailuresÚunexpectedSuccessesÚskippedr   ZwasSuccessfulr   r=   r<   Úappendr!   )r   r#   r   Z	startTimerQ   rR   ZstopTimeZ	timeTakenÚrunZexpectedFailsr]   r^   ZresultsZinfosZfailedZerroredr	   r	   r
   r`   —   sx    

þ
ÿ
þ


zTextTestRunner.run)NTr   FFNN)r   r   r   r   rJ   r   rK   r`   r	   r	   r	   r
   rC   x   s           ÿþrC   )rE   rX   rI   rS   r   Zsignalsr   Z
__unittestÚobjectr   Z
TestResultr   rC   r	   r	   r	   r
   Ú<module>   s   [