
    iYf                         d Z ddlmZ ddlZddlZddlZddlZddlZ ej        e	          Z
 G d dej                  Z G d dej                  Z	 ddlmZ d	ZeZdS # e$ r d
ZeZY dS w xY w)a  setuptools/distutils command to run testr via setup.py

PBR will hook in the Testr class to provide "setup.py test" when
.testr.conf is present in the repository (see pbr/hooks/commands.py).

If we are activated but testrepository is not installed, we provide a
sensible error.

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.

    )cmdNc                   F    e Zd ZdZg dZg dZd Zd Zd Zd Z	d Z
d	 Zd
S )	TestrRealz&DEPRECATED: Run unit tests using testr))coverageNzGReplace PYTHON with coverage and merge coverage from each testr worker.)ztestr-args=tzRun 'testr' with these args)zomit=oz(Files to omit from coverage calculations)zcoverage-package-name=NzLUse this name to select packages for coverage (one or more, comma-separated))slowestNz-Show slowest test times after tests complete.)zno-parallelNzRun testr serially)z
log-level=lzLog level (default: info))r   r	   no_parallelc                     t                               d|           t          j        t          j        d         gt          |          z   t          j        t          j        t          j	                  S )Nz _run_testr called with args = %rr   )
loggerdebugcommandsrun_argvsysargvliststdinstdoutstderr)selfargss     C:\Users\Admin\Desktop\cercetare\experiment de trasmitere a informatiei din viitor in prezent\qiskit_env\Lib\site-packages\pbr/testr_command.py
_run_testrzTestrReal._run_testrH   sQ    7>>> #(1+d!;!$CJ
D D 	D    c                 h    d | _         d | _        d| _        d | _        d | _        d | _        d| _        d S )N info)
testr_argsr   omitr	   coverage_package_namer   	log_levelr   s    r   initialize_optionszTestrReal.initialize_optionsM   s9    	%)"r   c                    t          t          | j                                        t          j                  | _        t          j        | j                   t                              d           | j        g | _        n| j        	                                | _        | j
        rd| j
        z  | _
        t                              d| j                   d S )N)levelzfinalize_options calledz	--omit=%sz$finalize_options: self.__dict__ = %r)getattrloggingr"   upperINFObasicConfigr   r   r   splitr    __dict__r#   s    r   finalize_optionszTestrReal.finalize_optionsV   s     N  ""L  	$.1111.///?" DOO"o3355DO9 	0#di/DI;T]KKKKKr   c                 B   t                               d           t          j        dt                     t
          j                            d          s|                     d           | j	        r| 
                                 | j        s | j        ddg| j        R  }n | j        dg| j        R  }|r"t          j                            d|z            | j        r$t#          d           |                     d	           | j	        r|                                  d
S d
S )z"Set up testr repo, then run testr.z
run calledzctestr integration in pbr is deprecated. Please use the 'testr' setup command or call testr directlyz.testrepositoryinitrunz
--parallelztestr failed (%d)zSlowest Testsr	   N)r   r   warningswarnDeprecationWarningospathisdirr   r   _coverage_beforer   r   	distutilserrorsDistutilsErrorr	   print_coverage_after)r   	testr_rets     r   r1   zTestrReal.rune   s?   \""" K(	* 	* 	* w}}.// 	$OOF###= 	$!!### 	A'|NdoNNNII'@@@@I 	1"11#i/1 1 1< 	'/"""OOI&&&= 	#  """""	# 	#r   c                 J   t                               d           | j                                        }|                    d          r
|dd          }| j        r| j        }d|z  }d|z  t          j        d<   t                               dt          j        d                    d S )Nz_coverage_before calledzpython-   z--source %s --parallel-modezcoverage run %sPYTHONzos.environ['PYTHON'] = %r)r   r   distributionget_name
startswithr!   r5   environ)r   packageoptionss      r   r8   zTestrReal._coverage_before   s    .///#,,..i(( 	"abbkG % 	10G/'9 1G ;
80"*X2FGGGGGr   c                     t                               d           t          j        d           t          j        d| j        z             t          j        d| j        z             d S )Nz_coverage_after calledzcoverage combinezcoverage html -d ./cover %sz'coverage xml -o ./cover/coverage.xml %s)r   r   r5   systemr    r#   s    r   r=   zTestrReal._coverage_after   s\    -...
	$%%%
	/$);<<<
	;diGHHHHHr   N)__name__
__module____qualname__descriptionuser_optionsboolean_optionsr   r$   r.   r1   r8   r=    r   r   r   r   5   s        :K  L =<<OD D D
     L L L# # #4H H HI I I I Ir   r   c                   (    e Zd ZdZg Zd Zd Zd ZdS )	TestrFakezRun unit tests using testrc                     d S NrP   r#   s    r   r$   zTestrFake.initialize_options       r   c                     d S rT   rP   r#   s    r   r.   zTestrFake.finalize_options   rU   r   c                 $    t          d           d S )Nz7Install testrepository to run 'testr' command properly.)r<   r#   s    r   r1   zTestrFake.run   s    GHHHHHr   N)rJ   rK   rL   rM   rN   r$   r.   r1   rP   r   r   rR   rR      sP        .KL    I I I I Ir   rR   )r   TF)__doc__r9   r   distutils.errorsr(   r5   r   r2   	getLoggerrJ   r   Commandr   rR   testrepositoryr   
have_testrTestrImportErrorrP   r   r   <module>r`      s&  :             				 



 		8	$	$[I [I [I [I [I [I [I [I|I I I I I I I I''''''JEEE   JEEEEs   
A   	A-,A-