U
    ?h                     @   sZ   d dl T d dlZd dlZd dlmZ G dd deZG dd dejZ	e
dkrVe  dS )	    )*N)
_helperlibc                	   @   sB   e Zd Zdefdefdefdefdefded fded fgZd	S )
ArrayStruct3Dmeminfoparentnitemsitemsizedatashape   stridesN)__name__
__module____qualname__c_void_pZ	c_ssize_tZ_fields_ r   r   M/var/www/html/venv/lib/python3.8/site-packages/numba/tests/test_numpyadapt.pyr   	   s   

r   c                   @   s   e Zd Zdd ZdS )TestArrayAdaptorc                 C   s   t  }tjd }tttt|}td	ddd}||t
|}| |d | |j|jj | |jd | |jt| | |jd | |j|j tdD ]8}| |j| |jj|  | |j| |jj|  qd S )NZadapt_ndarray<      r   
   r   )r   r   Z	c_helpersZ
PYFUNCTYPEZc_intZ	py_objectr   npZarangeZreshapeZbyrefZassertEqualr	   ctypesZassertNotEqualr   r   idr   r   ranger
   r   )selfZ	arystructZ
adaptorptrZadaptorZarystatusir   r   r   test_array_adaptor   s    
z#TestArrayAdaptor.test_array_adaptorN)r   r   r   r   r   r   r   r   r      s   r   __main__)r   numpyr   ZunittestZnumbar   Z	Structurer   ZTestCaser   r   mainr   r   r   r   <module>   s   