ó
\K]c           @  s¬   d  d l  m Z d  d l Z d  d l j Z d  d l m Z m	 Z	 d  d l
 m Z m Z d d l m Z d „  Z d „  Z d	 e f d
 „  ƒ  YZ e d k r¨ e j ƒ  n  d S(   iÿÿÿÿ(   t   print_functionN(   t   compile_isolatedt   Flags(   t   typest   errorsi   (   t   TestCasec         C  s   | |  | | | … <d  S(   N(    (   t   at   startt   stopt   stept   scalar(    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyt   setitem_slice   s    c         C  sM   | d } t  j | ƒ |  d | +d |  | <t  j | | d ƒ |  | d )d  S(   Ni   i    iA  i   (   t   npt   arange(   t   obst   nPointst   center(    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyt   usecase   s    

t   TestStoreSlicec           B  s   e  Z d  „  Z d „  Z RS(   c         C  sŠ   d } t  j | ƒ } | j ƒ  } t ƒ  } | j d ƒ t t t j t j	 f d | ƒ} | j
 | | ƒ t | | ƒ |  j | | ƒ d  S(   Ni
   t   nrtt   flags(   R   t   zerost   copyR   t   setR   R   R   t   float64t   intpt   entry_pointt   assertPreciseEqual(   t   selft   nt   obs_gott   obs_expectedR   t   cres(    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyt   test_usecase   s    		c         C  s  d } t  j t  j t  j t  j t  j f } t t | ƒ } t j | d t j ƒ} d d d t | ƒ d d	 f d d t | ƒ d d	 f d d d d d d f
 } x‰ | D] \ } } } }	 t j | d t j ƒ} t j | d t j ƒ}
 | j | | | | |	 ƒ t |
 | | | |	 ƒ |  j | |
 ƒ q¥ Wt j | d t j ƒ} |  j	 t
 ƒ   } | j | d d d d ƒ Wd  QX|  j t | j ƒ d ƒ d  S(   Ni
   t   dtypei   i   i   i   iÿÿÿÿiþÿÿÿiM   iúÿÿÿi   iX   iýÿÿÿi'  i   iüÿÿÿi   i   i    s   slice step cannot be zero(   i   i   i   i   (   i   i   iÿÿÿÿi   (   iþÿÿÿiúÿÿÿi   iX   (   iþÿÿÿiúÿÿÿiýÿÿÿi'  (   iúÿÿÿiþÿÿÿi   iX   (   iúÿÿÿiþÿÿÿiüÿÿÿiX   (   i   i   i   iX   (   i   i   iþÿÿÿiX   (   R   t   int64R   R   R   R   t   lenR   R   t   assertRaisest
   ValueErrort   assertEqualt   strt	   exception(   R   R   t   argtysR    R   t   testsR   R   R	   R
   t   bt   cm(    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyt   test_array_slice_setitem&   s2    	(   t   __name__t
   __module__R!   R.   (    (    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyR      s   	t   __main__(   t
   __future__R    t   numpyR   t   numba.unittest_supportt   unittest_supportt   unittestt   numba.compilerR   R   t   numbaR   R   t   supportR   R   R   R   R/   t   main(    (    (    s:   lib/python2.7/site-packages/numba/tests/test_storeslice.pyt   <module>   s   		1