Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib/python3.5/site-packages/pbr/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib/python3.5/site-packages/pbr/__pycache__/testr_command.cpython-35.pyc



�VF�@s�dZddlmZddlZddlZddlZddlZeje�Z	Gdd�dej
�ZGdd�dej
�Zy ddl
mZd	ZeZWnek
r�d
ZeZYnXdS)a�setuptools/distutils commands to run testr via setup.py

Currently provides 'testr' which runs tests using testr. You can pass
--coverage which will also export PYTHON='coverage run --source <your package>'
and automatically combine the coverage from each testr backend test runner
after the run completes.

To use, just use setuptools/distribute and depend on testr, and it should be
picked up automatically (as the commands are exported in the testrepository
package metadata.
�)�cmdNc	@s�eZdZdZd!d"d#d$d%d&d'gZdd
dgZdd�Zdd�Zdd�Zdd�Z	dd�Z
dd �ZdS)(�	TestrRealzRun unit tests using testr�coverageN�GReplace PYTHON with coverage and merge coverage from each testr worker.�testr-args=�t�Run 'testr' with these args�omit=�o�(Files to omit from coverage calculations�coverage-package-name=�"Use this name for coverage package�slowest�-Show slowest test times after tests complete.�no-parallel�Run testr serially�
log-level=�l�Log level (default: info)�no_parallelcGsCtjd|�tjtjdgt|�tjtjtj	�S)Nz _run_testr called with args = %rr)
�logger�debug�commands�run_argv�sys�argv�list�stdin�stdout�stderr)�self�args�r"�B/opt/alt/python35/lib/python3.5/site-packages/pbr/testr_command.py�
_run_testrCszTestrReal._run_testrcCsCd|_d|_d|_d|_d|_d|_d|_dS)N��info)�
testr_argsr�omitr�coverage_package_namer�	log_level)r r"r"r#�initialize_optionsHs						zTestrReal.initialize_optionscCs�tt|jj�tj�|_tjd|j�tjd�|jdkr\g|_n|jj	�|_|j
r�d|j
|_
tjd|j�dS)N�levelzfinalize_options calledz	--omit=%sz$finalize_options: self.__dict__ = %r)�getattr�loggingr*�upper�INFO�basicConfigrrr'�splitr(�__dict__)r r"r"r#�finalize_optionsQs
	zTestrReal.finalize_optionscCs�tjd�tjjd�s,|jd�|jr?|j�|jsc|jdd|j	�}n|jd|j	�}|r�t
jjd|��|j
r�td�|jd�|jr�|j�d	S)
z"Set up testr repo, then run testr.z
run calledz.testrepository�init�runz
--parallelztestr failed (%d)z
Slowest TestsrN)rr�os�path�isdirr$r�_coverage_beforerr'�	distutils�errors�DistutilsErrorr�print�_coverage_after)r �	testr_retr"r"r#r6`s 

	
		
	

	z
TestrReal.runcCs�tjd�|jj�}|jd�r;|dd�}|jrM|j}d|}d|tjd<tjdtjd�dS)Nz_coverage_before calledzpython-�z--source %s --parallel-modezcoverage run %s�PYTHONzos.environ['PYTHON'] = %r)rr�distribution�get_name�
startswithr)r7�environ)r �package�optionsr"r"r#r:us
		
zTestrReal._coverage_beforecCs2tjd�tjd�tjd|j�dS)Nz_coverage_after calledzcoverage combinezcoverage html -d ./cover %s)rrr7�systemr()r r"r"r#r?�s

zTestrReal._coverage_after)rNr)rrr)r	r
r)rNr
)rNr)rNr)rrr)�__name__�
__module__�__qualname__�description�user_options�boolean_optionsr$r+r4r6r:r?r"r"r"r#r2s		
rc@s@eZdZdZgZdd�Zdd�Zdd�ZdS)	�	TestrFakezRun unit tests using testrcCsdS)Nr")r r"r"r#r+�szTestrFake.initialize_optionscCsdS)Nr")r r"r"r#r4�szTestrFake.finalize_optionscCstd�dS)Nz7Install testrepository to run 'testr' command properly.)r>)r r"r"r#r6�sz
TestrFake.runN)rJrKrLrMrNr+r4r6r"r"r"r#rP�s
rP)rTF)�__doc__r;r�distutils.errorsr.r7r�	getLoggerrJr�CommandrrPZtestrepositoryr�
have_testr�Testr�ImportErrorr"r"r"r#�<module>'sV