Your IP : 3.142.172.250
U
�Qab�% � @ 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 d d
lmZ eZ G dd� de�Z!G d
d� d�Z"G dd� de�Z#dS )� N)�DistutilsError�DistutilsOptionError)�log)�
TestLoader)�six)�map�filter) �resource_listdir�resource_exists�normalize_path�working_set�_namespace_packages�evaluate_marker�add_activation_listener�require�
EntryPoint)�Command� )�_unique_everseenc @ s e Zd Zdd� Zddd�ZdS )�ScanningLoaderc C s t �| � t� | _d S �N)r �__init__�set�_visited��self� r �;/usr/lib/python3.8/site-packages/setuptools/command/test.pyr s
zScanningLoader.__init__Nc C s� || j krdS | j �|� g }|�t�| |�� t|d�rH|�|�� � t|d�r�t|jd�D ]`}|� d�r�|dkr�|jd |dd� }n"t
|j|d �r^|jd | }nq^|�| �|�� q^t|�d
kr�| �
|�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.
N�additional_tests�__path__� z.pyz__init__.py�.���z/__init__.pyr r )r �add�appendr �loadTestsFromModule�hasattrr r �__name__�endswithr
ZloadTestsFromName�lenZ
suiteClass)r �module�patternZtests�fileZ submoduler r r r% s$
z"ScanningLoader.loadTestsFromModule)N)r'