Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/test/__pycache__/test_pkgutil.cpython-38.opt-2.pyc
U

>��g�L�@s�ddlmZmZmZmZddlmZddlZddlZddl	Z	ddl
mZddlZddl
Z
ddlZ
ddlZddlZddlZGdd�dej�ZGdd�dej�ZGd	d
�d
ej�ZGdd�dej�ZGd
d�dej�Zdd�Zedkr�e�dS)�)�run_unittest�unload�check_warnings�CleanImport)�PathN)�spec_from_file_locationc@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�PkgutilTestscCs.t��|_|�tj|j�tj�d|j�dS�Nr)	�tempfile�mkdtemp�dirname�
addCleanup�shutil�rmtree�sys�path�insert��self�r�0/opt/cppython/lib/python3.8/test/test_pkgutil.py�setUps
zPkgutilTests.setUpcCstjd=dSr	)rrrrrr�tearDownszPkgutilTests.tearDowncCs�d}d}tj�|j|�}t�|�ttj�|d�d�}|��ttj�|d�d�}|�|�|��t�tj�|d��ttj�|dd�d�}|�|�|��t�	|d�}|�
||�t�	|d�}|�
||�tj|=dS)N�test_getdata_filesys�%Hello, world!
Second line
Third line�__init__.py�wb�res.txt�sub�sub/res.txt)
�osr�joinr�mkdir�open�close�write�pkgutil�get_data�assertEqualr�modules)r�pkg�
RESOURCE_DATAZpackage_dir�f�res1�res2rrrrs$


z!PkgutilTests.test_getdata_filesysc
Cs�d}d}d}tj�|j|�}t�|d�}|�|dd�|�|d|�|�|d|�|��tj�	d	|�t
�|d
�}|�||�t
�|d�}|�||�g}t
�
|g�D]}	|�|	t
j�|�|	j�q�|�|dg�tjd	=tj|=dS)N�test_getdata_zipfile.zip�test_getdata_zipfiler�w�/__init__.py��/res.txtz/sub/res.txtrrr)r rr!r�zipfile�ZipFile�writestrr$rrr&r'r(�iter_modules�assertIsInstance�
ModuleInfo�append�namer))
r�zipr*r+�zip_file�zr-r.�names�
moduleinforrrr0;s*z!PkgutilTests.test_getdata_zipfilec

