a h$ @ s d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZmZ d dl m Z d dlmZ d dlm Z mZmZmZmZmZmZmZmZ d dlmZ ddlmZ G d d d eZG dd dZG d d deZdS ) N)DistutilsErrorDistutilsOptionError)log) TestLoader) resource_listdirresource_existsnormalize_pathworking_set_namespace_packagesevaluate_markeradd_activation_listenerrequire EntryPoint)Command )_unique_everseenc @ s e Zd Zdd ZdddZdS )ScanningLoaderc C s t | t | _d S N)r __init__set_visitedself r ;/usr/lib/python3.9/site-packages/setuptools/command/test.pyr s zScanningLoader.__init__Nc C s || j v rdS | j | g }|t| | t|drH|| t|drt|jdD ]`}| dr|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. Nadditional_tests__path__ z.pyz__init__.py.z/__init__.pyr r )r addappendr loadTestsFromModulehasattrr r __name__endswithr ZloadTestsFromNamelenZ suiteClass)r modulepatternZtestsfileZ 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 r fget)r r. r r r r <