U
    e»{j¦	  ã                   @   sl   d dl Zd dlZd dlmZ d dlmZ erHd dlmZ	 d dl
mZmZ ejje dd�G dd„ dƒƒZdS )	é    N)Úfits)ÚHAS_MATPLOTLIB)Úfits2bitmapÚmainzrequires matplotlib)Úreasonc                   @   s~   e Zd Zdd„ Zejjdd„ ƒZejjdd„ ƒZejjdd„ ƒZ	ejjd	d
„ ƒZ
ej dddg¡dd„ ƒZejjdd„ ƒZdS )ÚTestFits2Bitmapc                 C   s   d| _ t d¡ d¡| _d S )Nú	test.fitsi @  )é€   r	   )ÚfilenameÚnpZarangeZreshapeÚarray)Úself© r   ús/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/visualization/scripts/tests/test_fits2bitmap.pyÚsetup_class   s    zTestFits2Bitmap.setup_classc                 C   s$   || j  }t || j¡ t|ƒ d S )N)r
   r   Úwritetor   r   ©r   Útmp_pathr
   r   r   r   Útest_function   s    
zTestFits2Bitmap.test_functionc                 C   s.   t || j ƒ}t || j¡ t|ddgƒ d S )Nú-eÚ0)Ústrr
   r   r   r   r   r   r   r   r   Útest_script   s    zTestFits2Bitmap.test_scriptc                 C   sL   t || j ƒ}t ¡ }t | j¡}t ||g¡}| |¡ t|ddgƒ d S )Nr   Ú1)	r   r
   r   Ú
PrimaryHDUÚImageHDUr   ÚHDUListr   r   )r   r   r
   Úhdu1Úhdu2Úhdulistr   r   r   Útest_exten_num!   s    
zTestFits2Bitmap.test_exten_numc                 C   sZ   t || j ƒ}t ¡ }d}t | j¡}||jd< t ||g¡}| |¡ t	|d|gƒ d S )NZSCIZEXTNAMEr   )
r   r
   r   r   r   r   Úheaderr   r   r   )r   r   r
   r   Zextnamer   r   r   r   r   Útest_exten_name*   s    

zTestFits2Bitmap.test_exten_nameÚ
file_extenz.gzz.bz2c                 C   s2   t |d|› � ƒ}t || j¡ t|ddgƒ d S )Nr   r   r   )r   r   r   r   r   )r   r   r#   r
   r   r   r   Útest_compressed_fits5   s    z$TestFits2Bitmap.test_compressed_fitsc                 C   sˆ   t || j ƒ}d}t || ƒ}t d¡}d|dd…dd…f< t ||¡ t|ddd	|gƒ t |¡}|d
 dkstt	‚|d dks„t	‚dS )zQ
        Regression test to check the image vertical orientation/origin.
        zfits2bitmap_test.png)é    r%   g      ð?r   é   Nr   r   z-o)r   r   r   )é   r'   r   é   )
r   r
   r   Zzerosr   r   r   ÚmpimgZimreadÚAssertionError)r   r   r
   Zout_filenameÚdataZimgr   r   r   Útest_orientation;   s    

z TestFits2Bitmap.test_orientationN)Ú__name__Ú
__module__Ú__qualname__r   ÚpytestÚmarkZopenfiles_ignorer   r   r    r"   Zparametrizer$   r,   r   r   r   r   r      s   





r   )Únumpyr   r0   Z
astropy.ior   Z"astropy.utils.compat.optional_depsr   Zmatplotlib.imageÚimager)   Z)astropy.visualization.scripts.fits2bitmapr   r   r1   Zskipifr   r   r   r   r   Ú<module>   s   