File: //opt/cppython/lib/python3.8/test/test_importlib/__pycache__/test_api.cpython-38.opt-2.pyc
U
/D�gsI � @ sZ d dl mZ e�d�Ze�d�Ze�d�ZddlZddlZddl m
Z
ddlZddlZddl
Z
G dd � d �Zejeed
�\ZZG dd� d�ZG d
d� de�Zejeed
�\ZZG dd� de�Zejeed
�\ZZG dd� d�Zejeeed�\ZZG dd� d�Zejeed
�\ZZG dd� dej�Z G dd� d�Z!eje!ed�\Z"Z#e$dk�rVe�%� dS )� )�util� importlibzimportlib.utilzimportlib.machinery� N)�supportc @ sD e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dS )�ImportModuleTestsc
C sN t �d��:}t j|gd�� | j�d�}| �|jd� W 5 Q R X W 5 Q R X d S )N� top_level�� meta_path�� test_util�mock_modules�import_state�init�
import_module�assertEqual�__name__)�self�mock�module� r �;/opt/cppython/lib/python3.8/test/test_importlib/test_api.py�test_module_import s z$ImportModuleTests.test_module_importc
C sh d}d� |�}d� |�}t�||��:}tj|gd�� | j�|�}| �|j|� W 5 Q R X W 5 Q R X d S �N�pkg�{0}.__init__z{0}.modr ��formatr r r
r r r r �r �pkg_name�
pkg_long_name�namer r r r r �test_absolute_package_import s
z.ImportModuleTests.test_absolute_package_importc
C s� d}d� |�}d}d� ||�}d� |�}t�||��H}tj|gd��. | j�|� | j�||�}| �|j|� W 5 Q R X W 5 Q R X d S )Nr r �modz{0}.{1}z.{0}r r )r r r �module_nameZ
absolute_nameZ
relative_namer r r r r �$test_shallow_relative_package_import$ s
z6ImportModuleTests.test_shallow_relative_package_importc
C sr dddg}t j|� �T}t j|gd��: | j�d� | j�d� | j�dd�}| �|jd� W 5 Q R X W 5 Q R X d S )N�
a.__init__za.b.__init__za.cr �a�a.bz..cr
)r �modulesr r r r r �!test_deep_relative_package_import1 s
z3ImportModuleTests.test_deep_relative_package_importc
C sv d}d� |�}d� |�}t�||��H}tj|gd��. | j�|� | j�||�}| �|j|� W 5 Q R X W 5 Q R X d S r r r r r r �!test_absolute_import_with_package: s
z3ImportModuleTests.test_absolute_import_with_packagec C s&