Your IP : 216.73.216.85


Current Path : /opt/alt/python37/lib64/python3.7/test/support/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/test/support/__pycache__/testresult.cpython-37.pyc

B

� f
�@s<dZddlZddlZddlZddlZddlZddlZddlmm	Z
ddlmZGdd�dej�Z
Gdd�d�Zdd	d
�Zddd�Zed
k�r8Gdd�dej�Ze��Ze�e�e��e��Zeedd�ejD���Zeej�Ze�e�Z e!de�"��e!ddd�x(e
�#e �$��D]Z%e!e%�&�dd��qWe!�dS)z=Test runner and result class for the regression test suite.

�N)�datetimecs�eZdZdZdZ�fdd�Zedd��Z�fdd�Zd"d
d�Z	dd
�Z
edd��Z�fdd�Z�fdd�Z
�fdd�Z�fdd�Z�fdd�Z�fdd�Zdd�Zdd�Zd d!�Z�ZS)#�RegressionTestResultzG======================================================================
zG----------------------------------------------------------------------
cs\t�j||dd�d|_t�d�|_|j�dt���	d��d|_
d|_g|_t
|�|_dS)Nr)�stream�descriptions�	verbosityTZ	testsuite�start� )�super�__init__�buffer�ETZElement�_RegressionTestResult__suite�setrZutcnowZ	isoformat�_RegressionTestResult__e�!_RegressionTestResult__start_timeZ_RegressionTestResult__results�bool�_RegressionTestResult__verbose)�selfrrr)�	__class__��</opt/alt/python37/lib64/python3.7/test/support/testresult.pyr
szRegressionTestResult.__init__cCsLy
|j}Wntk
r"t|�SXy|�Stk
rBt|�SXt|�S)N)�id�AttributeError�str�	TypeError�repr)�cls�testZtest_idrrrZ__getIds


zRegressionTestResult.__getIdcsVt��|�t�|jd�|_}t��|_|j	rR|j
�|�|��d��|j
�
�dS)NZtestcasez ... )r	�	startTestr�
SubElementr
r�time�perf_counterrrr�write�getDescription�flush)rr�e)rrrr+s
zRegressionTestResult.startTestFc	KsL|j}d|_|dkrdS|�d|�d|�|���|�d|�dd��|�d|�dd��|jrz|�dt��|jd��|r�|jdk	r�|j���	�}|t
�|d�_|j
dk	r�|j
���	�}|t
�|d	�_x||��D]p\}}|r�|s�q�t
�||�}	t|d
��r:xD|��D],\}
}|
�r(|	�|
t|��n
t|�|	_�qWq�t|�|	_q�WdS)N�nameZstatus�run�resultZ	completedr z0.6fz
system-outz
system-err�items)rr�pop�_RegressionTestResult__getIdrr r!Z_stdout_buffer�getvalue�rstriprr�textZ_stderr_bufferr)�hasattrr)rrZcapture�argsr%�stdout�stderr�k�vZe2Zk2Zv2rrr�_add_result3s4

z RegressionTestResult._add_resultcCs|jr|j�|�d��dS)N�
)rrr")r�cZwordrrrZ__writeSszRegressionTestResult.__writecCslt|t�r0|jdkr|j}q8|j�d|j��}nt|�}t�||d�}t�|||�}|d�|�d�|�d�S)N�builtins�.�)�type�messager:)�
isinstancer;�
__module__�__name__r�	traceback�format_exception�join)rZerr_typeZ	err_valueZerr_tb�typename�msg�tbrrrZ__makeErrorDictWs

z$RegressionTestResult.__makeErrorDictcs4|j|d|j|�d�t��||�|�dd�dS)NT)�error�E�ERROR)r5�$_RegressionTestResult__makeErrorDictr	�addError�_RegressionTestResult__write)rr�err)rrrrJjszRegressionTestResult.addErrorcs4|j|d|j|�d�t��||�|�dd�dS)NT)�output�xzexpected failure)r5rIr	�addExpectedFailurerK)rrrL)rrrrOosz'RegressionTestResult.addExpectedFailurecs4|j|d|j|�d�t��||�|�dd�dS)NT)Zfailure�F�FAIL)r5rIr	�
addFailurerK)rrrL)rrrrRtszRegressionTestResult.addFailurecs2|j||d�t��||�|�dd|���dS)N)Zskipped�Szskipped )r5r	�addSkiprK)rr�reason)rrrrTyszRegressionTestResult.addSkipcs&|�|�t��|�|�dd�dS)Nr9�ok)r5r	�
addSuccessrK)rr)rrrrW~s
zRegressionTestResult.addSuccesscs*|j|dd�t��|�|�dd�dS)NZUNEXPECTED_SUCCESS)Zoutcome�uzunexpected success)r5r	�addUnexpectedSuccessrK)rr)rrrrY�sz)RegressionTestResult.addUnexpectedSuccesscCs2|jr|j�d�|�d|j�|�d|j�dS)Nr6rHrQ)rrr"�printErrorList�errors�failures)rrrr�printErrors�sz RegressionTestResult.printErrorscCs`xZ|D]R\}}|j�|j�|j�|�d|�|��d��|j�|j�|j�d|�qWdS)Nz: r6z%s
)rr"�
separator1r#�
separator2)rZflavorr[rrLrrrrZ�s
z#RegressionTestResult.printErrorListcCsH|j}|�dt|j��|�dtt|j���|�dtt|j���|S)NZtestsr[r\)r
rrZtestsRun�lenr[r\)rr%rrr�get_xml_element�s
z$RegressionTestResult.get_xml_element)F)r?r>�__qualname__r^r_r
�classmethodr+rr5rKrIrJrOrRrTrWrYr]rZra�
__classcell__rr)rrrs"
 rc@seZdZddd�Zdd�ZdS)�QuietRegressionTestRunnerFcCst|dd�|_||j_dS)Nr)rr(r)rrrrrrr
�sz"QuietRegressionTestRunner.__init__cCs||j�|jS)N)r()rrrrrr'�s
zQuietRegressionTestRunner.runN)F)r?r>rbr
r'rrrrre�s
reFcCs&|rtjtjt||d�Stjt|d�S)N)Zresultclassrr)r)�	functools�partial�unittestZTextTestRunnerrre)rrrrr�get_test_runner_class�sricCst||�|�S)N)ri)rrZcapture_outputrrr�get_test_runner�srj�__main__c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�	TestTestscCsdS)Nr)rrrr�	test_pass�szTestTests.test_passcCst�d�dS)Ng�?)r Zsleep)rrrr�test_pass_slow�szTestTests.test_pass_slowcCs*tdtjd�tdtjd�|�d�dS)Nr1)�filer2zfailure message)�print�sysr1r2Zfail)rrrr�	test_fail�szTestTests.test_failcCs(tdtjd�tdtjd�td��dS)Nr1)ror2z
error message)rprqr1r2�RuntimeError)rrrr�
test_error�szTestTests.test_errorN)r?r>rbrmrnrrrtrrrrrl�srlccs|]}|dkVqdS)z-vNr)�.0�arrr�	<genexpr>�srwzOutput:zXML: r:)�end)F)F)'�__doc__rf�iorqr r@rhZxml.etree.ElementTreeZetreeZElementTreerrZTextTestResultrrerirjr?ZTestCaserlZ	TestSuiteZsuiteZaddTestZ	makeSuite�StringIOr�sum�argvZ
runner_clsr1Zrunnerr'r(rpr,Ztostringlistra�s�decoderrrr�<module>s4