U
    e»{j	  ã                   @   s4   d dl Zd dlmZ ddlmZ G dd„ deƒZdS )é    N)Úfitsé   )ÚFitsTestCasec                   @   s.   e Zd Zdd„ Zdd„ Zdd„ Zddd	„Zd
S )ÚTestNonstandardHdusc                 C   s   | j dd� dS )zÓ
        A round trip test of creating a FitsHDU, adding a FITS file to it,
        writing the FitsHDU out as part of a new FITS file, and then reading
        it and recovering the original FITS file.
        F©ÚcompressionN©Ú_test_create_fitshdu©Úself© r   úe/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/io/fits/tests/test_nonstandard.pyÚtest_create_fitshdu   s    z'TestNonstandardHdus.test_create_fitshduc                 C   s   | j dd� dS )z>Same as test_create_fitshdu but with gzip compression enabled.Tr   Nr   r
   r   r   r   Ú$test_create_fitshdu_with_compression   s    z8TestNonstandardHdus.test_create_fitshdu_with_compressionc                 C   sª   t  d¡}tj|d�}d|jd< d|jd< tj|d d�}d|jd	< d
|jd< t ||g¡}| |  d¡¡ tj	 
|  d¡¡}|j}t|ƒdks”t‚t ||¡js¦t‚dS )z%Regression test on `FitsHDU.fromfile`éd   )ÚdataÚAZTEST1ÚBZTEST2r   ÚCZTEST3ÚDZTEST4z	test.fitsé   N)ÚnpZaranger   Z
PrimaryHDUÚheaderZImageHDUÚHDUListÚwritetoÚtempÚFitsHDUÚfromfileÚhdulistÚlenÚAssertionErrorZFITSDiffZ	identical)r   ÚaZphduZimghduÚhdulÚfitshduZhdul2r   r   r   Ú!test_create_fitshdu_from_filename   s    




z5TestNonstandardHdus.test_create_fitshdu_from_filenameFc                 C   s(  t j|  d¡dd�}t jj||d�}| |¡ |j|  d¡dd� |d= t  |  d¡¡}t|d t jƒslt	‚|d j
}t|t jƒs†t	‚|jdd	�|jdd	�ks¢t	‚|d
 j|d
 jk ¡ s¾t	‚|d j|d jk ¡ sÚt	‚|d j|d jk ¡ söt	‚|d j|d jk ¡ �st	‚| ¡  | ¡  d S )Nz
test0.fitsT)Zdo_not_scale_image_data)Úcompressztmp.fits)Ú	overwriteéÿÿÿÿF)Úoutputr   r   é   é   )r   Úopenr   r   ZfromhdulistÚappendr   r   Ú
isinstancer    r   r   ÚinfoÚallÚclose)r   r   Z	hdul_origr#   r"   Úwrappedr   r   r   r	   .   s     

z(TestNonstandardHdus._test_create_fitshduN)F)Ú__name__Ú
__module__Ú__qualname__r   r   r$   r	   r   r   r   r   r   
   s   	r   )Únumpyr   Z
astropy.ior   Zconftestr   r   r   r   r   r   Ú<module>   s   