o
    i                     @   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   <   t jtdd t|  W d    d S 1 sw   Y  d S )Nz&is not a valid or supported arithmeticmatchpytestraises
ValueErrorr   r    r   S/home/ubuntu/veenaModal/venv/lib/python3.10/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    d S 1 sw   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   )1e7z10**7z9**9**9c                 C   r   )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	   joblib._utilsr   markparametrizer   r   r   r   r   r   r   r   <module>   s    

	