a
    lhz                     @   s   d dl Z d dlmZmZmZmZmZ d dlmZ dd Z	dd Z
dd	 Zd
d Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zd7d!d"Zd#d$ Zd%d& Zd'd( Zd)d* Zd+d, Zd-d. Zd/d0 Zd1d2 Zd3d4 Z d5d6 Z!dS )8    N)raiseswarnsignore_warningswarns_deprecated_sympyFailedsympy_deprecation_warningc                  C   s   dd } t t|  d S )Nc                   S   s
   t  d S N
ValueError r   r   M/var/www/auris/lib/python3.9/site-packages/sympy/testing/tests/test_pytest.pyf   s    z5test_expected_exception_is_silent_callable.<locals>.fr   r   )r   r   r   r   *test_expected_exception_is_silent_callable   s    r   c               
   C   sT   zt tdd  dsJ W n4 tyN }  zdt| v s:J W Y d } ~ n
d } ~ 0 0 d S )Nc                   S   s   dS )N   r   r   r   r   r   <lambda>       zItest_lack_of_exception_triggers_AssertionError_callable.<locals>.<lambda>FDID NOT RAISEr   	Exceptionr   strer   r   r   7test_lack_of_exception_triggers_AssertionError_callable   s
    r   c               
   C   sX   dd } zt t|  dsJ W n4 tyR } zt|dks>J W Y d }~n
d }~0 0 d S )Nc                   S   s   t dd S )Nsome error messager
   r   r   r   r   r      s    z?test_unexpected_exception_is_passed_through_callable.<locals>.fFr   r   	TypeErrorr   r   )r   r   r   r   r   4test_unexpected_exception_is_passed_through_callable   s    
r   c                   C   s2   t t t W d    n1 s$0    Y  d S r	   r   r   r   r   r   &test_expected_exception_is_silent_with&   s    
r   c               
   C   sn   z4t t W d    n1 s 0    Y  ds2J W n4 tyh }  zdt| v sTJ W Y d } ~ n
d } ~ 0 0 d S )NFr   r   r   r   r   r   3test_lack_of_exception_triggers_AssertionError_with+   s    
r    c               
   C   sv   z<t t tdW d    n1 s(0    Y  ds:J W n4 typ }  zt| dks\J W Y d } ~ n
d } ~ 0 0 d S )Nr   Fr   r   r   r   r   0test_unexpected_exception_is_passed_through_with4   s    
&r!   c                   C   s   t tdd  d S )Nc                   S   s
   t ddS )N
