ķ
\K]c           @` s%  d  Z  d d l m Z m Z m Z d d l Z d d l m Z m Z d d l	 m
 Z
 m Z d Z d Z d Z e e d	 e d
 e d    Z e e d
 e d    Z e e d	 e d
 e d    Z e d
 e  d    Z e e d	 e d
 e d    Z d e
 f d     YZ d   Z d S(   sz   
This file will be copied to a temporary directory in order to
exercise caching compiled C callbacks.

See test_cfunc.py.
i    (   t   divisiont   print_functiont   absolute_importN(   t   cfunct   jit(   t   TestCaset   captured_stderri   s   float64(float64, float64)s   float64(int64, int64)t   cachet   nopythonc         C` s   |  | t  S(   N(   t   Z(   t   xt   y(    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   add_usecase   s    c         C` s   |  | t  S(   N(   R	   (   R
   R   (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   add_nocache_usecase   s    c         C` s   |  | S(   N(    (   t   at   b(    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   div_usecase   s    c         C` s   |  | t  S(   N(   R	   (   R
   R   (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   inner#   s    c         C` s   t  | |   S(   N(   R   (   R
   R   (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   outer'   s    t   _TestModulec           B` s    e  Z d  Z d   Z d   Z RS(   sĸ   
    Tests for functionality of this module's cfuncs.
    Note this does not define any "test_*" method, instead check_module()
    should be called by hand.
    c         C` sū   | j  } |  j | j d d  d  | j } |  j | j d d  d  | j } |  j | j d d  d  | j } t   # } |  j | j d d  d  Wd  QX|  j | j   d	  t    } | j d d
  Wd  QX| j   } |  j	 d |  d  S(   Ng       @g      @g      @g      @g      @i   i   g      @t    i    t   ZeroDivisionError(
   R   t   assertPreciseEqualt   ctypesR   R   R   R   t   assertEqualt   getvaluet   assertIn(   t   selft   modt   ft   err(    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   check_module3   s    				"c         C` s
   t   d  S(   N(   t   NotImplementedError(   R   (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   runTestE   s    (   t   __name__t
   __module__t   __doc__R   R!   (    (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyR   ,   s   	c          C` s!   t  j t }  t   j |   d  S(   N(   t   syst   modulesR"   R   R   (   R   (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt	   self_testI   s    (   R$   t
   __future__R    R   R   R%   t   numbaR   R   t   numba.tests.supportR   R   R	   t   add_sigt   div_sigt   TrueR   R   R   R   R   R   R'   (    (    (    s?   lib/python2.7/site-packages/numba/tests/cfunc_cache_usecases.pyt   <module>   s   !!!