U
    ^»{jy
  ã                   @   sÊ   d dl Z d dlZddlmZ G dd„ deje jƒZG dd„ deje jƒZG dd	„ d	ƒZ	G d
d„ de	ej
e jƒZG dd„ de	ej
e jƒZG dd„ de	eje jƒZG dd„ de	eje jƒZedkrÆe  ¡  dS )é    Né   )Úutilc                   @   s   e Zd Zdd„ ZdS )ÚCommonBinaryTestsc              	   C   s*   t  |¡ |¡}| d¡� W 5 Q R X d S )NÚrb©Ú	resourcesÚfilesÚjoinpathÚopen©ÚselfÚpackageÚpathÚtarget© r   úb/var/www/html/bwave/python/venv/lib/python3.8/site-packages/importlib_resources/tests/test_open.pyÚexecute   s    zCommonBinaryTests.executeN©Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s   r   c                   @   s   e Zd Zdd„ ZdS )ÚCommonTextTestsc              	   C   s,   t  |¡ |¡}|jdd�� W 5 Q R X d S )Núutf-8©Úencodingr   r   r   r   r   r      s    zCommonTextTests.executeNr   r   r   r   r   r      s   r   c                   @   s<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )Ú	OpenTestsc              	   C   sF   t  | j¡d }| d¡�"}| ¡ }|  |ttdƒƒ¡ W 5 Q R X d S )Nzbinary.filer   é   )r   r   Údatar
   ÚreadÚassertEqualÚbytesÚrange©r   r   ÚfpÚresultr   r   r   Útest_open_binary   s    zOpenTests.test_open_binaryc              	   C   s@   t  | j¡d }|jdd��}| ¡ }|  |d¡ W 5 Q R X d S )Nz
utf-8.filer   r   zHello, UTF-8 world!
©r   r   r   r
   r   r   r"   r   r   r   Útest_open_text_default_encoding   s    z)OpenTests.test_open_text_default_encodingc              	   C   sB   t  | j¡d }|jddd��}| ¡ }W 5 Q R X |  |d¡ d S )Núutf-16.filezutf-16Ústrict©r   ÚerrorszHello, UTF-16 world!
r&   r"   r   r   r   Útest_open_text_given_encoding"   s    z'OpenTests.test_open_text_given_encodingc              	   C   sj   t  | j¡d }|jddd��}|  t|j¡ W 5 Q R X |jddd��}| ¡ }W 5 Q R X |  |d¡ dS )zD
        Raises UnicodeError without the 'errors' argument.
        r(   r   r)   r*   Úignorez*H e l l o ,   U T F - 1 6   w o r l d ! 
 N)r   r   r   r
   ÚassertRaisesÚUnicodeErrorr   r   r"   r   r   r   Útest_open_text_with_errors(   s    þz$OpenTests.test_open_text_with_errorsc              	   C   s4   t  | j¡d }|  t¡� | d¡ W 5 Q R X d S )Núdoes-not-existr   ©r   r   r   r.   ÚFileNotFoundErrorr
   ©r   r   r   r   r   Ú"test_open_binary_FileNotFoundError8   s    z,OpenTests.test_open_binary_FileNotFoundErrorc              	   C   s6   t  | j¡d }|  t¡� |jdd� W 5 Q R X d S )Nr1   r   r   r2   r4   r   r   r   Ú test_open_text_FileNotFoundError=   s    z*OpenTests.test_open_text_FileNotFoundErrorN)	r   r   r   r%   r'   r,   r0   r5   r6   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚOpenDiskTestsN©r   r   r   r   r   r   r   r7   C   s   r7   c                   @   s   e Zd ZdZdS )ÚOpenDiskNamespaceTestsÚnamespacedata01N©r   r   r   ÚMODULEr   r   r   r   r9   G   s   r9   c                   @   s   e Zd ZdS )ÚOpenZipTestsNr8   r   r   r   r   r=   K   s   r=   c                   @   s   e Zd ZdZdS )ÚOpenNamespaceZipTestsr:   Nr;   r   r   r   r   r>   O   s   r>   Ú__main__)ZunittestZimportlib_resourcesr   Ú r   ZCommonTestsZTestCaser   r   r   Z	DiskSetupr7   r9   ZZipSetupr=   r>   r   Úmainr   r   r   r   Ú<module>   s   .