B
      \  ใ               @   s   d dl mZ d dlZd dlmZmZ d dlmZ dd Zdd Z	ed	d
 Z
edddd ZG dd dejZedkre ก  dS )้    )ฺprint_functionN)ฺjitฺint32)ฺunittest_supportc             C   s   | | S )Nฉ )ฺaฺbr   r   ๚9lib/python3.7/site-packages/numba/tests/test_interproc.pyฺfoo	   s    r
   c             C   s   t | || S )N)ฺcfoo)r   r   r   r   r	   ฺbar   s    r   c             C   s   | | S )Nr   )ฺxฺyr   r   r	   ฺinner   s    r   T)ฺnopythonc             C   s
   t | |S )N)r   )r   r   r   r   r	   ฺouter   s    r   c               @   s$   e Zd Zdd Zdd Zdd ZdS )ฺTestInterProcc             C   s>   t ttfddtat ttfddt}|  |dddก d S )NT)r   ้   ้   ้   )r   r   r
   r   r   ฺassertEqual)ฺselfฺcbarr   r   r	   ฺtest_bar_call_foo   s    zTestInterProc.test_bar_call_fooc             C   sX   x,t dD ] }tttfddtat ก  q
W tttfddt}|  |dddก d S )Nr   T)r   r   r   )	ฺranger   r   r
   r   ฺgcZcollectr   r   )r   ฺir   r   r   r	   ฺ test_bar_call_foo_compiled_twice!   s
    z.TestInterProc.test_bar_call_foo_compiled_twicec             C   s   |   tdddก d S )Nr   r   ้   )r   r   )r   r   r   r	   ฺtest_callsite_compilation,   s    z'TestInterProc.test_callsite_compilationN)ฺ__name__ฺ
__module__ฺ__qualname__r   r   r   r   r   r   r	   r      s   r   ฺ__main__)Z
__future__r   r   Znumbar   r   r   Zunittestr
   r   r   r   ZTestCaser   r    ฺmainr   r   r   r	   ฺ<module>   s   