a
    Žù»j÷  ã                   @   sn   d dl Z d dlmZ e j dg d¢¡dd„ ƒZdd„ Ze j dg d	¢¡d
d„ ƒZe j dg d¢¡dd„ ƒZdS )é    N©Ú	eval_exprÚexpr)zexec('import os')zprint(1)z	import osz1+1; import osz1^1z' ' * 10**10z9. ** 10000.c                 C   s:   t jtdd�� t| ƒ W d   ƒ n1 s,0    Y  d S )Nz&is not a valid or supported arithmetic©Úmatch©ÚpytestZraisesÚ
ValueErrorr   ©r   © r   ú<E:\soccer\ml_env\Lib\site-packages\joblib/test/test_utils.pyÚtest_eval_expr_invalid   s    r   c                  C   s>   d} t jtdd�� t| ƒ W d   ƒ n1 s00    Y  d S )Nze1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1zis too longr   r   r
   r   r   r   Útest_eval_expr_too_long   s    r   )Z1e7z10**7z9**9**9c                 C   s:   t jtdd�� t| ƒ W d   ƒ n1 s,0    Y  d S )NzNumeric literal .* is too larger   r   r
   r   r   r   Ú test_eval_expr_too_large_literal   s    r   zexpr, result))z2*6é   )z2**6é@   )z1 + 2*3**(4) / (6 + -7)g      dÀ)z(20 // 3) % 5é   c                 C   s   t | ƒ|ksJ ‚d S )Nr   )r   Úresultr   r   r   Útest_eval_expr_valid#   s    
r   )	r   Zjoblib._utilsr   ÚmarkZparametrizer   r   r   r   r   r   r   r   Ú<module>   s   þ

þ	