File: //opt/alt/python38/lib/python3.8/site-packages/pbr/__pycache__/testr_command.cpython-38.opt-1.pyc
U
�VF � @ s� d Z ddlmZ ddlZddlZddlZddlZe�e�Z G dd� dej
�ZG dd� dej
�Zzddl
mZ d ZeZW n ek
r� d
ZeZY nX dS )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\ e Zd ZdZdddddddgZd d
dgZdd
� Zdd� Zdd� Zdd� Z dd� Z
dd� ZdS )� TestrReal�Run unit tests using testr)�coverageNzGReplace PYTHON with coverage and merge coverage from each testr worker.)ztestr-args=�tzRun 'testr' with these args)zomit=�oz(Files to omit from coverage calculations)zcoverage-package-name=Nz"Use this name for coverage package)�slowestNz-Show slowest test times after tests complete.)zno-parallelNzRun testr serially)z
log-level=�lzLog level (default: info)r r �no_parallelc G s2 t �d|� t�tjd gt|� tjtjtj �S )Nz _run_testr called with args = %rr )
�logger�debug�commandsZrun_argv�sys�argv�list�stdin�stdout�stderr)�self�args� r �B/opt/alt/python38/lib/python3.8/site-packages/pbr/testr_command.py�
_run_testrC s �zTestrReal._run_testrc C s. d | _ d | _d| _d | _d | _d | _d| _d S )N� �info)�
testr_argsr �omitr �coverage_package_namer
� log_level�r r r r �initialize_optionsH s zTestrReal.initialize_optionsc C sp t t| j�� tj�| _tj| jd� t�d� | jd kr@g | _n| j� � | _| j
r^d| j
| _
t�d| j� d S )N)�levelzfinalize_options calledz --omit=%sz$finalize_options: self.__dict__ = %r)�getattr�loggingr �upper�INFOZbasicConfigr r r �splitr �__dict__r r r r �finalize_optionsQ s �
zTestrReal.finalize_optionsc C s� t �d� tj�d�s | �d� | jr.| �� | jsF| jd
| j �� }n| jd| j �� }|rjt
j�d| ��| j
r�td� | �d� | jr�| �� d S )z"Set up testr repo, then run testr.z
run calledz.testrepositoryZinit�run�
--parallelztestr failed (%d)z
Slowest Testsr N)r) r* )r) )r r �os�path�isdirr r �_coverage_beforer
r � distutils�errors�DistutilsErrorr �print�_coverage_after)r Z testr_retr r r r) ` s"