ó
\K]c           @   sÑ  d  d l  m Z d  d l m Z m Z m Z d  d l Z d  d l Z d  d l	 m
 Z d  d l	 m Z m Z m Z d  d l m Z d  d l m Z m Z d  d l m Z m Z m Z d	 d
 l m Z m Z m Z m Z m Z d	 d l m  Z  d „  Z! d „  Z" d „  Z# d „  Z$ d „  Z% d „  Z& d e' d „ Z( d „  Z) d „  Z* d „  Z+ d „  Z, d „  Z- d „  Z. d „  Z/ d „  Z0 d „  Z1 d „  Z2 d „  Z3 d „  Z4 d  „  Z5 d! „  Z6 d" „  Z7 d# „  Z8 d$ „  Z9 d% „  Z: d& „  Z; d' „  Z< d( „  Z= d) „  Z> d* „  Z? d+ „  Z@ d, „  ZA d- „  ZB d. „  ZC d/ „  ZD d0 „  ZE d1 „  ZF d2 „  ZG d3 „  ZH d4 „  ZI d5 „  ZJ d6 „  ZK d7 „  ZL d8 „  ZM d9 „  ZN d: e e f d; „  ƒ  YZO d< e f d= „  ƒ  YZP eQ d> k rÍe jR ƒ  n  d S(?   iÿÿÿÿ(   t   division(   t   productt   cyclet   permutationsN(   t   unittest_support(   t   jitt   typeoft   types(   t   compile_isolated(   t   TypingErrort   LoweringError(   t   as_dtypet   strict_ufunc_typingt   versioni   (   t   TestCaset   CompilationCachet
   MemoryLeakt   MemoryLeakMixint   tag(   t
   needs_blasc         C   s   t  j |  | | ƒ d  S(   N(   t   npt   around(   t   arrt   decimalst   out(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_around_array   s    c         C   s   t  j |  | ƒ S(   N(   R   R   (   t   valR   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_around_binary   s    c         C   s   t  j |  ƒ S(   N(   R   R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_around_unary   s    c         C   s   t  j |  | | ƒ d  S(   N(   R   t   round(   R   R   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_round_array   s    c         C   s   t  j |  | ƒ S(   N(   R   R   (   R   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_round_binary   s    c         C   s   t  j |  ƒ S(   N(   R   R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_round_unary!   s    i    c         C   sÚ   | d k	 rN |  j j d k rN t |  j | | j ƒ t |  j | | j ƒ | St j |  | | ƒ } | d k rÒ d „  } t |  t	 t j
 f ƒ rÀ t	 | |  j | j ƒ | |  j | j ƒ ƒ } qÒ | |  | ƒ } n  | Sd S(   s4   
    A slightly bugfixed version of np.round().
    t   cc         S   s.   | d k r& |  d k  r& t  j | ƒ S| Sd  S(   Ng        i    (   R   t   abs(   t   argt   res(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   fixup_signed_zero1   s    N(   t   Nonet   dtypet   kindt   _fixed_np_roundt   realt   imagR   R   t
   isinstancet   complext   complexfloating(   R   R   R   R$   R%   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR)   $   s    	c         C   s   |  j  S(   N(   t   T(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_T>   s    c         C   s
   |  j  ƒ  S(   N(   t	   transpose(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_transposeA   s    c         C   s
   |  j  ƒ  S(   N(   t   copy(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_copyD   s    c         C   s   t  j |  ƒ S(   N(   R   R3   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_copyG   s    c         C   s   t  j |  ƒ S(   N(   R   t   asfortranarray(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_asfortranarrayJ   s    c         C   s   t  j |  ƒ S(   N(   R   t   ascontiguousarray(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_ascontiguousarrayM   s    c         C   s   |  j  | ƒ S(   N(   t   view(   R   t   newtype(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_viewP   s    c         C   s   |  j  | ƒ S(   N(   t   take(   R   t   indices(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_takeS   s    c         C   s   |  j  | d | ƒS(   Nt   axis(   R=   (   R   R>   R@   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_take_kwsV   s    c         C   s   |  j  | ƒ S(   N(   t   fill(   R   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_fillY   s    c            s   ‡  f d †  } | S(   Nc            s   |  j  ˆ  ƒ S(   N(   R:   (   R   (   R;   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR<   ^   s    (    (   R;   R<   (    (   R;   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   make_array_view]   s    c         C   s   |  d d !j  t j ƒ d S(   Ni    i   (   R:   R   t   float32(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_sliced_viewb   s    c            s   ‡  f d †  } | S(   Nc            s   |  j  ˆ  ƒ S(   N(   t   astype(   R   (   R;   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_astypef   s    (    (   R;   RH   (    (   R;   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   make_array_astypee   s    c         C   s   t  j |  ƒ S(   s7   
    np.frombuffer() on a Python-allocated buffer.
    (   R   t
   frombuffer(   t   b(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_frombufferk   s    c         C   s   t  j |  d t  j ƒS(   NR'   (   R   RJ   t	   complex64(   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_frombuffer_dtypeq   s    c         C   s%   t  j |  d t  j ƒ} t  j | ƒ S(   s6   
    np.frombuffer() on a Numba-allocated buffer.
    R'   (   R   t   onest   int32RJ   (   t   shapeR   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_frombuffer_allocatedt   s    c         C   s.   t  j |  d t  j ƒ} t  j | d t  j ƒS(   NR'   (   R   RO   RP   RJ   RM   (   RQ   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   np_frombuffer_allocated_dtype{   s    c         C   s   |  | k |  | k	 f S(   N(    (   t   aRK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   identity_usecase   s    c         C   s
   |  j  ƒ  S(   N(   t   nonzero(   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_nonzero‚   s    c         C   s   t  j |  ƒ S(   N(   R   RV   (   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   np_nonzero…   s    c         C   s   t  j |  ƒ S(   N(   R   t   where(   R!   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   np_where_1ˆ   s    c         C   s   t  j |  | | ƒ S(   N(   R   RY   (   R!   t   xt   y(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   np_where_3‹   s    c         C   s
   |  j  ƒ  S(   N(   t   item(   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_itemŽ   s    c         C   s   |  j  | ƒ d  S(   N(   t   itemset(   RT   t   v(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_itemset‘   s    c         G   s   |  j  | Œ  S(   N(   t   sum(   RT   t   args(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   array_sum”   s    c         C   s   |  j  d | ƒ S(   NR@   (   Rc   (   RT   R@   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_sum_kws—   s    c         C   ss   t  j |  d d ƒ} t  j |  d ƒ } t  j |  | ƒ } |  j d d ƒ } t  j |  d d ƒ} | | | | | f S(   NR@   i   i   i   iÿÿÿÿ(   R   Rc   (   R   R@   RT   RK   R!   t   dt   e(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_sum_const_multiš   s    c         C   s   |  j  d d ƒ S(   NR@   iÿÿÿÿ(   Rc   (   RT   R@   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_sum_const_axis_neg_one¨   s    c         G   s   |  j  | Œ  S(   N(   t   cumsum(   RT   Rd   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_cumsum­   s    c         C   s   |  j  d | ƒ S(   NR@   (   Rk   (   RT   R@   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_cumsum_kws°   s    c         C   s   t  j |  ƒ S(   N(   R   R*   (   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_real³   s    c         C   s   t  j |  ƒ S(   N(   R   R+   (   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_imag¶   s    c         C   s
   |  j  ƒ  S(   N(   t   conj(   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_conj¹   s    c         C   s
   |  j  ƒ  S(   N(   t	   conjugate(   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_conjugate¼   s    c         C   s   t  j |  ƒ S(   N(   R   t   unique(   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   np_unique¿   s    c         C   s   |  j  | ƒ S(   N(   t   dot(   RT   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   array_dotÃ   s    c         C   s   |  j  | ƒ j  | ƒ S(   N(   Rv   (   RT   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_dot_chainÆ   s    c         C   s   t  j |  d | ƒS(   NR'   (   R   RO   (   t   nR'   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   array_ctorÉ   s    t   TestArrayMethodsc           B   sÜ  e  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z e j e d „ Z d „  Z e d ƒ d „  ƒ Z e d ƒ d „  ƒ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d „  Z" d „  Z# d  „  Z$ d! „  Z% d" „  Z& d# „  Z' d$ „  Z( d% „  Z) d& „  Z* d' „  Z+ d( „  Z, d) „  Z- d* „  Z. d+ „  Z/ d, „  Z0 d- „  Z1 d. „  Z2 e3 d/ „  ƒ Z4 d0 „  Z5 RS(1   sA   
    Test various array methods and array-related functions.
    c         C   s#   t  t |  ƒ j ƒ  t ƒ  |  _ d  S(   N(   t   superR{   t   setUpR   t   ccache(   t   self(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR}   Ò   s    c         C   sÁ  d d d d d d d d g } g  | D] } | d ^ q% } g  | D] } t  | ƒ ^ qB } t j t j t j t j t j f } | | | | | g } | }	 x§ t | | ƒ D]– \ }
 } t |	 |
 t j f ƒ } | j	 } xf d D]^ } xU | D]M } | d k r	| d 9} n  t
 | | ƒ } | | | ƒ } |  j | | ƒ qê WqÝ Wq© W| }	 xq t | | ƒ D]` \ }
 } t |	 |
 f ƒ } | j	 } x6 | D]. } t
 | ƒ } | | ƒ } |  j | | ƒ q‡WqYWd  S(   Ng      Àg      Àg      Àg      ø¿g      ø?g      @g      @g      @i   y              ð?i    iÿÿÿÿi
   y      ð?      ð¿(   i   i    iÿÿÿÿ(   t   intR   t   float64RE   RP   RM   t
   complex128t   zipR   t   entry_pointR)   t   assertPreciseEqual(   R   t   unary_pyfunct   binary_pyfunct   base_valuesR[   t   complex_valuest
   int_valuest   argtypest	   argvaluest   pyfunct   tyt   valuest   crest   cfuncR   Ra   t   expectedt   got(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_round_scalarÖ   s4    			c         C   s   |  j  t t ƒ d  S(   N(   R”   R    R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_round_scalarô   s    c         C   s   |  j  t t ƒ d  S(   N(   R”   R   R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_around_scalar÷   s    c      	      s¿   ‡ f d †  ‰  ‡  ‡ f d †  } t  j d d d d d d d	 d
 g ƒ } t rc t j t j f } n t j t j t j f } | | | | ƒ t j t j f } | | | | d ƒ ˆ j	 ƒ  d  S(   Nc   	   	      sÏ   | j  t | ƒ ƒ } t j | ƒ j  t | ƒ ƒ } | j ƒ  } t | | | ƒ ˆ  j ƒ  |  | | | ƒ ˆ  j ƒ  t j j	 | | ƒ ˆ  j
 t ƒ  } |  | | | d ƒ Wd  QXˆ  j t | j ƒ d ƒ d  S(   Ni   s   invalid output shape(   RG   R   R   t
   zeros_likeR3   R)   t   memory_leak_setupt   memory_leak_teardownt   testingt   assert_allcloset   assertRaisest
   ValueErrort   assertEqualt   strt	   exception(	   R‘   R   t   intyt   outtyR   R   R   t   pyoutt   raises(   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_roundû   s    

c      	      sÊ   xÃ t  |  | ƒ D]² \ } } t ˆ t j | d d ƒ t j t j | d d ƒ f ƒ } | j } ˆ  | j | | | d ƒ ˆ  | j | | | d ƒ t | t j ƒ s ˆ  | j | d | | d ƒ q q Wd  S(   Ni   t   Ai    i
   iÿÿÿÿ(   R   R   R   t   ArrayRP   R„   R,   t   Integer(   R‹   t   outtypesR   R¡   R¢   R   R‘   (   R¥   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_types  s    	 g      Àg      Àg      Àg      ø¿g      ø?g      @g      @g      @i   y              ð?y      ð?      ð¿(
   R   t   arrayR   R   R   RE   RP   RM   R‚   t   disable_leak_check(   R   R   Rª   R   R‹   (    (   R¥   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_round_arrayú   s    'c         C   s   |  j  t ƒ d  S(   N(   R­   R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_round_array)  s    c         C   s   |  j  t ƒ d  S(   N(   R­   R   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_around_array,  s    c            sl  ‡ f d †  ‰  ‡  ‡ f d †  } ‡  ‡ f d †  } t  j d t  j f d t  j f g ƒ } t  j d t  j f d t  j f g ƒ } t  j d t  j f d	 t  j f g ƒ } t  j d
 d t  j ƒ} | | t  j d ƒ ƒ | | t  j ƒ | | t  j ƒ | | t  j ƒ | | t  j ƒ | | | ƒ | | | ƒ | | t  j ƒ | j d ƒ } | | t  j ƒ | | t  j ƒ | | t  j ƒ | | | ƒ | | | ƒ | | t  j ƒ t  j d
 d t  j ƒj d ƒ j	 } | | t  j ƒ | | t  j ƒ | | t  j ƒ | | | ƒ | | | ƒ | | t  j ƒ t  j d d t  j
 ƒd  d  d … } | | t  j ƒ | | t  j ƒ | | | ƒ | | t  j ƒ | | t  j ƒ | | t  j ƒ | | | ƒ | | | ƒ t  j d g d t  j
 ƒj d ƒ } | | t  j ƒ | | t  j ƒ | | | ƒ | | t  j ƒ | | t  j ƒ | | t  j ƒ | | | ƒ | | | ƒ ˆ j ƒ  d  S(   Nc            s7   t  | ƒ } ˆ  j j | t |  ƒ f ƒ } | j |  ƒ S(   N(   RD   R~   t   compileR   R„   (   R   R'   R   R   (   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   run1  s    c            sI   |  j  | ƒ } ˆ j ƒ  ˆ  |  | ƒ } ˆ j | | ƒ ~ ˆ j ƒ  d  S(   N(   R:   R˜   R…   R™   (   R   R'   R’   R“   (   R±   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check5  s    
c            sB   ˆ j  t ƒ  } ˆ  |  | ƒ Wd  QXˆ j t | j ƒ d ƒ d  S(   Ns"   new type not compatible with array(   Rœ   R   Rž   RŸ   R    (   R   R'   R¤   (   R±   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   check_err<  s    RT   RK   t   uRa   R[   R\   i   R'   t   int16i   i   i   i   i*   (   i   i   (   i   i   (    (   R   R'   t   int8Rµ   t   arangeRE   RM   R‚   t   reshapeR/   RP   t   uint32t   int64R«   R¬   (   R   R²   R³   t   dt1t   dt2t   dt3R   (    (   R±   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_view/  s`    '''$%$c         C   s‡   t  } |  j j | t j f ƒ } | j } t j d d g d t j ƒ} | j	 t j ƒ } | | ƒ } | | ƒ } |  j
 | | ƒ d S(   sX   
        Test .view() on A layout array but has contiguous innermost dimension.
        g      ø?i   R'   N(   RF   R~   R°   R   t   uint8R„   R   R«   RE   R:   Rž   (   R   R   R   R‘   t   origt   bytearyt   expectR“   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_sliced_view|  s    	c            sv  ‡ f d †  ‰  ‡  ‡ f d †  } t  j d d t  j ƒ} | | t  j d ƒ ƒ | | t  j ƒ | | t  j ƒ | | t  j ƒ t  j d d t  j ƒj d ƒ j } | | t  j ƒ t  j d d t  j ƒd  d  d	 … } | | t  j	 ƒ t  j d d t  j ƒ} t
 | j _ | | t  j ƒ t  j d
 t  j f g ƒ } ˆ j ƒ   } | | | ƒ Wd  QXˆ j d t | j ƒ ƒ d  S(   Nc            s7   t  | ƒ } ˆ  j j | t |  ƒ f ƒ } | j |  ƒ S(   N(   RI   R~   R°   R   R„   (   R   R'   R   R   (   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR±   Ž  s    c            s>   |  j  | ƒ j d d ƒ } ˆ  |  | ƒ } ˆ j | | ƒ d  S(   Nt   orderR¦   (   RG   R3   R…   (   R   R'   R’   R“   (   R±   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   ’  s    i   R'   Rµ   i   i   i   i   R[   s#   cannot convert from int32 to Record(   i   i   (   R   R·   R¶   R'   RP   RE   R‚   R¸   R/   t   uint64t   Falset   flagst	   writeablet   assertTypingErrort   assertInRŸ   R    (   R   R²   R   t   dtR¤   (    (   R±   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_astypeŒ  s&    $%	c            sù   ‡  ‡ f d †  ‰ ‡  ‡ ‡ f d †  } t  t d ƒ ƒ } | | ƒ t j d	 k ru | t | ƒ ƒ | t | ƒ ƒ n  | t j d ƒ ƒ t j d ƒ j d
 ƒ } | | ƒ ˆ j	 ƒ  ˆ j
 t ƒ  } ˆ t  d ƒ ƒ Wd  QXˆ j d t | j ƒ ƒ d  S(   Nc            s+   ˆ j  j ˆ  t |  ƒ f ƒ } | j |  ƒ S(   N(   R~   R°   R   R„   (   t   bufR   (   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR±   ³  s    c            s‹   t  j |  ƒ } ˆ  |  ƒ } ˆ j ƒ  ˆ |  ƒ } ˆ j | | ƒ ~ ˆ j t  j |  ƒ | d ƒ ~ ˆ j t  j |  ƒ | ƒ ˆ j ƒ  d  S(   Ni   (   t   syst   getrefcountR˜   R…   Rž   R™   (   RÍ   t
   old_refcntR’   R“   (   R   R±   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   ¶  s    
i   i   i   i   t   xxxs.   buffer size must be a multiple of element size(   i   (   i   i   (   t	   bytearrayt   rangeRÎ   t   version_infot   bytest
   memoryviewR   R·   R¸   R¬   Rœ   R   Rž   RŸ   R    (   R   R   R²   RK   R¤   (    (   R   R±   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_np_frombuffer²  s    


	c         C   s   |  j  t ƒ d  S(   N(   R×   RL   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_frombufferÓ  s    c         C   s   |  j  t ƒ d  S(   N(   R×   RN   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_frombuffer_dtypeÖ  s    c            sò   d „  ‰ ‡  ‡ ‡ ‡ f d †  } | d ƒ } | | ƒ | | j  d	 ƒ ƒ | | j  d
 ƒ j ƒ | | j  d ƒ d  d  d … ƒ | | j  d ƒ ƒ | | j  d ƒ j ƒ | | j  d ƒ d  d  d … ƒ t j d g ƒ j  d ƒ } | | ƒ d  S(   Nc         S   s   |  j  j | j  j k S(   N(   t   ctypest   data(   RT   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   is_sameÛ  s    c            sr   t  ˆ t |  ƒ f ƒ } ˆ |  ƒ } | j |  ƒ } ˆ j | | ƒ ˆ  rn ˆ j ˆ | |  ƒ ˆ | |  ƒ ƒ n  d  S(   N(   R   R   R„   R…   Rž   (   R   R   R’   R“   (   t   check_samenessRÜ   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   check_arrÝ  s    i   i   i   i   i   i    (   i   i   (   i   i   (   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (    (   R¸   R/   R   R«   (   R   R   t   facRÝ   RÞ   R   (    (   RÝ   RÜ   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_layout_dependent_funcÙ  s    	
  c         C   s   |  j  t ƒ d  S(   N(   Rà   R2   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_transposeð  s    t	   importantc         C   s   |  j  t ƒ d  S(   N(   Rà   R0   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_Tó  s    c         C   s   |  j  t ƒ d  S(   N(   Rà   R4   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_copy÷  s    c         C   s   |  j  t ƒ d  S(   N(   Rà   R5   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_copyû  s    c         C   s   |  j  t d t d k ƒd  S(   NRÝ   i   i   (   i   i   (   Rà   R7   t   numpy_version(   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_asfortranarrayþ  s    c         C   s   |  j  t d t d k ƒd  S(   NRÝ   i   i   (   i   i   (   Rà   R9   Ræ   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_ascontiguousarray  s    c            sI   ‡  ‡ f d †  ‰ ‡  ‡ ‡ f d †  } | d ƒ | d ƒ | d	 ƒ d  S(
   Nc            s+   ˆ j  j ˆ  t |  ƒ f ƒ } | j |  ƒ S(   N(   R~   R°   R   R„   (   RQ   R   (   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR±     s    c            s,   ˆ  |  ƒ } ˆ |  ƒ } ˆ j  | | ƒ d  S(   N(   R…   (   RQ   R’   R“   (   R   R±   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   
  s    i   i   i   i    (   i   (   i   i   (   i   i    i   (    (   R   R   R²   (    (   R   R±   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_np_frombuffer_allocated  s
    

c         C   s   |  j  t ƒ d  S(   N(   Ré   RR   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_frombuffer_allocated  s    c         C   s   |  j  t ƒ d  S(   N(   Ré   RS   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyRê     s    c            sS  d „  } ‡  ‡ f d †  } t  j d d d d g ƒ } | | ƒ t  j d d d g ƒ } | | ƒ | d ƒ } | | ƒ | | j d ƒ ƒ | | j d ƒ j ƒ | | j d ƒ d  d  d	 … ƒ | | j d ƒ ƒ | | j d ƒ j ƒ | | j d ƒ d  d  d	 … ƒ xB d d t d ƒ f D]+ } t  j | g ƒ j d ƒ } | | ƒ q Wd  S(   Nc         S   sL   t  j j d ƒ t  j j |  ƒ } d | | d k  <t d ƒ | | d k <| S(   Ni*   g        g333333Ó?t   nangffffffæ?(   R   t   randomt   seedt   float(   t   NR   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyRß     s
    c            s`   t  ˆ  t |  ƒ f ƒ } ˆ  |  ƒ } g  | D] } | j ƒ  ^ q+ } ˆ j | j |  ƒ | ƒ d  S(   N(   R   R   R3   R…   R„   (   R   R   R’   RT   (   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyRÞ   !  s    i   i    iÿÿÿÿi   i   i   i   i   g        g      ø?Rë   (   i   i   (   i   i   (   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (    (   R   Rµ   t   bool_R¸   R/   Rî   R«   (   R   R   Rß   RÞ   R   Ra   (    (   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_nonzero  s"    	


  c         C   s   |  j  t ƒ d  S(   N(   Rñ   RW   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_nonzero:  s    c         C   s   |  j  t ƒ d  S(   N(   Rñ   RX   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_nonzero=  s    c         C   s   |  j  t ƒ d  S(   N(   Rñ   RZ   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_where_1@  s    c            sN  t  ‰ d „  } t d d d g ƒ ‰ t j t j t j t j t j t j g ‰  t j	 j
 d ƒ t ‡  ‡ ‡ ‡ f d † } ‡  ‡ ‡ f d †  } t j d d	 d
 d	 g ƒ } | | ƒ t j d d	 d g ƒ } | | ƒ | d ƒ } | | ƒ | | j d ƒ ƒ | | j d ƒ j ƒ | | j d ƒ d  d  d … ƒ | | j d ƒ ƒ | | j d ƒ j ƒ | | j d ƒ d  d  d … ƒ | | j d ƒ d d ƒ| | j d ƒ j d d ƒ| | j d ƒ d  d  d … d d ƒxB d d t d ƒ f D]+ } t j | g ƒ j d ƒ } | | ƒ qîWx* d	 d t t d d f D] } | | ƒ q6Wd  S(    Nc         S   sL   t  j j d ƒ t  j j |  ƒ } d | | d k  <t d ƒ | | d k <| S(   Ni*   g        g333333Ó?Rë   gffffffæ?(   R   Rì   Rí   Rî   (   Rï   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyRß   E  s
    t   Ct   FR¦   i*   c            sp  t  j j ˆ  ƒ | t k ro t  j |  d ˆ  d d | ƒ} t  j |  d ˆ  d d | ƒ} |  j d | ƒ }  nJ t  j |  d ˆ  d d t ˆ ƒ ƒ} t  j |  d ˆ  d d t ˆ ƒ ƒ} | j d ƒ | j d ƒ t ˆ t	 |  ƒ t	 | ƒ t	 | ƒ f ƒ } ˆ |  | | ƒ } | j
 |  | | ƒ } t d k  r\ˆ j | j | j ƒ t  j j | | ƒ n ˆ j | | ƒ d  S(	   NR'   i    RÄ   i   i   i	   i   (   i   i   (   R   Rì   t   shuffleRÆ   R—   R3   t   nextRB   R   R   R„   Ræ   Rž   R'   Rš   t   assert_array_equalR…   (   R   t   layoutR[   R\   R   R’   R“   (   t   _typest   layoutsR   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyRÞ   R  s     %%*c            s¡   d } d } t  j j ˆ  ƒ ˆ  d d ƒ } ˆ  d d ƒ } t ˆ t |  ƒ t | ƒ t | ƒ f ƒ } ˆ |  | | ƒ } | j |  | | ƒ } ˆ j | | ƒ d  S(   Ni   i   i    i   (   R   Rì   R÷   R   R   R„   R…   (   t   scalR[   R\   R   R’   R“   (   Rû   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt
   check_scalh  s    *i   i    iÿÿÿÿi   i   i   i   i   Rú   g        g      ø?Rë   g      @y                (   i   i   (   i   i   (   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (    (   R]   R   R   RP   Rº   RE   R   RM   R‚   Rì   Rí   RÆ   Rµ   Rð   R¸   R/   Rî   R«   t   True(   R   Rß   RÞ   Rþ   R   Ra   R[   (    (   Rû   Rü   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_np_where_3C  s8    	


  &c            s·   t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } ‡ f d †  } xq | ƒ  D]f } | d k d d f } | | ƒ | d k  t j d f } | | ƒ | d k t t f } | | ƒ qI Wd  S(   Nt   nopythonc            s,   ˆ |  Œ  } ˆ  |  Œ  } ˆ j  | | ƒ d  S(   N(   R…   (   Rd   R’   R“   (   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   check_ok  s    c          3   sz   t  j d d d ƒ }  ˆ  j j |  ƒ |  V|  j d d d ƒ V|  j d d d d ƒV|  j d d d ƒ d  d  d … Vd  S(	   Niþÿÿÿi   i   i   i   RÄ   Rö   iÿÿÿÿ(   R   t   linspaceRì   R÷   R¸   (   RT   (   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   a_variations•  s    i    i   y              @y      ð?      @(   R]   R   Rÿ   R   Rë   RÆ   (   R   R  R  RT   t   params(    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt$   test_np_where_3_broadcast_x_y_scalarŒ  s    

c   	         s¢   t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } d „  } d „  } xY | ƒ  D]N } xE | ƒ  D]: } t j | ƒ } | | k } | | | f } | | ƒ q\ WqL Wd  S(   NR  c            s{   |  \ } } } ˆ | | | ƒ } ˆ  | | | ƒ } ˆ j  | | ƒ ˆ | | | ƒ } ˆ  | | | ƒ } ˆ j  | | ƒ d  S(   N(   R…   (   Rd   t	   conditionR[   R\   R’   R“   (   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR  «  s    c          s   st   t  j d ƒ j d d ƒ }  |  V|  d Vt  j |  ƒ V|  d  d  d … Vt  j d d d ƒ j d d d	 ƒ d
 Vd  S(   Ni	   i   gš™™™™™ñ?iÿÿÿÿiöÿÿÿi
   i<   i   i   y              ð?(   R   R·   R¸   R6   R  (   R[   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   array_permutations·  s    	c           s   s    d Vd Vt  j Vt Vd Vd  S(   Ni    g333333@i   y              @y       @      @(   R   Rë   Rÿ   (    (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   scalar_permutations¿  s
    (   R]   R   Rÿ   R   t   mean(	   R   R  R  R	  R[   R\   t   x_meanR  R  (    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt'   test_np_where_3_broadcast_x_or_y_scalar§  s    		c            sä   t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } ‡  ‡ f d †  } ˆ j ƒ  | t j d g ƒ ƒ | t j d g g ƒ ƒ | t j d ƒ ƒ | t j t ƒ ƒ | t j d ƒ ƒ | t j d d g ƒ ƒ | t j g  ƒ ƒ d  S(   NR  c            s,   ˆ |  ƒ } ˆ  |  ƒ } ˆ j  | | ƒ d  S(   N(   R…   (   R#   R’   R“   (   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR  Ñ  s    c            s?   ˆ j  t ƒ  } ˆ  |  ƒ Wd  QXˆ j d t | j ƒ ƒ d  S(   Ns>   item(): can only convert an array of size 1 to a Python scalar(   Rœ   R   RÊ   RŸ   R    (   R#   R¤   (   R‘   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR³   Ö  s    	g      ø?y              ø?i   i   (	   R_   R   Rÿ   R¬   R   RE   R‚   R«   Rð   (   R   R  R³   (    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_itemÍ  s    
c            sÇ   t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } ‡  ‡ f d †  } ˆ j ƒ  | t j d g ƒ d ƒ | t j d g g ƒ d ƒ | t j d ƒ d ƒ | t j d d g ƒ ƒ | t j g  ƒ ƒ d  S(	   NR  c            sF   |  j  ƒ  } |  j  ƒ  } ˆ | | ƒ ˆ  | | ƒ ˆ j | | ƒ d  S(   N(   R3   R…   (   RT   Ra   R’   R“   (   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR  í  s
    c            sB   ˆ j  t ƒ  } ˆ  |  d ƒ Wd  QXˆ j d t | j ƒ ƒ d  S(   Ni*   s/   itemset(): can only write to an array of size 1(   Rœ   R   RÊ   RŸ   R    (   RT   R¤   (   R‘   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR³   ô  s    	g      ø?i*   y              ø?i   i   (   Rb   R   Rÿ   R¬   R   RE   R‚   R«   (   R   R  R³   (    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_itemseté  s    
c         C   sl   t  } t d t ƒ | ƒ } t j d ƒ } |  j | | ƒ | | ƒ ƒ |  j | | d ƒ | | d ƒ ƒ d  S(	   NR  i   i   i   i   i   i    (   i   i   i   i   i   (   Re   R   Rÿ   R   RO   R…   (   R   R   R‘   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum  s
    c         C   s~   t  } t d t ƒ | ƒ } t j d
 ƒ } |  j | | d d ƒ| | d d ƒƒ |  j | | d d	 ƒ| | d d	 ƒƒ d  S(   NR  i   i   i   i   i   R@   i   i   (   i   i   i   i   i   (   Rf   R   Rÿ   R   RO   R…   (   R   R   R‘   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum_kws  s
    (c         C   s¨   t  } t d t ƒ | ƒ } t j d ƒ } |  j | | d d ƒ| | d d ƒƒ t } t d t ƒ | ƒ } t j d ƒ } |  j | | d d ƒ| | d d ƒƒ d  S(   NR  g      $@R@   i    iÿÿÿÿ(   Rf   R   Rÿ   R   R·   R…   Rj   (   R   R   R‘   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum_1d_kws  s    (c         C   s~   t  } t d t ƒ | ƒ } t j d
 ƒ } d } |  j | | | ƒ | | | ƒ ƒ d	 } |  j | | | ƒ | | | ƒ ƒ d  S(   NR  i   i   i   i   i   i   i   i   (   i   i   i   i   i   i   (   Ri   R   Rÿ   R   RO   R…   (   R   R   R‘   R   R@   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum_const"  s    "c      	   C   s°   |  j  ƒ  t } t d t ƒ | ƒ } t j d	 ƒ } t j d
 ƒ } |  j t ƒ  | | d ƒ Wd  QX|  j t ƒ  | | d ƒ Wd  QX|  j t ƒ  | | d ƒ Wd  QXd  S(   NR  i   i   i   i   i   i   iÿÿÿÿ(   i   i   i   i   i   (   i   i   (   R¬   Re   R   Rÿ   R   RO   Rœ   R   (   R   R   R‘   RT   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum_exceptions,  s    
c         C   s  |  j  ƒ  t d t ƒ d „  ƒ } t j d	 ƒ } |  j | | ƒ | j | ƒ ƒ t j d
 ƒ } |  j | | ƒ | j | ƒ ƒ t j d ƒ } |  j t ƒ  } | | ƒ Wd  QXd } |  j	 | t
 | j ƒ ƒ |  j t ƒ  } | j | ƒ Wd  QX|  j	 d t
 | j ƒ ƒ d  S(   NR  c         S   s   |  j  d d ƒ S(   NR@   iýÿÿÿ(   Rc   (   R   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   fooB  s    i   i   i   i   s   'axis' entry is out of boundss   out of bounds(   i   i   i   i   (   i   i   i   (   i   i   (   R¬   R   Rÿ   R   RO   R…   t   py_funcRœ   R
   RÊ   RŸ   R    R   (   R   R  RT   R¤   t   errmsg(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_sum_const_negative>  s    
c      	   C   s®   t  } t d t ƒ | ƒ } t j d ƒ } |  j | | ƒ | | ƒ ƒ |  j t ƒ  | | d ƒ Wd  QXt } t d t ƒ | ƒ } |  j t ƒ  | | d d ƒWd  QXd  S(   NR  i   i   i   R@   (   i   i   (	   Rl   R   Rÿ   R   RO   R…   Rœ   R	   Rm   (   R   R   R‘   RT   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_cumsumX  s    c            se  t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } g  } | j d ƒ | j d ƒ | j d ƒ | j d ƒ | j t j d d d d d g ƒ ƒ | j t j d d d g d d d g g d	 d
 ƒƒ | j t j d d d g d d d g g g ƒ ƒ | j t j d d g g d d g g d d g g g g ƒ ƒ | j d d d d d g ƒ | j d ƒ | j d d f ƒ | j d d d f d d d f f ƒ t d d
 d g ƒ } xh t j t j t j	 g D]N } t j
 d d | ƒj d d	 t | ƒ ƒ} x | D] } | | | ƒ q÷WqÀWt j
 d d | ƒj d d	 t | ƒ ƒ} | j } | | d t j | ƒ t j | d ƒ | g | d g g } x1 | D]) }	 ˆ j t ƒ  ˆ  | |	 ƒ Wd  QXq‹Wˆ j t ƒ  ˆ  | d g ƒ Wd  QXˆ j t ƒ * t d t ƒ t ƒ }
 |
 | d d ƒ Wd  QXˆ j t ƒ - t d t ƒ t ƒ }
 |
 | d d d ƒWd  QXˆ j ƒ  d  S(   NR  c            s]   ˆ |  | ƒ } ˆ  |  | ƒ } ˆ j  | | ƒ t | d ƒ rY ˆ j | j | j k ƒ n  d  S(   NRÄ   (   R…   t   hasattrRž   RÄ   (   R   t   indR’   R“   (   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   k  s
    i   i   i   iþÿÿÿi   i    RÄ   Rö   i   Rõ   R¦   i   R'   i   g333333û?R@   (   i   i   i   (   i   i   i   (   i   i   i   (   i   (   i   (   i   (   i   (   i   (   i   (   i   i   (   i   i   (   R?   R   Rÿ   t   appendR   R«   R   R   Rº   R‚   R·   R¸   Rø   t   sizeRœ   t
   IndexErrorR	   RA   R¬   (   R   R²   t   test_indicesRü   RË   R¦   R  t   szAt   illegal_indicesR[   t   take_kws(    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_takeg  sJ    %41=%**	(c            s  t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ ‡ f d †  } t j d ƒ } x- t j t j g D] } | | | d ƒ ƒ qR Wt j d ƒ j d d ƒ } x- t j t j g D] } | | | d ƒ ƒ q Wt j d d	 t j ƒj d
 d d d
 ƒ } x3 t j t j	 t j g D] } | | | d ƒ ƒ qý Wd  S(   NR  c            sv   t  j |  ƒ } ˆ | | ƒ } ˆ j | d  k ƒ t  j |  ƒ } ˆ  | | ƒ } ˆ j | d  k ƒ ˆ j | | ƒ d  S(   N(   R   R3   t
   assertTrueR&   R…   (   R   R   R’   t   ervR“   t   grv(   R‘   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   «  s    i   i
   i   i   i   i0   R'   i   (
   RC   R   Rÿ   R   R·   R   Rð   R¸   RM   R‚   (   R   R²   R¦   R[   (    (   R‘   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_fill¨  s    *c         C   s•   t  } t d t ƒ | ƒ } t j d d ƒ } t j j | | ƒ | | ƒ ƒ t j | | ƒ \ } } | d | } t j j | | ƒ | | ƒ ƒ d  S(   NR  iöÿÿÿi
   y              ð?(   Rn   R   Rÿ   R   R  Rš   t   assert_equalt   meshgrid(   R   R   R‘   R[   R\   t   z(    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_realÄ  s    c         C   s•   t  } t d t ƒ | ƒ } t j d d ƒ } t j j | | ƒ | | ƒ ƒ t j | | ƒ \ } } | d | } t j j | | ƒ | | ƒ ƒ d  S(   NR  iöÿÿÿi
   y              ð?(   Ro   R   Rÿ   R   R  Rš   R'  R(  (   R   R   R‘   R[   R\   R)  (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_imagÏ  s    c         C   s¦   xŸ t  t g D]‘ } t d t ƒ | ƒ } t j d d ƒ } t j j | | ƒ | | ƒ ƒ t j | | ƒ \ } } | d | } t j j | | ƒ | | ƒ ƒ q Wd  S(   NR  iöÿÿÿi
   y              ð?(	   Rq   Rs   R   Rÿ   R   R  Rš   R'  R(  (   R   R   R‘   R[   R\   R)  (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt	   test_conjÚ  s    c            s¹   t  ‰ t d t ƒ ˆ ƒ ‰  ‡  ‡ f d †  } | t j d d d g d d d g g ƒ ƒ | t j t j d ƒ ƒ ƒ | t j d d g d d	 g d
 d g g ƒ ƒ | t j g  ƒ ƒ d  S(   NR  c            s#   t  j j ˆ |  ƒ ˆ  |  ƒ ƒ d  S(   N(   R   Rš   R'  (   RT   (   R‘   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²   é  s    i   i   i   i   gÍÌÌÌÌÌ@g333333û?gR¸…ëQ@gffffff
@(   Ru   R   Rÿ   R   R«   t   zeros(   R   R²   (    (   R‘   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_uniqueå  s    +.c         C   sÉ   t  } t d t ƒ | ƒ } t j d ƒ j d d ƒ } t j d ƒ } t j j | | | ƒ | | | ƒ ƒ t } t d t ƒ | ƒ } t j d ƒ j d d ƒ } t j j | | | ƒ | | | ƒ ƒ d  S(   NR  g      4@i   i   g      @g      0@(	   Rw   R   Rÿ   R   R·   R¸   Rš   R'  Rx   (   R   R   R‘   RT   RK   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_dotñ  s    %c         C   sé   t  } t d t ƒ | ƒ } d } | t j f } t j j | | Œ  | | Œ  ƒ | t j d ƒ f } t j j | | Œ  | | Œ  ƒ | t j f } t j j | | Œ  | | Œ  ƒ | t j d ƒ f } t j j | | Œ  | | Œ  ƒ d  S(   NR  i   RP   t   f4(	   Rz   R   Rÿ   R   RP   Rš   Rù   R'   RE   (   R   R   R‘   Ry   Rd   (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_array_ctor_with_dtype_arg  s    (6   t   __name__t
   __module__t   __doc__R}   R”   R•   R–   R­   R®   R¯   R¾   RÃ   RÌ   R×   RØ   RÙ   R   R·   Rÿ   Rà   Rá   R   Rã   Rä   Rå   Rç   Rè   Ré   Rê   Rñ   Rò   Ró   Rô   R   R  R  R  R  R  R  R  R  R  R  R  R"  R&  R*  R+  R,  R.  R   R/  R1  (    (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR{   Í   sb   					/			M		&	!										!				I		&								
				A					t   TestArrayComparisonsc           B   s   e  Z d  „  Z RS(   c            s´   ‡  ‡ f d †  } t  ‰  t j d d t j ƒj d ƒ } | | | t ƒ | | | t ƒ | | | j ƒ  t ƒ | | | j d ƒ t ƒ | | | j	 t ƒ | | | d  t ƒ d  S(	   Nc            sH   t  ˆ  t |  ƒ t | ƒ f ƒ } ˆ j | j |  | ƒ | | f ƒ d  S(   N(   R   R   R…   R„   (   RT   RK   R’   R   (   R   R   (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR²     s    !i
   R'   i   i   R¹   iÿÿÿÿ(   i   i   (
   RU   R   R-  RP   R¸   Rÿ   R3   RÆ   R:   R/   (   R   R²   R   (    (   R   R   s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   test_identity  s    !(   R2  R3  R6  (    (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyR5    s   t   __main__(S   t
   __future__R    t	   itertoolsR   R   R   RÎ   t   numpyR   t   numbaR   t   unittestR   R   R   t   numba.compilerR   t   numba.errorsR	   R
   t   numba.numpy_supportR   R   R   Ræ   t   supportR   R   R   R   R   t   matmul_usecaseR   R   R   R   R   R   R    R&   R)   R0   R2   R4   R5   R7   R9   R<   R?   RA   RC   RD   RF   RI   RL   RN   RR   RS   RU   RW   RX   RZ   R]   R_   Rb   Re   Rf   Ri   Rj   Rl   Rm   Rn   Ro   Rq   Rs   Ru   Rw   Rx   Rz   R{   R5  R2  t   main(    (    (    s=   lib/python2.7/site-packages/numba/tests/test_array_methods.pyt   <module>   s|   (																																												ÿ ÿ ÿ F