o
    jg                     @   sp   d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	m
Z
 ddlmZmZmZmZ dd Zd	d
 Zdd ZdS )z=Tests for tools for manipulation of expressions using paths.     )epathEPath)raises)E)cossin)xyztc                  C   s  t dtfdfdtdftfg} td| t dtfdfdtdftfgks#J td| t dtfddtdftgks6J td| t dtdtdgksEJ td| g ksNJ td	| t dtfdfdtdftfgkscJ td
| t dtfddtdftgksvJ td| t dtdtdgksJ td| g ksJ td| t dtfddtdftgksJ td| t dtfdtdfgksJ td| dtgksJ td| g ksJ td| dgksJ td| tgksJ td| t dtfdtdfgksJ td| t dtfdtdfgksJ td| t dtfddtdfgksJ td| t dtfdtdftgks"J td| t dtfddtdftgks6J td| t dtfddtdfgksIJ td| t dtfdtdftgks\J td| t dtfddtdftgkspJ td| g dks|J td| t ttgksJ td| ddgksJ td| ttgksJ td t t t d t ttgksJ td!ttt d  tt t t  t t tgksJ d S )"N            /*z/*/*z/*/*/*z/*/*/*/*z/[:]z/[:]/[:]z/[:]/[:]/[:]z/[:]/[:]/[:]/[:]z/*/[:]/*/[0]/*/[1]/*/[2]z/*/intz	/*/Symbolz/*/tuplez/*/__iter__?z/*/int|tuplez/*/Symbol|tuplez/*/int|Symbol|tuplez/*/int|__iter__?z/*/Symbol|__iter__?z/*/int|Symbol|__iter__?
/*/[0]/int)r   r   r   /*/[0]/Symbol/*/[0]/int[1:]/*/[0]/Symbol[1:]/Symbol/*/*/Symbol)r   r   r	   r
   r   r   r   r   expr r   \/var/www/html/zoom/venv/lib/python3.10/site-packages/sympy/simplify/tests/test_epathtools.pytest_epath_select   sB   *&*&&"""&&(&&
&:r   c                  C   s  t dtfdfdtdftfg} dd }td| tt dtfdgdtdftggks(J td| tt dtgdfdtdgtfgks>J td	| |t dtfdfdtdftd fgksVJ td
| t| ks`J td| |t dtfdfdtdftfgksvJ td| |t d dtd fdfdtd dftfgksJ td| |t dtfdfdtdftfgksJ td| |t dtd fdfdtd dftfgksJ tdt t t d |t d td  td  d ksJ tdttt d  tt t t  |ttt d d  tt d td  t  ksJ d S )Nr   r   r   r   c                 S   s   | d S )Nr   r   r   r   r   r   <lambda>8       z"test_epath_apply.<locals>.<lambda>r   r   r   r   r   	      r   r   r   r   r   )	r   r   r	   r
   r   listr   r   r   )r   funcr   r   r   test_epath_apply6   s0   ,,0,

8&*r%   c                   C   s   t djdks	J t t djdksJ ttdt du sJ tt ddks)J ttdd  ttdd  ttdd  ttdd  ttd	d  ttd
d  d S )Nr   TzEPath('/*/[0]')c                   S      t dS )N r   r   r   r   r   r   T   r    ztest_EPath.<locals>.<lambda>c                   S   r&   )N/r(   r   r   r   r   r   U   r    c                   S   r&   )Nz/|xr(   r   r   r   r   r   V   r    c                   S   r&   )Nz/[r(   r   r   r   r   r   W   r    c                   S   r&   )Nz/[0]%r(   r   r   r   r   r   X   r    c                   S   r&   )NSymbolr(   r   r   r   r   r   Z   r    )r   _path
isinstancer   reprr   
ValueErrorNotImplementedErrorr   r   r   r   
test_EPathM   s   r0   N)__doc__sympy.simplify.epathtoolsr   r   sympy.testing.pytestr   sympy.core.numbersr   (sympy.functions.elementary.trigonometricr   r   	sympy.abcr   r	   r
   r   r   r%   r0   r   r   r   r   <module>   s    +