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                   @   s8   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ ZdS )ÚTestDivisionFunctionsz6Test code units that rely on correct integer division.c              	   C   sV   t  |  d¡¡�}|d j ¡ }W 5 Q R X tjj|t ddddg¡t|ƒd d� d S )	Nútb.fitsr   )Úc1z>i4)Úc2z|S3)Úc3z>f4)Zc4z|i1é   )ÚdtypeÚshape)	r   ÚopenÚdataÚtobytesÚnpZrecÚarrayr   Úlen)ÚselfÚt1Ús© r   úb/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/io/fits/tests/test_division.pyÚtest_rec_from_string   s    
ÿ
ûz*TestDivisionFunctions.test_rec_from_stringc                 C   s   t  ¡ }d|jd< d S )NZŒabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgÚabc)r   Z
PrimaryHDUÚheader)r   Úhr   r   r   Útest_card_with_continue   s    z-TestDivisionFunctions.test_card_with_continuec              	   C   s6   t  |  d¡¡�}t|d jƒtks(t‚W 5 Q R X d S )Nr   r   )r   r   r   ÚtypeÚsizeÚintÚAssertionError)r   r   r   r   r   Útest_valid_hdu_size   s    z)TestDivisionFunctions.test_valid_hdu_sizec              	   C   s    t  |  d¡¡�}W 5 Q R X d S )Nr   )r   r   r   )r   Ú_r   r   r   Útest_hdu_get_size    s    z'TestDivisionFunctions.test_hdu_get_sizec              	   C   sD   t  |  d¡¡�*}t |d jd t dg¡k¡s6t‚W 5 Q R X d S )Nzarange.fitsr   )é   é   é   ie  )r   r   r   r   ÚallÚsectionr   r    )r   ZcapsysÚfsr   r   r   Útest_section$   s    z"TestDivisionFunctions.test_sectionN)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r!   r#   r*   r   r   r   r   r   
   s   r   )Únumpyr   Z
astropy.ior   Zconftestr   r   r   r   r   r   Ú<module>   s   