Csd}d}d}tj�|j|�}t�|d�}|�|dd�|�|d|�|��tj�	d|�z^t�
|d	�}|�||�g}t�t|�g�D]}|�|tj�|�|j�q�|�||g�W5tjd=tj
�|d�Xd
}	|�t|	��tt�d��W5QRXdS)Nr/r0rr1r2r3r4rrz9path must be None or list of paths to look for modules inZinvalid_path)r rr!rr5r6r7r$rrr)�popr&r'r(r8rr9r:r;r<ZassertRaisesRegex�
ValueError�list)
rr=r*r+r>r?�resr@rAZexpected_msgrrr�test_issue44061_iter_modules^s,z)PkgutilTests.test_issue44061_iter_modulescCsRd}tj�|j|�}t�|d�|�tj|�tj|jgd�D]}|�	d�q>dS)NZunreadable_packager)rzunexpected package found)
r rr!rr"r
�rmdirr&�
walk_packages�fail)rZpackage_name�d�trrr�test_unreadable_dir_on_syspath�sz+PkgutilTests.test_unreadable_dir_on_syspathc	Cspd}tj�|j|�}t�|�ttj�|d�d�}|��t�tj�|d��ttj�|dd�d�}|��ttj�|dd�d�}|��d}tj�|j|�}t�|�ttj�|d�d�}|��t�tj�|d��ttj�|dd�d�}|��ttj�|dd�d�}|��dddddd	g}d
d�t�|jg�D�}|�	||�|D]}|�
d��r`�qLtj|=�qLdS)
N�test_walkpackages_filesysrrrzmod.pyzsub.test_walkpackages_filesysz!sub.test_walkpackages_filesys.modztest_walkpackages_filesys.subz!test_walkpackages_filesys.sub.modcSsg|]}|d�qS��r��.0�errr�
<listcomp>�sz:PkgutilTests.test_walkpackages_filesys.<locals>.<listcomp>�mod)
r rr!rr"r#r$r&rHr(�endswithrr))	r�pkg1Zpkg1_dirr,�pkg2Zpkg2_dir�expected�actualr*rrrrM�sB

�z&PkgutilTests.test_walkpackages_filesysc	Csd}d}d}tj�|j|�}t�|d�}|�|dd�|�|d|dd�|�|d|dd�|�|dd�|�|d|dd�|�|d|dd�|��tj�	d	|�dd
dddd
g}dd�t
�|g�D�}|�||�tjd	=|D]}|�
d��rq�tj|=q�dS)Nztest_walkpackages_zipfile.zip�test_walkpackages_zipfilerr1r2r3�/z/mod.pyrzsub.test_walkpackages_zipfilez!sub.test_walkpackages_zipfile.modztest_walkpackages_zipfile.subz!test_walkpackages_zipfile.sub.modcSsg|]}|d�qSrNrrPrrrrS�sz:PkgutilTests.test_walkpackages_zipfile.<locals>.<listcomp>rT)r rr!rr5r6r7r$rrr&rHr(rUr))	rr=rVrWr>r?rXrYr*rrrrZ�s6�z&PkgutilTests.test_walkpackages_zipfilec	Cs\d}|�ttf��tt�|��W5QRXd}|�ttf��tt�|��W5QRXdS)NZtest_dirstest_dir)�assertRaises�	TypeErrorrCrDr&rH)rZ	str_inputZbytes_inputrrr�2test_walk_packages_raises_on_string_or_bytes_input�sz?PkgutilTests.test_walk_packages_raises_on_string_or_bytes_inputN)�__name__�
__module__�__qualname__rrrr0rFrLrMrZr^rrrrrs#'(#rc@sLeZdZGdd�de�ZGdd�de�Zdd�Zdd�Zd	d
�Zdd�Z	d
S)�PkgutilPEP302Testsc@s$eZdZdd�Zdd�Zdd�ZdS)zPkgutilPEP302Tests.MyTestLoadercCsdS�Nr)r�specrrr�
create_module�sz-PkgutilPEP302Tests.MyTestLoader.create_modulecCs|j�dd�d|jd<dS)N�loadsrrO)�__dict__�get)rrTrrr�exec_module�sz+PkgutilPEP302Tests.MyTestLoader.exec_modulecCsdS)N�
Hello, world!r)rrrrrr'�sz(PkgutilPEP302Tests.MyTestLoader.get_dataN)r_r`rarerir'rrrr�MyTestLoader�srkc@seZdZddd�ZdS)z!PkgutilPEP302Tests.MyTestImporterNcCs t��}t|d|jj|gd�S)Nz<%s>)�loader�submodule_search_locations)rbrkr�	__class__r_)r�fullnamer�targetrlrrr�	find_spec�s
�z+PkgutilPEP302Tests.MyTestImporter.find_spec)NN)r_r`rarqrrrr�MyTestImporter�srrcCstj�d|���dSr	)r�	meta_pathrrrrrrrr�szPkgutilPEP302Tests.setUpcCstjd=dSr	)rrsrrrrr�szPkgutilPEP302Tests.tearDowncCs |�t�dd�d�tjd=dS)N�foo�dummyrj)r(r&r'rr)rrrr�test_getdata_pep302sz&PkgutilPEP302Tests.test_getdata_pep302cCsDddl}|�|jd�|�t�dd�d�|�|jd�tjd=dS)NrrOrtrurj)rtr(rfr&r'rr))rrtrrr�test_alreadyloadeds
z%PkgutilPEP302Tests.test_alreadyloadedN)
r_r`ra�objectrkrrrrrvrwrrrrrb�srbc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�ExtendPathTestsc	Cs\t��}tj�d|�tj�||�}t�|�ttj�|d�d��}|�	d�W5QRX|S)Nrrr1zKfrom pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
)
r
rrrrr r!r"r#r%)r�pkgnamerZpkgdir�flrrr�create_inits
zExtendPathTests.create_initc	Cs@tj�|||d�}t|d��}td�|�|d�W5QRXdS)N�.pyr1zvalue={})�file)r rr!r#�print�format)rrrzZsubmodule_name�value�module_namer{rrr�create_submodulesz ExtendPathTests.create_submodulec	Cs�d}|�|�}|�|�}|�||dd�|�||dd�ddl}ddl}|�|jjd�|�|jjd�|�t|j	�tt
j�||�t
j�||�g��t
�|�t
�|�tjd=tjd=tjd=tjd=tjd=dS)Nrt�barr�bazrO�foo.bar�foo.baz)r|r��foo.bar�foo.bazr(r�r�r��sorted�__path__r rr!rrrr)�rrzZ	dirname_0Z	dirname_1rtrrr�test_simple$s*

