ó
\K]c           @@ sÓ   d  d l  m Z m Z d  d l Z d  d l m Z d  d l m Z d  d l	 m
 Z
 d  d l m Z d „  Z d e j f d	 „  ƒ  YZ d
 e j f d „  ƒ  YZ d e j f d „  ƒ  YZ e d k rÏ e j ƒ  n  d S(   i    (   t   print_functiont   absolute_importN(   t   unittest_support(   t	   vectorize(   t   HsaVectorize(   t   HsaUFuncDispatcherc         C@ s   |  | S(   N(    (   t   at   b(    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   ufunc_add_core   s    t   TestUFuncBuildingc           B@ s   e  Z d  „  Z RS(   c         C@ sp  t  t ƒ } | j d ƒ | j d ƒ | j ƒ  } |  j | t ƒ t j d d t j ƒ} t j d d t j ƒd } | | } | | | ƒ } t j	 j
 | | ƒ |  j | j | j ƒ |  j t j t j ƒ | j ƒ t j d d t j ƒ} t j d d t j ƒd } | | } | | | ƒ } t j	 j | | ƒ |  j | j | j ƒ |  j t j t j ƒ | j ƒ d  S(   Ns   float32(float32, float32)s   intp(intp, intp)id   t   dtypei   (   R   R   t   addt   build_ufunct   assertIsInstanceR   t   npt   aranget   intpt   testingt   assert_equalt   assertEqualR
   t   float32t   assert_allclose(   t   selft   ufbldrt   ufunct   At   Bt   expectedt   got(    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   test_ufunc_building   s&    

(   t   __name__t
   __module__R   (    (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyR	      s   t   TestVectorizeDecorc           B@ s   e  Z d  „  Z RS(   c         C@ s¥  t  d d g d d ƒd „  ƒ } |  j | t ƒ t j d d t j ƒ} t j d d t j ƒd } t j d d t j ƒd	 } | | | } | | | | ƒ } t j j | | ƒ |  j | j	 | j	 ƒ |  j t j	 t j ƒ | j	 ƒ t j d d t j
 ƒ} t j d d t j
 ƒd } t j d d t j
 ƒd	 } | | | } | | | | ƒ } t j j | | ƒ |  j | j	 | j	 ƒ |  j t j	 t j
 ƒ | j	 ƒ d  S(
   Ns"   float32(float32, float32, float32)s   intp(intp, intp, intp)t   targett   rocc         S@ s   |  | | S(   N(    (   R   t   xt   y(    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   axpy.   s    id   R
   i   i   (   R   R   R   R   R   R   R   R   R   R
   R   R   (   R   R%   R   t   Xt   YR   R   (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   test_vectorize_decor-   s(    	(   R   R   R(   (    (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyR    ,   s   t   TestVectorizeScalarc           B@ s   e  Z d  „  Z RS(   c         C@ s  t  d d g d d ƒd „  ƒ } |  j | t ƒ d } t j d d t j ƒd	 } t j d d t j ƒd } | | | } | | | | ƒ } t j j | | ƒ |  j | j	 | j	 ƒ |  j t j	 t j ƒ | j	 ƒ d
 } t j d d t j
 ƒd	 } t j d d t j
 ƒd } | | | } | | | | ƒ } t j j | | ƒ |  j | j	 | j	 ƒ |  j t j	 t j
 ƒ | j	 ƒ d  S(   Ns"   float32(float32, float32, float32)s   intp(intp, intp, intp)R!   R"   c         S@ s   |  | | S(   N(    (   R   R#   R$   (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyR%   O   s    i   id   R
   i   gffffff@(   R   R   R   R   R   R   R   R   R   R
   R   R   (   R   R%   R   R&   R'   R   R   (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   test_scalar_inputN   s(    	(   R   R   R*   (    (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyR)   M   s   t   __main__(   t
   __future__R    R   t   numpyR   t   numbaR   t   unittestR   t   numba.roc.vectorizersR   t   numba.roc.dispatchR   R   t   TestCaseR	   R    R)   R   t   main(    (    (    sG   lib/python2.7/site-packages/numba/roc/tests/hsapy/test_ufuncbuilding.pyt   <module>   s   	! 