o
    8ήcn                     @   s   d Z ddlZddlZddlmZmZ ddlmZ ddlm	Z	m
Z
 e Zde_e Zdd Zd	d
 Zdd ZG dd dejZedkrHe  dS dS )z
Test return values
    N)compile_isolatedFlags)types)TypingErrorNumbaTypeErrorTc                   C      t S N)abs r
   r
   E/tmp/pip-target-vg8gfxp4/lib/python/numba/tests/test_return_values.pyget_nopython_func      r   c                   C   r   r   )openr
   r
   r
   r   get_pyobj_func   r   r   c                   C   s   t jS r   )mathfloorr
   r
   r
   r   get_module_func   s   r   c                   @   sH   e Zd ZefddZdd ZefddZdd Zefd	d
Zdd Z	dS )TestReturnValuesc                 C   @   t }t|d|d}|j}|tkr| }| |t d S | }d S Nr
   flags)r   r   entry_pointenable_pyobj_flagsassertEqualr	   selfr   pyfunccrcfuncresultr
   r
   r   test_nopython_func      
z#TestReturnValues.test_nopython_funcc                 C   <   |  t | jtd W d    d S 1 sw   Y  d S Nr   )assertRaisesr   r!   no_pyobj_flagsr   r
   r
   r   test_nopython_func_npm*      "z'TestReturnValues.test_nopython_func_npmc                 C   r   r   )r   r   r   r   r   r   r   r
   r
   r   test_pyobj_func.   r"   z TestReturnValues.test_pyobj_funcc                 C   r#   r$   )r%   r   r*   r&   r'   r
   r
   r   test_pyobj_func_npm9   r)   z$TestReturnValues.test_pyobj_func_npmc                 C   sB   t }t|d|d}|j}|tkr| }| |tj d S | }d S r   )r   r   r   r   r   r   r   r   r
   r
   r   test_module_func=   s   
z!TestReturnValues.test_module_funcc                 C   r#   r$   )r%   r   r,   r&   r'   r
   r
   r   test_module_func_npmH   r)   z%TestReturnValues.test_module_func_npmN)
__name__
__module____qualname__r   r!   r(   r*   r+   r,   r-   r
   r
   r
   r   r      s    r   __main__)__doc__r   unittestnumba.core.compilerr   r   
numba.corer   numba.core.errorsr   r   r   enable_pyobjectr&   r   r   r   TestCaser   r.   mainr
   r
   r
   r   <module>   s     0