��

zExtendPathTests.test_simplec
Cs�tj}tj}d}d}|�|�}tj�||�}d�||�}tj	�
|d�tj	�
|d�z�|�|||d�t�|�t||��}||�}	|D]t}
t�|
|�}|j}z
|j}Wntk
r�YnX|�|
tjj�|�|
|	�|�|tjj�|�t�|
|��q�|�t��t|d��W5QRX|�t��t|d��W5QRXW5t�|�tjd=ztj	d=tj	d=Wnt
k
�r�YnXXdS)N�spamZeggsz{}.{}rz	spam.eggszinvalid.modulez.spam)r&�iter_importers�get_importerr|r rr!r�rr)rBrr�KeyErrorr��	importlib�
import_modulerD�	_get_specrl�AttributeErrorr9�	machinery�
FileFinderr(�SourceFileLoader�assertIsNoner\�ImportError)
rr�r�rz�modnamerZpathitemroZ	importersZexpected_importer�finderrdrlrrr�test_iter_importersAsL


�
z#ExtendPathTests.test_iter_importersc	Cs�d}|�|�}|�|�}|�||dd�t�tj�||d��|�||dd�ddl}ddl}|�|j	j
d�|�|jj
d�|�t|j
�ttj�||�tj�||�g��t�|�t�|�tjd=tjd=tjd=tjd=tjd=dS)	Nrtr�rrr�rOr�r�)r|r�r �unlinkrr!r�r�r(r�r�r�r�r�rrrr)r�rrr�test_mixed_namespaceqs,

��

