
    wg                         d dl Z d dlmZmZ d dlmZ  ed       G d de             Zedk(  r e j                          yy)    N)CUDATestCaseskip_on_cudasim)captured_stdoutz4cudasim doesn't support cuda import at non-top-levelc                   2     e Zd ZdZ fdZ fdZd Z xZS )	TestUFuncz
    Test calling a UFunc
    c                 t    t               | _        | j                  j                          t        |           y N)r   _captured_stdout	__enter__supersetUpself	__class__s    m/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/numba/cuda/tests/doc_examples/test_ufunc.pyr   zTestUFunc.setUp   s+     !0 1'')    c                 \    | j                   j                  d d d        t        |           y r	   )r
   __exit__r   tearDownr   s    r   r   zTestUFunc.tearDown   s&    &&tT48r   c                    dd l ddlm} |j                  fd       }j	                  dj
                        dz
  }j                  |      } |d   ||       j                  j                  |j                  |             y )Nr   )cudac                 *    j                  ||        y r	   )sin)rxnps     r   fz,TestUFunc.test_ex_cuda_ufunc_call.<locals>.f   s     FF1aLr   
   )dtype   )   r!   )
numpynumbar   jitarangefloat32
zeros_liketestingassert_allcloser   )r   r   r   r   r   r   s        @r   test_ex_cuda_ufunc_callz!TestUFunc.test_ex_cuda_ufunc_call   s{     
	 
	
 IIb

I+a/MM! 	$1 	

""1bffQi0r   )__name__
__module____qualname____doc__r   r   r*   __classcell__)r   s   @r   r   r      s    
1r   r   __main__)	unittestnumba.cuda.testingr   r   numba.tests.supportr   r   r+   main r   r   <module>r6      sK     < / GH%1 %1 I%1R zHMMO r   