a
    m¬zf_  ã                   @   s`   d Z ddlZddlZddlZejZejZdd„ Zddd„Zdd„ Zd	d
„ Z	dd„ Z
ddd„ZdS )z test utilities
(part of web.py)
é    Nc                 C   s   dd„ | D ƒS )Nc                 S   s   g | ]}t |d d dƒ‘qS )NÚx)Ú
__import__)Ú.0Úname© r   ú6/var/www/media/lib/python3.9/site-packages/web/test.pyÚ
<listcomp>   ó    z load_modules.<locals>.<listcomp>r   )Únamesr   r   r   Úload_modules   s    r   c                 C   s8   |rt  ¡  || ¡S t| dƒr&|  ¡ S t  ¡  | ¡S dS )zMakes a suite from a module.ÚsuiteN)ÚunittestZ
TestLoaderZloadTestsFromNamesÚhasattrr   ZloadTestsFromModule)ÚmoduleZ
classnamesr   r   r   Úmodule_suite   s
    
r   c                 C   s(   t ƒ }t| ƒD ]}| t |¡¡ q|S )z!Makes a test suite from doctests.)Ú	TestSuiter   ÚaddTestÚdoctestZDocTestSuite©Zmodule_namesr   Úmodr   r   r   Údoctest_suite   s    r   c                 C   s&   t ƒ }t| ƒD ]}| t|ƒ¡ q|S )z&Creates a suite from multiple modules.)r   r   r   r   r   r   r   r   r   "   s    r   c                 C   s   t  ¡ }| | ¡S )N)r   ZTextTestRunnerÚrun)r   Úrunnerr   r   r   ÚrunTests*   s    r   c                 C   sN   | s2t dƒ}dd„ tjdd … D ƒ}t||p.d ƒ} t| ƒ}t | ¡  ¡ d S )NÚ__main__c                 S   s   g | ]}|  d ¡s|‘qS )ú-)Ú
startswith)r   Úar   r   r   r   3   r	   zmain.<locals>.<listcomp>é   )r   ÚsysÚargvr   r   ÚexitZwasSuccessful)r   Zmain_moduleÚargsÚresultr   r   r   Úmain/   s    r$   )N)N)Ú__doc__r   r   r   ZTestCaser   r   r   r   r   r   r$   r   r   r   r   Ú<module>   s   