z$ExtendPathTests.test_mixed_namespaceN)r_r`rar|r�r�r�r�rrrrrys
0ryc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�NestedNamespacePackageTestcCst��|_tjdd�|_dSrc)r
r�basedirrr�old_pathrrrrr�s
z NestedNamespacePackageTest.setUpcCs |jtjdd�<t�|j�dSrc)r�rrrrr�rrrrr�sz#NestedNamespacePackageTest.tearDownc	Csl|�dd�\}}tj�|j|�dtjj��}tj|dd�ttj�||d�d��}|�	|�W5QRXdS)N�.rOT)�exist_okr}r1)
�rsplitr rr!r��replace�sep�makedirsr#r%)rr<�contents�base�final�	base_pathr,rrrre�s
z(NestedNamespacePackageTest.create_modulecCsd}|�d|�|�d|�|�d|�|�d|�|�dd�|�dd	�tj�d
tj�|jd��tj�d
tj�|jd��d
dl}|�t	d
�|�
t|j�d�d
dl
}|�t	d�|�
t|jj�d�d
dlm}d
dlm}|�
|d�|�
|d�dS)NzBimport pkgutil; __path__ = pkgutil.extend_path(__path__, __name__)za.pkg.__init__zb.pkg.__init__za.pkg.subpkg.__init__zb.pkg.subpkg.__init__za.pkg.subpkg.czc = 1zb.pkg.subpkg.dzd = 2r�a�br*�z
pkg.subpkg)�c)rJrO)rerrrr r!r�r*r
rr(�lenr�Z
pkg.subpkgZsubpkgZpkg.subpkg.cr�Zpkg.subpkg.drJ)rZpkgutil_boilerplater*r�rJrrr�test_nested�s(�z&NestedNamespacePackageTest.test_nestedN)r_r`rarrrer�rrrrr��sr�c@s�eZdZdd�Zdd�Zdd�Zdd�Ze�ed	kd
�dd��Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS)�ImportlibMigrationTestscCstdtf�S)Nz5This emulation is deprecated, use 'importlib' instead)r�DeprecationWarningrrrr�check_deprecated�s
��z(ImportlibMigrationTests.check_deprecatedc	Cs"|���t�d�W5QRXdS�Nr3)r�r&ZImpImporterrrrr�test_importer_deprecated�s
z0ImportlibMigrationTests.test_importer_deprecatedc	Cs(|���t�dddd�W5QRXdSr�)r�r&Z	ImpLoaderrrrr�test_loader_deprecated�s
z.ImportlibMigrationTests.test_loader_deprecatedc	CsXt��H}|�t�d��|�t�d��|�t�d��|�t|j�d�W5QRXdS�Nrr ztest.supportr)r�assertIsNotNoner&�
get_loaderr(r��warnings�rr1rrr� test_get_loader_avoids_emulation�s
z8ImportlibMigrationTests.test_get_loader_avoids_emulation�__main__znot compatible with __main__c	CsJt}bz8t��(}|�t�t��|�t|j�d�W5QRXW5|aXdSr	)	�
__loader__rr�r&r�r_r(r�r�)rZthis_loaderr1rrr�0test_get_loader_handles_missing_loader_attribute�s zHImportlibMigrationTests.test_get_loader_handles_missing_loader_attributec	CsJd}tt�|�}|`t|��|tj|<t�|�}W5QRX|�|�dS�Nr���typer�__spec__rr)r&r�r��rr<rTrlrrr�.test_get_loader_handles_missing_spec_attribute�s

zFImportlibMigrationTests.test_get_loader_handles_missing_spec_attributec	CsLd}tt�|�}d|_t|��|tj|<t�|�}W5QRX|�|�dSr�r�r�rrr�+test_get_loader_handles_spec_attribute_none�s

zCImportlibMigrationTests.test_get_loader_handles_spec_attribute_nonecCs6d}dtj|<zt�|�}W5tj|=X|�|�dS�Nz
totally bogus)rr)r&r�r��rr<rlrrr�#test_get_loader_None_in_sys_modules�s

z;ImportlibMigrationTests.test_get_loader_None_in_sys_modulescCsd}t�|�}|�|�dSr�)r&�find_loaderr�r�rrr�test_find_loader_missing_module�s
z7ImportlibMigrationTests.test_find_loader_missing_modulec	CsXt��H}|�t�d��|�t�d��|�t�d��|�t|j�d�W5QRXdSr�)rr�r&r�r(r�r�r�rrr�!test_find_loader_avoids_emulation�s
z9ImportlibMigrationTests.test_find_loader_avoids_emulationc	Cs8t��(}|�t�d��|�t|j�d�W5QRXdS)Nz*??r)rr�r&r�r(r�r�r�rrr�"test_get_importer_avoids_emulationsz:ImportlibMigrationTests.test_get_importer_avoids_emulationcCs6zt�td��Wntk
r0|�d�YnXdS)Nz/homez3Unexpected AttributeError when calling get_importer)r&r�rr�rIrrrr�test_issue44061sz'ImportlibMigrationTests.test_issue44061c	Cs6t��&}t��D]}q|�t|j�d�W5QRXdSr	)rr&r�r(r�r�)rr1Zimporterrrr�$test_iter_importers_avoids_emulationsz<ImportlibMigrationTests.test_iter_importers_avoids_emulationN)r_r`rar�r�r�r��unittestZskipIfr�r�r�r�r�r�r�r�r�rrrrr��s
			r�cCs6tttttt�ddl}ddl}|j�	�|�
�dSr	)rrrbryr�r��	zipimportr��_zip_directory_cache�clear�invalidate_caches)r�r�rrr�	test_mains�
r�r�)Ztest.supportrrrr�pathlibrr�rr��importlib.utilrr&r Zos.pathr
rr5ZTestCaserrbryr�r�r�r_rrrr�<module>s(S-})^


F1le Man4ger