
    (phU                     0   S r SSKrSSKJr  SSKrSSKrSSKrSSKr " S S\R                  5      r	 " S S\R                  5      r
\R                  " SS	9S
 5       r\R                  R                  S5      \R                  R                  S 5       5       rg)z
Tests which scan for certain occurrences in the code, they may not find
all of these occurrences but should catch almost all. This file was adapted
from NumPy.
    N)Pathc                   &    \ rS rSrS rS rS rSrg)	ParseCall   c                     / U l         g Nls)selfs    Q/var/www/html/venv/lib/python3.13/site-packages/scipy/_lib/tests/test_warnings.py__init__ParseCall.__init__   s	        c                     [         R                  R                  X5        U R                  R	                  UR
                  5        g r   )astNodeVisitorgeneric_visitr
   appendattrr   nodes     r   visit_AttributeParseCall.visit_Attribute   s(    %%d1tyy!r   c                 N    U R                   R                  UR                  5        g r   )r
   r   idr   s     r   
visit_NameParseCall.visit_Name   s    twwr   r	   N)__name__
__module____qualname____firstlineno__r   r   r   __static_attributes__ r   r   r   r      s    " r   r   c                   .   ^  \ rS rSrU 4S jrS rSrU =r$ )	FindFuncs   c                 J   > [         TU ]  5         Xl        / U l        / U l        g r   )superr   _FindFuncs__filenamebad_filtersbad_stacklevels)r   filename	__class__s     r   r   FindFuncs.__init__   s#    "!r   c                    [        5       nUR                  UR                  5        [        R                  R                  X5        UR                  S   S:X  d  UR                  S   S:X  a  UR                  S   ==[        R                  S` =b  u   n  UR                  nOK    =[        R                  S` =b&  u   nSR                  S UR                   5       5      nO     [        S5      eUS	:X  a4  U R                  R                  U R                    S
UR"                   35        UR                  S   S:X  a  [%        UR                  5      S:X  d  UR                  S   S:X  a  U R                   S:X  a  g [%        UR                  5      S:X  a  g UR&                   Vs1 s H  ofR(                  iM     nnSU;  a5  U R*                  R                  U R                    S
UR"                   35        g g g g s  snf )Nsimplefilterfilterwarningsr   r#    c              3   |   #    U  H2  n[        U[        R                  5      (       d  M$  UR                  v   M4     g 7fr   )
isinstancer   Constantvalue).0xs     r   	<genexpr>'FindFuncs.visit_Call.<locals>.<genexpr>3   s&      &)2AjCLL6Qs   #<<zunknown ast node typeignore:warn   warningsz_lib/tests/test_warnings.py   
stacklevel)r   visitfuncr   r   r   r
   argsr6   r7   	JoinedStrjoinvalues
ValueErrorr*   r   r)   linenolenkeywordsargr+   )r   r   pcargtextjskwrF   s           r   
visit_CallFindFuncs.visit_Call%   s   K			%%d1448~%b5E)E))A,(S\\^(ggG )*S]]_* !gg &)+& G	 + $%<==("  '''q68 448vADD	Q!$$r(j"8"?? 499~"%)]]3]rFF]D34'$$++'q68 ( #9  4s   G2)
__filenamer*   r+   )r   r   r    r!   r   rT   r"   __classcell__)r-   s   @r   r%   r%      s    "%8 %8r   r%   session)scopec                     [        [        R                  5      R                  n / n/ nU R	                  S5       H  n[
        R                  " [        U5      5       n[        R                  " UR                  5       [        U5      S9n[        UR                  U 5      5      nUR                  U5        UR                  UR                  5        UR                  UR                   5        S S S 5        M     X4$ ! , (       d  f       M  = f)Nz*.py)r,   )r   scipy__file__parentrglobtokenizeopenstrr   parsereadr%   relative_torD   extendr*   r+   )baser*   r+   pathfiletreefinders          r   warning_callsrk   M   s     &&DKO

6" ]]3t9%99TYY[3t9=Dt//56FLLv112""6#9#9: &% # '' &%s   BC88
D	(   c                 z   U u  p[         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS	5      [         R                  R                  S
S5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SS5      [         R                  R                  SSS5      [         R                  R                  SS5      [         R                  R                  S
SSS5      S4nU Vs/ s H  oDR                  S5      S   U;  d  M  UPM      nnU(       a)  [	        SR                  SR                  U5      5      5      eg s  snf )Ndatasetsz_fetchers.pyz__init__.pyoptimizez_optimize.pyz_constraints.pyz_nnls.pysignalz
_ltisys.pysparsespecialz	_basic.pystatsz_discrete_distns.pyz_continuous_distns.pyz_binned_statistic.pyz_stats_py.pytestsztest_axis_nan_policy.py_libz_util.pylinalg_dsolvezlinsolve.pyzconftest.pyr=   r   zxwarning ignore filter should not be used, instead, use
numpy.testing.suppress_warnings (in tests only);
found in:
    {}z
    )osrg   rH   splitAssertionErrorformat)rk   r*   r+   allowed_filtersitems        r   test_warning_calls_filtersr~   b   s    $1 K 	Z0
Z/
Z0
Z!23
Z,
X|,
X}-
Y,
W34
W56
W45
Wn-
Wg'@A
VZ(
XxMB!O$ %0 $KD::c?13E"4#4KK $   &k*!,- 	- $s    H8?H8)__doc__rx   pathlibr   r   r_   r[   pytestr   r   r%   fixturerk   mark	fail_slowslowr~   r#   r   r   <module>r      s    
  
   	  	 ,8 ,8^ i ( !(( r$-  $-r   