a
    ¼3jK  ć                   @   s¶   d dl mZ d dl mZ e d”ZddlZddlZe ejj	du d”G dd dej
Zejeed	\ZZe ejj	du d”G d
d dej
Z
eje
ed	\ZZedkr²e ”  dS )é   )Śabc)Śutilzimportlib.machineryé    Nzno reasonable builtin modulec                   @   s8   e Zd ZdZdd ZdZdZdZdZdd Z	dd Z
dS )	ŚFindSpecTestsz&Test find_spec() for built-in modules.c                 C   s\   t  t jj”: | jj t jj”}|  |” |  |j	d” W d    n1 sN0    Y  d S )Nzbuilt-in)
r   ŚuncacheŚBUILTINSŚ	good_nameŚ	machineryŚBuiltinImporterŚ	find_specŚ
assertTrueZassertEqualŚorigin©ŚselfŚfound© r   śc/www/server/python_manager/versions/3.9.10/lib/python3.9/test/test_importlib/builtin/test_finder.pyŚtest_module   s    
zFindSpecTests.test_moduleNc                 C   s.   d}|t jvsJ | jj |”}|  |” d S ©NŚ	importlib)ŚsysŚbuiltin_module_namesr	   r
   r   ŚassertIsNone)r   ŚnameŚspecr   r   r   Śtest_failure"   s    zFindSpecTests.test_failurec                 C   sR   t  t jj”0 | jj t jjdg”}|  |” W d    n1 sD0    Y  d S ©NZpkg)r   r   r   r   r	   r
   r   r   )r   r   r   r   r   Śtest_ignore_path(   s
    ’zFindSpecTests.test_ignore_path)Ś__name__Ś
__module__Ś__qualname__Ś__doc__r   Śtest_packageŚtest_module_in_packageŚtest_package_in_packageŚtest_package_over_moduler   r   r   r   r   r   r   
   s   r   )r	   c                   @   s8   e Zd ZdZdd Zd Z ZZdZdd Z	dd Z
dS )	ŚFinderTestsz(Test find_module() for built-in modules.c                 C   s^   t  t jj”< | jj t jj”}|  |” |  t|d” W d    n1 sP0    Y  d S )NŚload_module)	r   r   r   r   r	   r
   Śfind_moduler   Śhasattrr   r   r   r   r   :   s    
zFinderTests.test_moduleNc                 C   s*   dt jvsJ | jj d”}|  |” d S r   )r   r   r	   r
   r(   r   ©r   Śloaderr   r   r   r   G   s    zFinderTests.test_failurec                 C   sR   t  t jj”0 | jj t jjdg”}|  |” W d    n1 sD0    Y  d S r   )r   r   r   r   r	   r
   r(   r   r*   r   r   r   r   L   s
    ’zFinderTests.test_ignore_path)r   r   r    r!   r   r"   r$   r%   r#   r   r   r   r   r   r   r&   5   s   r&   Ś__main__)Ś r   r   Zimport_importlibr	   r   ZunittestZskipIfr   r   r&   r   Z	test_bothZFrozen_FindSpecTestsZSource_FindSpecTestsZFrozen_FinderTestsZSource_FinderTestsr   Śmainr   r   r   r   Ś<module>   s    
'ž ž