o
    8Î®cš  ã                   @   sT   d dl Zd dlmZmZ d dlmZ d dlZG dd„ deƒZe	dkr(e 
¡  dS dS )é    N)ÚunittestÚCUDATestCase)Úcudac                   @   s@   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dS )ÚTestOperatorModulezB
    Test if operator module is supported by the CUDA target.
    c                    sT   t j‡ fdd„ƒ}t d¡}t d¡}| ¡ }|d ||ƒ tj |ˆ ||ƒ¡ d S )Nc                    s   d}ˆ | | || ƒ| |< d S )Nr   © )ÚaÚbÚi©Úopr   úL/tmp/pip-target-vg8gfxp4/lib/python/numba/cuda/tests/cudapy/test_operator.pyÚfoo   s   z1TestOperatorModule.operator_template.<locals>.fooé   )r   r   )r   ÚjitÚnpÚonesÚcopyÚtestingÚassert_equal)Úselfr   r   r   r   Úresr   r
   r   Úoperator_template   s   

z$TestOperatorModule.operator_templatec                 C   ó   |   tj¡ d S ©N)r   ÚoperatorÚadd©r   r   r   r   Útest_add   ó   zTestOperatorModule.test_addc                 C   r   r   )r   r   Úsubr   r   r   r   Útest_sub   r   zTestOperatorModule.test_subc                 C   r   r   )r   r   Úmulr   r   r   r   Útest_mul   r   zTestOperatorModule.test_mulc                 C   r   r   )r   r   Útruedivr   r   r   r   Útest_truediv!   r   zTestOperatorModule.test_truedivc                 C   r   r   )r   r   Úfloordivr   r   r   r   Útest_floordiv$   r   z TestOperatorModule.test_floordivN)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r    r"   r$   r&   r   r   r   r   r      s    r   Ú__main__)Únumpyr   Únumba.cuda.testingr   r   Únumbar   r   r   r'   Úmainr   r   r   r   Ú<module>   s    !ÿ