U
    ?h                     @   sX   d dl Zd dlmZ d dlmZmZ dd Zdd ZG dd	 d	eZ	e
d
krTe  dS )    N)cuda)unittestCUDATestCasec                 C   s$   t |jd D ]}| | ||< qd S Nr   )rangeshapeinpouti r   V/var/www/html/venv/lib/python3.8/site-packages/numba/cuda/tests/cudapy/test_slicing.pyfoo   s    r   c                 C   s0   t d}t| |d d f ||d d f  d S )N   )r   gridcufoor   r   r   r   copy   s    
r   c                   @   s   e Zd Zdd Zdd ZdS )TestCudaSlicingc                 C   sT   t jdddtat dt}tjdtjddd}t	|}|d || d S )	Nzvoid(int32[:], int32[:])T)Zdevicezvoid(int32[:,:], int32[:,:])d   )Zdtype
   )r   r   )
r   Zjitr   r   r   npZarangeZint32ZreshapeZ
zeros_like)selfZcucopyr	   r
   r   r   r   test_slice_as_arg   s
    
z!TestCudaSlicing.test_slice_as_argc                 C   s0   d}t |}tt|}t||d d < d S r   )r   r   Zdevice_arraylenZ	to_device)r   NaZarrr   r   r   test_assign_empty_slice   s    z'TestCudaSlicing.test_assign_empty_sliceN)__name__
__module____qualname__r   r   r   r   r   r   r      s   
r   __main__)numpyr   Znumbar   Znumba.cuda.testingr   r   r   r   r   r   mainr   r   r   r   <module>   s   