irrelevant*   )r   r   r   r   r   r   A   r   zCtest_second_argument_should_be_callable_or_string.<locals>.<lambda>)r   r   r   r   r   r   1test_second_argument_should_be_callable_or_string@   s    r$   c               	   C   sr   t jddR} tt t d W d    n1 s60    Y  t| dksPJ W d    n1 sd0    Y  d S NTrecordthis is the warning messager   warningscatch_warningsr   UserWarningwarnlenwr   r   r   test_warns_catches_warningD   s    
(r1   c                	   C   sT   t t8 tt W d    n1 s(0    Y  W d    n1 sF0    Y  d S r	   )r   r   r   r,   r   r   r   r   !test_warns_raises_without_warningK   s    

r2   c                	   C   sl   t tP tt( tdt tdt W d    n1 s@0    Y  W d    n1 s^0    Y  d S )Nr(   this is the other message)r   RuntimeWarningr   r,   r*   r-   r   r   r   r   test_warns_hides_other_warningsQ   s    

r5   c               	   C   s   t jddb} d}tt t d d}W d    n1 s>0    Y  |sPJ t| dks`J W d    n1 st0    Y  d S NTr&   Fr(   r   r)   r0   finishedr   r   r   "test_warns_continues_after_warningX   s    

"r9   c                   C   sD   t t( tdt tdt W d    n1 s60    Y  d S )Nr(   z!this is the other warning message)r   r,   r*   r-   r   r   r   r   test_warns_many_warningsb   s    
r:   c               	   C   sx   t jddX} ttdd t dt W d    n1 s<0    Y  t| dksVJ W d    n1 sj0    Y  d S )NTr&   r(   matchr   r)   r/   r   r   r   test_warns_match_matchingh   s    *r=   c               
   C   s   t jdd} ttH ttdd t dt W d    n1 sF0    Y  W d    n1 sd0    Y  t| dks~J W d    n1 s0    Y  d S )NTr&   r(   r;   z(this is not the expected warning messager   )r*   r+   r   r   r   r,   r-   r.   r/   r   r   r   test_warns_match_non_matchingo   s
    
Hr>      c                 C   s   t ddd| d d S )Nfeaturezactive-deprecationsz0.0.0)Zactive_deprecations_targetZdeprecated_since_version
stacklevelr   rA   r   r   r   _warn_sympy_deprecationv   s    rC   c               	   C   sl   t jddL} t  t  W d    n1 s00    Y  t| dksJJ W d    n1 s^0    Y  d S NTr&   r   r*   r+   r   rC   r.   r/   r   r   r   +test_warns_deprecated_sympy_catches_warning~   s    $rF   c                	   C   sR   t t6 t  W d    n1 s&0    Y  W d    n1 sD0    Y  d S r	   )r   r   r   r   r   r   r   2test_warns_deprecated_sympy_raises_without_warning   s    
rG   c                	   C   s\   t t@ t  tdd W d    n1 s00    Y  W d    n1 sN0    Y  d S )N   rB   )r   r   r   rC   r   r   r   r   ,test_warns_deprecated_sympy_wrong_stacklevel   s    
rI   c                	   C   sd   t tH t " t  tdt W d    n1 s80    Y  W d    n1 sV0    Y  d S )Nr3   )r   r4   r   rC   r*   r-   r   r   r   r   6test_warns_deprecated_sympy_doesnt_hide_other_warnings   s    
rJ   c               	   C   s|   t jdd\} d}t  t  d}W d    n1 s80    Y  |sJJ t| dksZJ W d    n1 sn0    Y  d S )NTr&   Fr   rE   r7   r   r   r   3test_warns_deprecated_sympy_continues_after_warning   s    "rK   c               	   C   sr   t jddR} tt t d W d    n1 s60    Y  t| dksPJ W d    n1 sd0    Y  d S r%   r*   r+   r   r,   r-   r.   r/   r   r   r   test_ignore_ignores_warning   s    
(rM   c               	   C   sh   t jddH} tt W d    n1 s,0    Y  t| dksFJ W d    n1 sZ0    Y  d S rD   )r*   r+   r   r,   r.   r/   r   r   r   *test_ignore_does_not_raise_without_warning   s    
rN   c               	   C   s   t jdd} t d tt( t dt t dt W d    n1 sN0    Y  t| dkshJ t| d j	ts|J t
| d j	dksJ W d    n1 s0    Y  d S )NTr&   alwaysr(   r3   rH   r   r*   r+   simplefilterr   r,   r-   r4   r.   
isinstancemessager   r/   r   r   r   !test_ignore_allows_other_warnings   s    

*rT   c               	   C   s   t jddb} d}tt t d d}W d    n1 s>0    Y  |sPJ t| dks`J W d    n1 st0    Y  d S r6   rL   r7   r   r   r   #test_ignore_continues_after_warning   s    

"rU   c               	   C   s   t jdd} t d ttL t dt t dt t dt t dt t dt W d    n1 sr0    Y  t| dksJ | D ]&}t|j	tsJ t
|j	dksJ qW d    n1 s0    Y  d S )NTr&   rO   r(   r3   r?   rP   )r0   Zwir   r   r   test_ignore_many_warnings   s    

*rV   )r?   )"r*   Zsympy.testing.pytestr   r   r   r   r   Zsympy.utilities.exceptionsr   r   r   r   r   r    r!   r$   r1   r2   r5   r9   r:   r=   r>   rC   rF   rG   rI   rJ   rK   rM   rN   rT   rU   rV   r   r   r   r   <module>   s6   	

	
