U
    9%e                      @   sX   d dl Zd dlmZmZmZmZmZ d dlm	Z	m
Z
 G dd de
ZedkrTe	  dS )    N)cudafloat32float64int32void)unittestCUDATestCasec                   @   s   e Zd Zdd Zdd ZdS )TestCudaIDivc                 C   st   t ttd d d d f ttdd }tjdtjd}t |}|d |dd | }| 	t
|dk d S )Nc                 S   s4   t |D ]&}t |D ]}| ||f  d  < qqd S Ng       @rangegridZl_xZl_yxy r   `/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/numba/cuda/tests/cudapy/test_idiv.pydiv	   s    z*TestCudaIDiv.test_inplace_div.<locals>.div   r   Zdtype   r   r         ?)r   jitr   r   r   npones	to_devicecopy_to_host
assertTrueall)selfr   r   r   r   r   r   r   test_inplace_div   s     

zTestCudaIDiv.test_inplace_divc                 C   st   t ttd d d d f ttdd }tjdtjd}t |}|d |dd | }| 	t
|dk d S )Nc                 S   s4   t |D ]&}t |D ]}| ||f  d  < qqd S r
   r   r   r   r   r   
div_double   s    z8TestCudaIDiv.test_inplace_div_double.<locals>.div_doubler   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r    )r!   r#   r   r   r   r   r   r   test_inplace_div_double   s     

z$TestCudaIDiv.test_inplace_div_doubleN)__name__
__module____qualname__r"   r$   r   r   r   r   r	      s   r	   __main__)numpyr   Znumbar   r   r   r   r   Znumba.cuda.testingr   r   r	   r%   mainr   r   r   r   <module>   s
   