U
    	-ev                     @   s   d dl mZ d dlZd dlmZmZ d dlZd dlmZ d dl	m
Z
mZmZ d dlmZmZmZmZmZmZmZ d dlmZ edZd	d
 Zdd Zdd Zdd Zdd Zdd Zeddd Zdd Zdd Z dS )    )dedentN)PopenPIPE)S)raiseswarns_deprecated_sympyskip_under_pyodide)	translatereplaceordinalrawlinesstrlinesas_intfind_executable)import_module
pyodide_jsc                  C   s   d} t | d ddkstt | d ddks,tt | ddiddksDtt | ddiddks\tt | d	diddksttt | d	diddkstt | ddidd	kstt | dd
ddksttd}t | dd|dkst|t | d||kdkstd S )Nabcabc xcxbZbcbaby)r   r   i   ZxbcT)r	   AssertionErrorchr)r   u r   `/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/sympy/utilities/tests/test_misc.pytest_translate   s    r    c                   C   s@   t dddkstt dddidks(tt ddddks<td S )	Nr   )r   bZbbcr   ZAaZAabc)r   CZbbC)r
   r   r   r   r   r   test_replace   s    r#   c                   C   s   t ddkstt ddks tt ddks0tt ddks@tt d	d
ksPttdd tddD sltt ddks|tt ddkstt ddkstt ddkstt ddkstt ddksttdd tddD std S )Nz-1str   Z0th   Z1st   Z2nd   Z3rdc                 s   s   | ]}t |d V  qdS thN)r   endswith.0ir   r   r   	<genexpr>+   s     ztest_ordinal.<locals>.<genexpr>      d   Z100the   Z101stf   Z102ndg   Z103rdh   Z104th   Z200thc                 s   s"   | ]}t |t|d  kV  qdS r(   )r   strr+   r   r   r   r.   2   s     i$i5)r   r   allranger   r   r   r   test_ordinal%   s    r:   c                   C   s8   t ddkstt ddks tt tddks4td S )Nza a
azdedent('''\
    a a
    a''')za az'a a'\le"ftz*(
    '(\n'
    'r\'\\le"ft\'\n'
    ')'
))r   r   r   r   r   r   r   test_rawlines5   s
    
r<   c                  C   s   d} t | dtdkst| dks&td} t | dtdks@tt ddksPtt dd	d
dksdtt ddksttd} t | t| kstd S )Nzthis quote (") is in the middle
   z^        (
        'this quo'
        'te (") i'
        's in the'
        ' middle'
        )zthis quote (') is in the middle   zH        (
        "this quote (') is "
        "in the middle"
        )z\leftz(
r'\left'
)T)shortzr'\left'r;   z(
r'\le"ft'
)zthis
other line)r   r   r   r   )qr   r   r   test_strlines@   s     rA   c                   C   sx   zt d d d d W n tk
r&   Y n
X ds0tt dd d d dksFtzt ddd W n tk
rj   Y n
X dsttd S )NZnot_noneFsr   r   )r	   
ValueErrorr   r   r   r   r   test_translate_argsd   s    rD   z'Cannot create subprocess under pyodide.c                  C   sj   t j } d| d< d}tjd|g}t|| ttd}| \}}|d}|d}d}||ksft	|d S )NTrueZSYMPY_DEBUGzGfrom sympy import *; x = Symbol("x"); print(integrate((1-cos(x))/x, x))z-c)envstdoutstderrasciiz/substituted: -x*(1 - cos(x)), u: 1/x, u_var: _u)
osenvironcopysys
executabler   r   communicatedecoder   )rF   cmdZcmdlineprocouterrexpectedr   r   r   test_debug_outputv   s    


rV   c                   C   s   t tdd  t tdd  t tdd  t tdd  t tdd  t tdd  t tdd  t td	d  t td
d  tddddkstd S )Nc                   S   s   t dS )NTr   r   r   r   r   <lambda>       ztest_as_int.<locals>.<lambda>c                   S   s   t dS )Ng?rW   r   r   r   r   rX      rY   c                   S   s   t g S NrW   r   r   r   r   rX      rY   c                   S   s
   t tjS rZ   )r   r   NaNr   r   r   r   rX      rY   c                   S   s
   t tjS rZ   )r   r   Infinityr   r   r   r   rX      rY   c                   S   s
   t tjS rZ   )r   r   NegativeInfinityr   r   r   r   rX      rY   c                   S   s
   t tjS rZ   )r   r   ZComplexInfinityr   r   r   r   rX      rY   c                   S   s   t dS )NgJ-DrW   r   r   r   r   rX      rY   c                   S   s   t tdS )Nz1.000000000000000000001)r   r   r   r   r   r   rX      rY   TF)strictr%   )r   rC   r   r   r   r   r   r   test_as_int   s    r_   c                	   C   s   t   td W 5 Q R X d S )Npython)r   r   r   r   r   r   test_deprecated_find_executable   s    ra   )!textwrapr   rM   
subprocessr   r   rJ   Zsympy.core.singletonr   Zsympy.testing.pytestr   r   r   Zsympy.utilities.miscr	   r
   r   r   r   r   r   Zsympy.externalr   r   r    r#   r:   r<   rA   rD   rV   r_   ra   r   r   r   r   <module>   s$   $$
