3 ՔRe# @ s d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZmZ d dl m Z d dlmZ d dlm Z d dlmZmZ d dlmZmZmZmZmZmZmZmZmZ d dlmZ G d d d eZG dd deZG d d deZ dS ) N)DistutilsErrorDistutilsOptionError)log) TestLoader)six)mapfilter) resource_listdirresource_existsnormalize_pathworking_set_namespace_packagesevaluate_markeradd_activation_listenerrequire EntryPoint)Commandc @ s e Zd Zdd ZdddZdS )ScanningLoaderc C s t j| t | _d S )N)r __init__set_visited)self r /builddir/build/BUILDROOT/alt-python36-setuptools-38.5.2-7.el9.x86_64/opt/alt/python36/lib/python3.6/site-packages/setuptools/command/test.pyr s zScanningLoader.__init__Nc C s || j krdS | j j| g }|jtj| | t|drH|j|j t|drxpt|jdD ]`}|j dr|dkr|jd |dd }n"t |j|d r`|jd | }nq`|j| j| q`W t|d kr| j |S |d S dS ) a Return a suite of all tests cases contained in the given module If the module is a package, load tests from all the modules in it. If the module has an ``additional_tests`` function, call it and add the return value to the tests. Nadditional_tests__path__ z.pyz__init__.py. z/__init__.py r )r addappendr loadTestsFromModulehasattrr r __name__endswithr ZloadTestsFromNamelenZ suiteClass)r modulepatterntestsfile submoduler r r r# s$ z"ScanningLoader.loadTestsFromModule)N)r% __module____qualname__r r# r r r r r s r c @ s e Zd Zdd ZdddZdS )NonDataPropertyc C s || _ d S )N)fget)r r0 r r r r > s zNonDataProperty.__init__Nc C s |d kr| S | j |S )N)r0 )r objZobjtyper r r __get__A s zNonDataProperty.__get__)N)r% r- r. r r2 r r r r r/ = s r/ c @ s e Zd ZdZdZd%d&d'gZdd Zdd Zedd Z dd Z dd Zej g fddZeej dd Zedd Zdd Zdd Zed d! Zed"d# Zd$S )(testz.Command to run unit tests after in-place buildz#run unit tests after in-place buildtest-module=m$Run 'test_suite' in specified moduletest-suite=s9Run single test, case or suite (e.g. 'module.test_suite')test-runner=rTest runner to usec C s d | _ d | _d | _d | _d S )N) test_suitetest_moduletest_loadertest_runner)r r r r initialize_optionsS s ztest.initialize_optionsc C s | j r| jrd}t|| j d krD| jd kr8| jj | _ n| jd | _ | jd kr^t| jdd | _| jd krnd| _| jd krt| jdd | _d S )Nz1You may specify a module or a suite, but not bothz.test_suiter? z&setuptools.command.test:ScanningLoaderr@ )r= r> r distributionr? getattrr@ )r msgr r r finalize_optionsY s ztest.finalize_optionsc C s t | j S )N)list _test_args)r r r r test_argsl s ztest.test_argsc c s6 | j rtjdkrdV | jr$dV | j r2| j V d S )N Zdiscoverz --verbose)rI rJ )r= sysversion_infoverbose)r r r r rG p s ztest._test_argsc C s | j | W dQ R X dS )zI Backward compatibility for project_on_sys_path context. N)project_on_sys_path)r funcr r r with_project_on_sys_pathx s ztest.with_project_on_sys_pathc c sP t jot| jdd}|rv| jddd | jd | jd}t|j}| jd|d | jd | jddd | jd n"| jd | jdd d | jd | jd}t j d d }t jj }zbt|j }t j jd| tj td d td|j|jf | j|g d V W d Q R X W d |t j d d <