a
    shz                     @   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   [/var/www/html/assistant/venv/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 )NZ
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    
(r0   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    

r1   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    

r4   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(   r/   finishedr   r   r   "test_warns_continues_after_warningX   s    

"r8   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    
r9   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   r@   r   r   r   _warn_sympy_deprecationv   s    rB   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   rB   r-   r.   r   r   r   +test_warns_deprecated_sympy_catches_warning~   s    $rE   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    
rF   c                	   C   s\   t t@ t  tdd W d    n1 s00    Y  W d    n1 sN0    Y  d S )N   rA   )r   r   r   rB   r   r   r   r   ,test_warns_deprecated_sympy_wrong_stacklevel   s    
rH   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 )Nr2   )r   r3   r   rB   r)   r,   r   r   r   r   6test_warns_deprecated_sympy_doesnt_hide_other_warnings   s    
rI   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   rD   r6   r   r   r   3test_warns_deprecated_sympy_continues_after_warning   s    "rJ   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    
(rL   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 rC   )r)   r*   r   r+   r-   r.   r   r   r   *test_ignore_does_not_raise_without_warning   s    
rM   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'   r2   rG   r   r)   r*   simplefilterr   r+   r,   r3   r-   
isinstancemessager   r.   r   r   r   !test_ignore_allows_other_warnings   s    

*rS   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 r5   rK   r6   r   r   r   #test_ignore_continues_after_warning   s    

"rT   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%   rN   r'   r2   r>   rO   )r/   Zwir   r   r   test_ignore_many_warnings   s    

*rU   )r>   )"r)   Zsympy.testing.pytestr   r   r   r   r   Zsympy.utilities.exceptionsr   r   r   r   r   r    r!   r#   r0   r1   r4   r8   r9   r<   r=   rB   rE   rF   rH   rI   rJ   rL   rM   rS   rT   rU   r   r   r   r   <module>   s6   	

	
