File: //usr/local/lib/python3.7/test/support/__pycache__/testresult.cpython-37.opt-1.pyc
B
��g
� @ s< d Z ddlZddlZddlZddlZddlZddlZddlm m Z
ddlmZ G dd� dej�Z
G dd� d�Zdd d
�Zddd�Zed
k�r8G dd� dej�Ze�� Ze�e�e�� e�� Zeedd� ejD ���Zeej�Ze�e�Z e!de�"� � e!ddd� x(e
�#e �$� �D ]Z%e!e%�&� dd� �qW e!� dS )z=Test runner and result class for the regression test suite.
� N)�datetimec s� e Zd ZdZdZ� fdd�Zedd� �Z� fdd�Zd"d
d�Z dd
� Z
edd� �Z� fdd�Z� fdd�Z
� fdd�Z� fdd�Z� fdd�Z� fdd�Zdd� Zdd� Zd d!� Z� ZS )#�RegressionTestResultzG======================================================================
zG----------------------------------------------------------------------
c s\ t � j||dd� d| _t�d�| _| j�dt�� � d�� d | _
d | _g | _t
|�| _d S )Nr )�stream�descriptions� verbosityTZ testsuite�start� )�super�__init__�buffer�ETZElement�_RegressionTestResult__suite�setr ZutcnowZ isoformat�_RegressionTestResult__e�!_RegressionTestResult__start_timeZ_RegressionTestResult__results�bool�_RegressionTestResult__verbose)�selfr r r )� __class__� �3/usr/local/lib/python3.7/test/support/testresult.pyr
s zRegressionTestResult.__init__c C sL y
|j }W n tk
r" t|�S X y|� S tk
rB t|�S X t|�S )N)�id�AttributeError�str� TypeError�repr)�cls�testZtest_idr r r Z__getId s
zRegressionTestResult.__getIdc sV t � �|� t�| jd� | _}t�� | _| j rR| j
�| �|�� d�� | j
�
� d S )NZtestcasez ... )r � startTestr �
SubElementr
r �time�perf_counterr r r �write�getDescription�flush)r r �e)r r r r + s
zRegressionTestResult.startTestFc K sL | j }d | _ |d krd S |�d|�d| �|��� |�d|�dd�� |�d|�dd�� | jrz|�dt�� | j d�� |r�| jd k r�| j�� � � }|t
�|d�_| j
d k r�| j
�� � � }|t
�|d �_x||�� D ]p\}}|r�|s�q�t
�||�} t|d
��r:xD|�� D ],\}
}|
�r(| �|
t|�� n
t|�| _�qW q�t|�| _q�W d S )N�name�status�run�resultZ completedr z0.6fz
system-outz
system-err�items)r r �pop�_RegressionTestResult__getIdr r r! Z_stdout_buffer�getvalue�rstripr r �textZ_stderr_bufferr* �hasattrr )r r Zcapture�argsr% �stdout�stderr�k�vZe2Zk2Zv2r r r �_add_result3 s4
z RegressionTestResult._add_resultc C s | j r| j�|� d�� d S )N�
)r r r"