U
    iâËd>  ã                   @   sL   d dl Zd dlmZmZmZ d dlmZ G dd„ deƒZe	dkrHe
 ¡  dS )é    N)Ú
from_dtypeÚnjitÚvoid)ÚTestCasec                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚTestAlignmentc                 C   sŒ   t jddgdd�}t|ƒ}t|d d … fƒdd„ ƒ}t jd|d�}t|jƒD ] }|| }d	|_|d
 d |_qL||ƒ t j	 
|j|j¡ d S )N©ÚaZint32©ÚbZfloat64T)Úalignc                 S   s$   t | jƒD ]}| | j| | _q
d S ©N©ÚrangeÚsizer
   r   ©r   Úi© r   úS/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/numba/tests/test_alignment.pyÚfoo   s    z0TestAlignment.test_record_alignment.<locals>.fooé   )Údtyper   é   é{   )Únpr   r   r   Zrecarrayr   r   r   r
   ÚtestingZassert_equal)ÚselfÚ	rec_dtypeÚrecr   Z
a_recarrayr   Za_recr   r   r   Útest_record_alignment
   s    
z#TestAlignment.test_record_alignmentc                 C   s4   t  ddg¡}t|ƒ}t|d d … fƒdd„ ƒ}d S )Nr   r	   c                 S   s$   t | jƒD ]}| | j| | _q
d S r   r   r   r   r   r   r   !   s    z1TestAlignment.test_record_misaligned.<locals>.foo)r   r   r   r   )r   r   r   r   r   r   r   Útest_record_misaligned   s    z$TestAlignment.test_record_misalignedN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r      s   r   Ú__main__)Únumpyr   Znumbar   r   r   Znumba.tests.supportr   r   r    ZunittestÚmainr   r   r   r   Ú<module>   s
   