
    Icg                         d Z ddlZddlmZ ddlZddlZddlZ G d dej                        Z G d dej                        Z	ej                  j                  d        Zy)	z
Tests which scan for certain occurrences in the code, they may not find
all of these occurrences but should catch almost all.
    N)Pathc                       e Zd Zd Zd Zd Zy)	ParseCallc                     g | _         y N)ls)selfs    T/var/www/html/bid-api/venv/lib/python3.12/site-packages/numpy/tests/test_warnings.py__init__zParseCall.__init__   s	        c                     t         j                  j                  | |       | j                  j	                  |j
                         y r   )astNodeVisitorgeneric_visitr   appendattrr	   nodes     r
   visit_AttributezParseCall.visit_Attribute   s*    %%dD1tyy!r   c                 N    | j                   j                  |j                         y r   )r   r   idr   s     r
   
visit_NamezParseCall.visit_Name   s    twwr   N)__name__
__module____qualname__r   r   r    r   r
   r   r      s    " r   r   c                   $     e Zd Z fdZd Z xZS )	FindFuncsc                 0    t         |           || _        y r   )superr   _FindFuncs__filename)r	   filename	__class__s     r
   r   zFindFuncs.__init__   s    "r   c                    t               }|j                  |j                         t        j                  j                  | |       |j                  d   dk(  s|j                  d   dk(  rK|j                  d   j                  dk(  r/t        dj                  | j                  |j                              |j                  d   dk(  rt        |j                        dk(  s|j                  d	   d
k(  rd| j                  k(  ry t        |j                        dk(  ry |j                  D ch c]  }|j                   }}d|v ry t        dj                  | j                  |j                              y y c c}w )Nsimplefilterfilterwarningsr   ignorezFwarnings should have an appropriate stacklevel; found in {} on line {}warn   warningsztesting/tests/test_warnings.py   
stacklevel)r   visitfuncr   r   r   r   argsvalueAssertionErrorformatr!   linenolenkeywordsarg)r	   r   pkwr1   s        r
   
visit_CallzFindFuncs.visit_Call   s=   K			%%dD1448~%b5E)Eyy|!!X-$$$*F4??DKK$HJ J 448vADD	Q!$$r(j"8/4??B 499~"%)]]3]rBFF]D3t#   &t DF F #9  4s   (E3)r   r   r   r   r;   __classcell__)r#   s   @r
   r   r      s    #Fr   r   c                     t        t        j                        j                  } | j	                  d      D ]  }| dz  |j
                  v r|| dz  k(  r|| dz  dz  k(  r*t        j                  t        |            5 }t        j                  |j                               }t        |      j                  |       d d d         y # 1 sw Y   xY w)Nz*.pytestingz__init__.pyrandom)r   numpy__file__parentrglobparentstokenizeopenstrr   parsereadr   r/   )basepathfiletrees       r
   test_warning_callsrN   :   s     &&D

6")t||+4-''4(?]22 ]]3t9%99TYY[)DdO!!$' &% # &%s   =>CC	)__doc__pytestpathlibr   r   rE   r@   r   r   r   markslowrN   r   r   r
   <module>rT      s\      
  	  	 F FD ( (r   