ó
\K]c           @` s  d  d l  m Z m Z m Z d  d l Z d  d l m Z d  d l m	 Z	 m
 Z
 m Z m Z m Z m Z d  d l m Z d d l m Z m Z d  d l m Z d	   Z d
   Z d   Z d   Z d   Z d   Z d e f d     YZ d e f d     YZ e d k re j   n  d S(   i    (   t   print_functiont   divisiont   absolute_importN(   t   unittest_support(   t   jitt   typest   errorst   typeoft   numpy_supportt   cgutils(   t   compile_isolatedi   (   t   TestCaset   captured_stdout(   t
   SmartArrayc         C` s
   t  |   S(   N(   t   len(   t   x(    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   len_usecase   s    c         C` s   t  |   d  S(   N(   t   print(   R   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   print_usecase   s    c         C` s   |  | S(   N(    (   R   t   key(    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   getitem_usecase   s    c         C` s   |  j  S(   N(   t   shape(   R   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   shape_usecase   s    c         C` s   t  j t  j |    S(   N(   t   npt   cost   sin(   R   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   npyufunc_usecase   s    c         C` s   |  S(   N(    (   R   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   identity   t    t   TestJITc           B` s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C` sD   t  t j d   } t d t  t  } |  j | |  |  d  S(   Ni   t   nopython(   R   R   t   arangeR   t   TrueR   t   assertIs(   t   selft   at   cfunc(    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   test_identity   s    c         C` sD   t  t j d   } t d t  t  } |  j | |  d  d  S(   Ni   R   (   R   R   R   R   R    R   t   assertPreciseEqual(   R"   R#   R$   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   test_len$   s    c         C` sD   t  t j d   } t d t  t  } |  j | |  d  d  S(   Ni   R   (   i   (   R   R   R   R   R    R   R&   (   R"   R#   R$   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt
   test_shape)   s    c         C` s   t  t j d d d g   } t d t  t  } |  j | | d  d  | | t d d    } |  j	 | t   |  j
 t |  d d g  d  S(   Ni*   i   iū’’’R   i   (   R   R   t   int32R   R    R   R&   t   slicet   Nonet   assertIsInstancet   assertEqualt   list(   R"   R#   R$   t   aa(    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   test_getitem.   s    c         C` s   t  t j d d d g   } t d t  t  } | |  } |  j | t   |  j | j d  t j	 t j
 | j d     d  S(   Ni*   i   iū’’’R   t   host(   R   R   R)   R   R    R   R,   R&   t   getR   R   (   R"   R#   R$   R/   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt
   test_ufunc6   s
    c         C` s­   t  t j d d d g   } | j t j  } |  j | t   |  j | j d  | j d  j t j   |  j | j d  j j	 t j  |  j
 | j j	 t j  d  S(   Ni*   i   iū’’’R1   (   R   R   R)   t   astypet   float64R,   R&   R2   t   dtypet   typeR!   (   R"   R#   R/   (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   test_astype=   s    ."(   t   __name__t
   __module__R%   R'   R(   R0   R3   R8   (    (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyR      s   					t   TestInterfacec           B` s   e  Z d    Z RS(   c         C` s   t  j d  j d d  } t |  } d | d  d   d  d   f <t t  j d | j d d   } | | k } |  j | t  |  j | j    d  S(   Ni   i   i   R6   R   (   i   i   (	   R   R   t   reshapeR   t   onesR6   R,   t
   assertTruet   all(   R"   R#   t   apt   reft   eq(    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   test_interfaceI   s    !(   R9   R:   RC   (    (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyR;   G   s   t   __main__(   t
   __future__R    R   R   t   numpyR   t   numbaR   t   unittestR   R   R   R   R   R	   t   numba.compilerR
   t   supportR   R   R   R   R   R   R   R   R   R   R;   R9   t   main(    (    (    s;   lib/python2.7/site-packages/numba/tests/test_smart_array.pyt   <module>   s    .						+