o
    OZh$                     @   sx   d dl Z d dlZ d dlZd dlZd dlmZ d dlZd dlZd dlZej	d Z
G dd dejZedkr:e  dS dS )    N)example_pathzpygame.imageextc                   @   s   e Zd Zdd Zdd Zeddd Zeddd	 Zd
d Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd ZdS )ImageextModuleTestc                 C   s$   t ddd}| ttj|g  d S )N
   r   r       )pygameSurfaceassertRaises	TypeErrorimageextsave_extended)selfim r   I/var/www/auris/lib/python3.10/site-packages/pygame/tests/imageext_test.pytest_save_non_string_file   s   z,ImageextModuleTest.test_save_non_string_filec                 C   s   |  ttjg  d S )N)r	   r
   r   load_extendedr   r   r   r   test_load_non_string_file   s   z,ImageextModuleTest.test_load_non_string_filez'SDL silently removes invalid charactersc                 C   *   t ddd}d}| t jtj|| d S )Nr   r   r   	a b c.pngr   r   r	   errorr   r   )r   r   ur   r   r   test_save_bad_filename   s   z)ImageextModuleTest.test_save_bad_filenamec                 C   s   d}|  tjtj| d S )Nr   )r	   r   r   r   r   )r   r   r   r   r   test_load_bad_filename   s   z)ImageextModuleTest.test_load_bad_filenamec                 C   r   )Nr   r   r   foo.barr   )r   r   sr   r   r   test_save_unknown_extension"   s   z.ImageextModuleTest.test_save_unknown_extensionc                 C      d}|  ttj| d S )Nr   r	   FileNotFoundErrorr   r   r   r   r   r   r   test_load_unknown_extension'      z.ImageextModuleTest.test_load_unknown_extensionc                 C   r   )Nznonexistent.pngr    r"   r   r   r   test_load_unknown_file+   r$   z)ImageextModuleTest.test_load_unknown_filec                 C   s   t d}t|}d S )Ndata/alien1.png)r   r   r   )r   r   r   r   r   r   test_load_unicode_path_0/   s   z+ImageextModuleTest.test_load_unicode_path_0c              	   C   sV   ddl }td}tjtdd}||| zt|}W t| dS t| w )znon-ASCII unicoder   Nr&   data
   你好.png)	shutilr   ospathjoincopyr   r   remove)r   r*   origtempr   r   r   r   test_load_unicode_path_13   s   z+ImageextModuleTest.test_load_unicode_path_1c                 C   s   t ddd}zt|d}W d    n1 sw   Y  t| W n ty/   tdw | tj	
| z$t|| | tj	|d W zt| W d S  ty]   Y d S w zt| W w  tyn   Y w w )Nr   r   r   wzthe path cannot be openedr   )r   r   openr+   r/   OSErrorunittestZSkipTestZassertFalser,   existsr   r   ZassertGreatergetsize)r   	temp_filer   fr   r   r   _unicode_save?   s.   
z ImageextModuleTest._unicode_savec                 C   s   |  d dS )zunicode object with ASCII charsztemp_file.pngNr;   r   r   r   r   test_save_unicode_path_0T   s   z+ImageextModuleTest.test_save_unicode_path_0c                 C   s   |  d d S )Nr)   r<   r   r   r   r   test_save_unicode_path_1X   s   z+ImageextModuleTest.test_save_unicode_path_1N)__name__
__module____qualname__r   r   r6   skipr   r   r   r#   r%   r'   r2   r;   r=   r>   r   r   r   r   r      s    

r   __main__)r+   Zos.pathsysr6   Zpygame.tests.test_utilsr   r   Zpygame.imageZpygame.pkgdatamodulesr   ZTestCaser   r?   mainr   r   r   r   <module>   s    
O