HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //var/opt/nydus/ops/importlib_resources/tests/__pycache__/util.cpython-39.pyc
a

�,�hD�@sddlZddlZddlZddlZddlZddlZddlmZddlmZddl	m
Z
mZmZm
Z
ddlmZzddlmZmZWn"ey�d	d
�Zdd�ZYn0zdd
lmZWney�dZYn0ddd�ZGdd�de
�ZGdd�d�ZGdd�de�ZdS)�N�)�data01)�	zipdata01�)�ABC�Path�PurePath�FileNotFoundError)�ResourceReader)�
modules_setup�modules_cleanupcCstj��fS�N)�sys�modules�copy�rr�O/opt/nydus/tmp/pip-target-wkfpz8uv/lib/python/importlib_resources/tests/util.pyrsrcCs:dd�tj��D�}tj��tj�|�tj�|�dS)NcSs"g|]\}}|�d�r||f�qS)z
encodings.)�
startswith)�.0�k�vrrr�
<listcomp>s
�z#modules_cleanup.<locals>.<listcomp>)rr�items�clear�update)Z
oldmodules�	encodingsrrrrs
r)�
ModuleSpecTrc	slG���fdd�dt�}d}t�|�}tdurF||_d|_|rhg|_n"|�}t||d|d�}||_||_|S)NcsHeZdZdd�Z�fdd�Z�fdd�Z��fdd�Z��fd	d
�ZdS)zcreate_package.<locals>.ReadercSs|Sr
r��self�packagerrr�get_resource_reader.sz2create_package.<locals>.Reader.get_resource_readercs||_t�t�r��n�SdSr
��_path�
isinstance�	Exception�r�path)�filerr�
open_resource1s
z,create_package.<locals>.Reader.open_resourcecs||_t�t�r��n�SdSr
r!)r�path_)r&rr�
resource_path8s
z,create_package.<locals>.Reader.resource_pathcsJ||_t�t�r���D],}|�d�}t|�dkr|d|krdSqdS)N�/rrTF)r"r#r$�split�len)rr)�entry�parts��contentsr&rr�is_resource?s

z*create_package.<locals>.Reader.is_resourcec3s"t�t�r���D]
}|VqdSr
)r#r$)rr.r0rrr1Is
z'create_package.<locals>.Reader.contentsN)�__name__�
__module__�__qualname__r r(r*r2r1r�r1r'r&rr�Reader-s

r7Ztestingpackagezdoes-not-exist)�origin�
is_package)	r
�types�
ModuleTyperr3�__file__�__path__�__spec__�
__loader__)	r'r&r9r1r7�name�module�loader�specrr6r�create_package,s"#
�rDc@s�eZdZejdd��Zdd�Zdd�Zdd�Ze	�
ejd	kd
�dd��Z
d
d�Zdd�Zdd�Zdd�Zdd�Ze	�
ejdkd�dd��Ze	�
ejdkd�dd��Zdd�ZdS) �CommonTestscCst�dSr
)�NotImplementedError)rrr&rrr�executehszCommonTests.executecCs|�tjd�dS�N�
utf-8.file)rGrr3�rrrr�test_package_namelszCommonTests.test_package_namecCs|�td�dSrH�rGrrJrrr�test_package_objectpszCommonTests.test_package_objectcCsd}|�t|�dSrHrLr%rrr�test_string_pathtszCommonTests.test_string_path)��zrequires os.PathLike supportcCstd�}|�t|�dSrH)rrGrr%rrr�test_pathlib_pathyszCommonTests.test_pathlib_pathcCsLtt�}|jd}|�t��|�t|�Wd�n1s>0YdSrH)rr<�parent�assertRaises�
ValueErrorrGr)rr&�	full_pathrrr�test_absolute_paths
zCommonTests.test_absolute_pathcCs:|�t��|�td�Wd�n1s,0YdS)Nz../data01/utf-8.file)rSrTrGrrJrrr�test_relative_path�szCommonTests.test_relative_pathcCstjtj=|�tjd�dSrH)rrrr3rGrJrrr�$test_importing_module_as_side_effect�s
z0CommonTests.test_importing_module_as_side_effectcCs:|�t��|�td�Wd�n1s,0YdSrH)rS�	TypeErrorrGr3rJrrr�test_non_package_by_name�sz$CommonTests.test_non_package_by_namecCsD|�t��&tjd}|�|d�Wd�n1s60YdS)Nzimportlib_resources.tests.utilrI)rSrYrrrG)rrArrr�test_non_package_by_package�s
z'CommonTests.test_non_package_by_package)rOzNo ResourceReader in Python 2cCs8t�d�}t|t�d�}|�|d�|�|jjd�dS�Ns
Hello, world!�r'r&rI)�io�BytesIOrDr	rG�assertEqualr?r")r�
bytes_datarrrr�test_resource_opener�s
z CommonTests.test_resource_openercCs:t�d�}t}t||d�}|�|d�|�|jjd�dSr\)r^r_r<rDrGr`r?r")rrar&rrrr�test_resource_path�s

zCommonTests.test_resource_pathcCsJtt�t�d�}|�t��|�|d�Wd�n1s<0YdS)Nr]rI)rDr	rSrGrrrr�test_useless_loader�s
�zCommonTests.test_useless_loaderN)r3r4r5�abc�abstractmethodrGrKrMrN�unittestZskipIfr�version_inforQrVrWrXrZr[rbrcrdrrrrrEfs"



rEc@s0eZdZdZedd��Zedd��Zdd�ZdS)�ZipSetupBaseNcCs>t|jj�}|j}t|d�|_tj�|j�t	�
d�|_dS)Nzziptestdata.zipZziptestdata)r�
ZIP_MODULEr<rR�str�	_zip_pathrr&�append�	importlib�
import_module�data)�clsZ	data_path�data_dirrrr�
setUpClass�s
zZipSetupBase.setUpClasscCsxztj�|j�Wnty$Yn0ztj|j=tj|jj=Wnt	yRYn0z|`|`Wnt
yrYn0dSr
)rr&�removerlrT�path_importer_cacherrpr3�KeyError�AttributeError)rqrrr�
tearDownClass�s
zZipSetupBase.tearDownClasscCst�}|jtg|�R�dSr
)rZ
addCleanupr)rrrrr�setUp�szZipSetupBase.setUp)r3r4r5rj�classmethodrsrxryrrrrri�s

ric@seZdZeZdS)�ZipSetupN)r3r4r5rrjrrrrr{�sr{)Tr)rernr^rr:rg�rrZ_compatrrrr	r
Ztest.supportrr�ImportErrorZimportlib.machineryrrDrErir{rrrr�<module>s,

:K#