o
    g                     @   s   d dl Z d dlZd dlmZ ddlmZ ddlmZ G dd dejejZ	G dd	 d	Z
G d
d de
ejZG dd de
ejZG dd de
ejejZedkrVe  dS dS )    N)	resources   )data01)utilc                   @      e Zd Zdd ZdS )CommonTestsc                 C   s2   t ||	 W d    d S 1 sw   Y  d S )N)r   path)selfpackager    r   S/Users/admin/.pyenv/versions/3.10.0/lib/python3.10/test/test_importlib/test_path.pyexecute
   s   "zCommonTests.executeN)__name__
__module____qualname__r   r   r   r   r   r   	       r   c                   @   r   )	PathTestsc              	   C   s   t | jd6}| |jdt| |jddd}| }W d    n1 s*w   Y  | 	d| W d    d S 1 s@w   Y  d S )N
utf-8.filerzutf-8)encodingzHello, UTF-8 world!
)
r   r   dataZ
assertTruenameendswithrepropenreadZassertEqual)r	   r   filetextr   r   r   test_reading   s   
"zPathTests.test_readingN)r   r   r   r   r   r   r   r   r      r   r   c                   @   s   e Zd ZeZdd ZdS )PathDiskTestsc                 C   sD   t | jd}dt|v sJ W d    d S 1 sw   Y  d S )Nr   r   )r   r   r   strr	   r   r   r   r   test_natural_path   s   "zPathDiskTests.test_natural_pathN)r   r   r   r   r   r"   r   r   r   r   r      s    r   c                   @   r   )PathMemoryTestsc                 C   sB   t d}| |j tj|tdd| _d | jj_	d| jj_
d S )Ns   Hello, UTF-8 world!
zpackage exists only in memory)r   r   F)ioBytesIOZ
addCleanupcloser   Zcreate_packageFileNotFoundErrorr   __spec__originhas_location)r	   r   r   r   r   setUp(   s   

zPathMemoryTests.setUpN)r   r   r   r+   r   r   r   r   r#   '   r   r#   c                   @   r   )PathZipTestsc                 C   s<   t | jd}|  W d    d S 1 sw   Y  d S )Nr   )r   r   r   unlinkr!   r   r   r   test_remove_in_context_manager3   s   
"z+PathZipTests.test_remove_in_context_managerN)r   r   r   r.   r   r   r   r   r,   2   r   r,   __main__)r$   Zunittest	importlibr    r   r   ZCommonResourceTestsZTestCaser   r   r   r#   ZZipSetupr,   r   mainr   r   r   r   <module>   s    