
    i0Z              	      B   d dl mZ d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlmZmZ d dl
mZ d dlmZmZmZ d dlZd dlZd dlZd dlZd dlmZmZ ddlmZmZ dd	lmZ erd d
lm Z m!Z! da"	 d dl#mZ$ d'dZ&d'dZ'd(dZ(	 	 	 	 	 	 d)dZ) e* e)ed            Z+ e* e)ed            Z,e+D  cg c]  } | jZ                   c} Z.ej^                  j`                  ej^                  jc                  e	jd                  dd dk(  d      ej^                  jc                  e	jd                  jf                  dk(  d      ej^                  ji                  de.      ej^                  ji                  dg d      ej^                  jk                  d      d*d                                          Z6eej^                  j`                  ej^                  jc                  e	jd                  jf                  dk(  d      ej^                  ji                  de.      ej^                  ji                  ddd g      	 	 	 	 	 	 	 	 d+d!                                   Z7d'd"Z8d'd#Z9ej^                  jc                   e:ejv                  d$       d%      d'd&       Z<y# e%$ r eZ$Y w xY wc c} w ),    )annotationsN)PathPurePath)
ModuleType)TYPE_CHECKINGAnyProtocol)RUN_SLOWskip_if_optional_else_raise   )_core_util)slow)IterableIteratorF)r	   c                     	 ddl m}  t        s  g d      }|d   rJ |d   rJ day y # t        $ r}t        |       Y d }~;d }~ww xY w)Nr   )run)z--config-file=z--cache-dir=./.mypy_cachez--no-error-summaryz-czimport trio   T)mypy.apir   ImportErrorr   mypy_cache_updated)r   errorresults      T/var/www/html/BatchJob/venv/lib/python3.12/site-packages/trio/_tests/test_exports.py_ensure_mypy_cache_updatedr   '   sb    + 
  
 !9}!9}! 	  +#E**+s   * 	AAAc                 2   t         t         j                  t         j                  g} t        t              D ]`  }|j                  d      rd}| D ]2  }|t        |      v st        ||      t        t        |      u s.|dz  }4 t        ||       |dk(  r`J  y )N_r   r   )triolowleveltestingdirr   
startswithgetattrprint)sourcessymbolfoundsources       r    test_core_is_properly_reexportedr)   @   s     T]]DLL1Ge* S! 	FV$)@GE * 
	 	fezz    c                R    	 t        j                  d| f       y# t        $ r Y yw xY w)z&Check if a class cannot be subclassed.SubclassTesterFT)types	new_class	TypeError)clss    r   class_is_finalr1   R   s1    (3&1   s    	&&c              #  $  K   |  | j                   j                         D ]i  \  }}|j                  d      r|rt        |t              s+|j
                  j                  | j
                        sQ|| u rVt        ||      E d {    k y 7 wNr   )__dict__itemsr"   
isinstancer   __name__iter_modules)moduleonly_publicnameclass_s       r   r8   r8   ]   s      L--/ 	5f??3K&*-))&//:V444	5 	5s   BBBBT)r:      )      r   betaz several tools don't support 3.14)reasonalphaz<skip static introspection tools on Python dev/alpha releasesmodnametool)pylintjedimypypyright_verifytypesz>ignore:module 'sre_constants' is deprecated:DeprecationWarningc                   t        j                  |      }d&d} |t        |            }|dk(  r|j                  d       t        j
                  D ]1  }t        ||d       t        t        |      u s!|j                  |       3 | dk(  rB	 ddlm	}         }	|j                  J |	j                  |j                  |      }
 ||
      }no| dk(  rpt        j                  j                   d	k7  rt#        j$                  d
       	 dd l}j)                  d| d| d      }|j+                         } |d |D              }n| dk(  rMt        j                  j                   d	k7  rt#        j$                  d       t,        st#        j$                  d       t/        j0                         dz  }t3                t5        |j7                  d            }|dz   j9                  dd      \  }}|d d }|r||z  n|}|j;                         r|dz  }n||dz   z  }|j=                         sJ |j?                         sJ |jA                         5 }tC        jD                  |jG                               } |d |d   jI                         D              }d d d        n| dk(  rt,        st#        j$                  d       	 dd l%}dd l&}|jO                  dd| dgd       }tC        jD                  |jP                        }|d!   d   D ch c]*  }|d"   jS                  |      r|d"   tU        |      dz   d  , }}n
tW               |z
  }|dhz  }|rCtY        |  d#| d$       tY                t[        |      D ]  }tY        d%|         tW               y # t        $ r}t        |       Y d }~d }~ww xY w# t        $ r}t        |       Y d }~d }~ww xY w# 1 sw Y   xY w# t        $ r}t        |       Y d }~=d }~ww xY wc c}w )'Nsymbolsc                P    | D ch c]  }|j                  d      r| c}S c c}w r3   r"   rJ   r&   s     r   no_underscoresz9test_static_tool_sees_all_symbols.<locals>.no_underscores   s#    %,K6F4E4Ec4JKKKs   ##r   testsrE   r   )PyLinterrF   cpythonjedi does not support pypyzimport ; .c              3  4   K   | ]  }|j                     y wNr;   .0cs     r   	<genexpr>z4test_static_tool_sees_all_symbols.<locals>.<genexpr>   s     %Baff%B   rG   mypy does not support pypyz$use --run-slow to check against mypy.mypy_cache*/trior   __init__.data.json
.data.jsonc              3  X   K   | ]"  \  }}|j                  d       s|d   dk(  r| $ yw)rT   kindGdefNrL   )rY   keyvalues      r   r[   z4test_static_tool_sees_all_symbols.<locals>.<genexpr>   s3      *C~~c*uV}/F *s   (*namesrH   z'use --run-slow to check against pyrightpyrightz--verifytypes=z--outputjsonT)capture_outputtypeCompletenessr;   z" can't see the following names in :z    rJ   zIterable[str]returnzset[str]).	importlibimport_moduler!   discard
__future__all_feature_namesr#   removepylint.lintrP   r   r   __file__get_astsysimplementationr;   pytestskiprF   Scriptcompleter
   r   cwdr   nextglobsplitis_direxistsis_fileopenjsonloadsreadr5   ri   
subprocessr   stdoutr"   lenAssertionErrorr$   sorted)rD   rC   tmp_pathr9   rN   runtime_namesr;   rP   r   linteraststatic_namesrF   scriptcompletionscache
trio_cacher   	mod_cache
cache_file
cache_jsonri   r   rescurrent_resultxmissing_namess                              r   !test_static_tool_sees_all_symbolsr   w   s   & $$W-FL #3v;/M &g& ,, '64&'*d*CC  &' x	/, ***nnV__g6%c*	""i/KK45	/
 wwir'!<=oo'%%Bk%BB	""i/KK45KK>?
]*"$%**X./
m**32
7#2,,3J(	!$88I"g&<=I!!!  """^^ 	JOO$56J) *",W"5";";"=* L	 	 
&	&KKAB	/ 	nn.	2NC  
 CJJ/ $$67	B
y##G, fIc'lQ&()
 
  "L0M gYM8	CD=) 	!DD- 	! k  	/'..	/  	/'..	/<	 	  	/'..	/
s[   N N. AO5O ?/O>	N+N&&N+.	O7OOO	O;%O66O;module_namerF   rG   c                Z   t         t        j                  |         }dLd}| dk(  r2t        j                  j
                  dk7  rt        j                  d       | dk(  r2t        j                  j
                  dk7  rt        j                  d       | dk(  rt        j                         dz  t                t        j                  d            }|}|d	z   j                  d	d
      \  }}|d d }|r||z  n|}|j                         r|dz  }n||dz   z  }|j                         sJ |j!                         sJ |j#                         5 }	t%        j&                  |	j)                               }
d d d        t*        j,                  dMfd       }i }|j.                  j1                         D ]  \  }}t3        |t4              s|dk(  r|t7        t8              v r/|dk(  r|dv r9t;        t7        t5        |                  h dz  }t5        |      t4        u r"|j=                  d       |j=                  d        |d t?        j@                  |      D              |z
  }| dk(  rC	 dd l!}jI                  d| d| d| d	      }|jK                         } |d |D              |z
  }n| dk(  r
d   |   }d|vsJ d        |d         }d|v sJ |d   } |d |jM                  dd       D              }|d!   d
d  D ]/  } ||      d   }| |d" |jM                  dd       D              z  }1 ||z  }ntO        d#      ||z
  }||z
  }| dk(  r6tP        |jR                  v r$t        jT                  d$k\  r|jW                  d%       | dk(  r6tP        |jR                  v r$t        jT                  d$k\  r|jW                  d&       | dk(  rTtY        jZ                  |      r?t]        |      }|D ch c]  }|j_                  d'      r| }}t]        |      |d
z
  k(  sJ tY        jZ                  |      r|jW                  d(       | dk(  rSt`        jb                  |jR                  v r7t        jT                  d)k\  r$t        jT                  d*k  r|jW                  d+       | dk(  r$|td        jf                  k(  r|jW                  d,       td        jh                  d-d.htd        jj                  d/d0htd        jl                  h d1td        jn                  d2htd        jp                  d3htd        jr                  d/htd        jt                  d/htd        jv                  jx                  d4d5htd        jv                  jz                  h d6i	}| dk(  r6||v r2t]        |      }|||   z  }t]        |      |t]        ||         z
  k(  sJ |td        j|                  k(  r"|jW                  d7       |jW                  d8       | dk(  rt        jT                  d$k\  r|td        jh                  td        j~                  td        j                  td        jn                  td        jr                  fv r"|jW                  d9       |jW                  d:       |td        jh                  td        j~                  fv r"|jW                  d;       |jW                  d<       |td        j                  td        j                  td        j                  fv r_|t        j.                  j                         z  }| dk(  rt        j                  d=k(  r|h d>z  }| dk(  rt        j                  d=k(  r|h d>z  }| dk(  rXt        jT                  d d? d@k(  rB|td        j                  td        j                  td        j                  fv r|jW                  dA       t        |t              r"|jW                  dB       |jW                  dC       t        jT                  d@k\  r&tY        jZ                  |      r|jW                  dD       t        jT                  d*k\  r"|j                  dE       |j                  dF       |s|s||dG|| d	| <    |r ddHlImI} t        dI|  dJ| dK        ||       |rJ y # 1 sw Y   xY w# tD        $ r}tG        |       Y d }~8d }~ww xY wc c}w )NNc                p    | D ch c]&  }|j                  d      r|j                  d      r|( c}S c c}w )Nr   __rL   rM   s     r   	no_hiddenz6test_static_tool_sees_class_members.<locals>.no_hidden  s?     "
%%c*v/@/@/F 
 	
 
s   +3rF   rQ   rR   rG   r]   r^   r_   rT   r   r`   ra   rb   c                   | j                  d      ^}}}t        	j                  d            }||z  }|j                         s||dz   z  }|r9|d d D ]  }||z  }	 ||d   z  }|j                         r|dz  }n!||d   dz   z  }n|j                         r|dz  }|j	                         5 }t        j                  |j                               d   |   cd d d        S # 1 sw Y   y xY w)NrT   z3.*/rb   r`   ra   rh   )r   r   r   r   r   r   r   r   )
r&   topnamerC   r;   versionr   piece
next_cachefr   s
            r   lookup_symbolz:test_static_tool_sees_class_members.<locals>.lookup_symbol0  s    &,ll3&7#Ggt5::f-.G')I##%#w'=>	$Sb\ 'E&I'&4
$$& *-A AI )WR[<-G HI!!#11	! ;Qzz!&&(+G4T:; ; ;s   .)C!!C*ztrio.socketztrio.testing)_RaisesGroup_Matcher>   __copy__	__final__	__order__	__slots____weakref____deepcopy____getstate____setstate____match_args____orig_bases____parameters____annotations____attrs_attrs____class_getitem____protocol_attrs____attrs_own_setattr____callable_proto_members_only____firstlineno____static_attributes__c              3  &   K   | ]	  }|d      yw)r   N )rY   r   s     r   r[   z6test_static_tool_sees_class_members.<locals>.<genexpr>t  s     ?qad?s   r   zfrom z import rS   c              3  4   K   | ]  }|j                     y wrV   rW   rX   s     r   r[   z6test_static_tool_sees_class_members.<locals>.<genexpr>  s     $AQVV$Ar\   rh   nodezpreviously this was an 'if' but it seems it's no longer possible for this cache to contain 'node', if this assert raises for you please let us know!	cross_refc              3  D   K   | ]  }|j                  d       r|  ywrT   NrL   rY   ks     r   r[   z6test_static_tool_sees_class_members.<locals>.<genexpr>  s       %S8I%     r   mroc              3  D   K   | ]  }|j                  d       r|  ywr   rL   r   s     r   r[   z6test_static_tool_sees_class_members.<locals>.<genexpr>  s       *ALL<MA*r   zunknown tool)r>      add_note	__notes__AttrsAttributes____attrs_props__)r>      )r>   r?   __signature__cancel_scopepeer_addressendpointsocketincoming_packets_buffer>   pidargsstdinstdiostderrr   transport_listenertransport_stream
close_hookreceive_some_hook>   r   send_all_hook"wait_send_all_might_not_block_hookreceive_streamsend_stream
__aenter__	__aexit__	__aiter__	__anext__win32>   groupowneris_mountr   )r>      with_segments__reversed____getnewargs____replace____annotate_func____annotations_cache__)missingextra)pprint
z$ can't see the following symbols in rl   rm   )r&   strrn   zdict[str, Any])KPUBLIC_MODULESPUBLIC_MODULE_NAMESindexrx   ry   r;   rz   r{   r   r~   r   r   r   r   r   r   r   r   r   r   r   	functools	lru_cacher4   r5   r6   typer!   stdlib_socketsetaddinspect
getmembersrF   r   r   r|   r}   getr   BaseException__mro__version_infort   attrshasr   endswithenumEnumr   NurseryDTLSChannelDTLSEndpointProcessSSLListener	SSLStreamSocketListenerSocketStreamr    MemoryReceiveStreamMemorySendStreamStapledStreamMemoryReceiveChannelMemorySendChannelWindowsPath	PosixPathr   keysplatform
issubclasstuplerq   r   r$   ) rD   r   r   r9   r   r   rC   r   r   r   r   r   errors
class_namer<   ignore_namesr   rF   r   r   r   r   cached_type_infor   r&   r   r   beforeeEXTRASr   r   s                                   @r   #test_static_tool_sees_class_membersr'     s
     /55kBCF
 v~#,,11Y>01v~#,,11Y>01v~
]*"$%**X./
m**32
7#2,,3J(	!$88I"g&<=I!!!  """^^ 	7JOO$56J	7 
			; 
	;( !#F$oo335 O
F&$'-'J#m:L,L .(Z;W-W 3tF|,- 1
 
, <4./45 ?G$6$6v$>??,N 	 6>3 [[}HZL:,aHF !//+K$$A[$AALPLV^)'2:>..f ff.,-=k-JK----#F+D$ %88GR0% L u+ab/ $V,V4	 *#xx4* ! 
 L(L !00,.}, FN/  G+NN:& FN/  G+LL%6>eii/ZF %M1QZZ8K-LQMEMu:!+++99VNN,- FN		V^^+  G+  7*LL) 6>f4LL( ~z:*CDLLO34NN/0(zLL,,|=P.QLL)) ,
 6>f.ZFVF^#Eu:#fVn*=!==== T'''LL)*LL' 6>c..'9  ))&&  ##  |,{+$**D,E,EFF{+{+dii!1!14>>BBx((--//Gv~#,,'"999v~#,,'"977 FN  !$/499d&6&6GGNN?+ fe$LL(NN+,w&599V+<NN=)w& OO/0OO34e"5Fk]!J<01YOf !4&<[MKLv:ve	7 	7\  3+E223n Ns0   
$a9$b'b(>b(9b	b%b  b%c                     t        t        j                        sJ t        D ]I  } | j                  j                         D ]*  }t        |t        j                        st        |      r*J  K y)z6Check all NoPublicConstructor classes are also @final.N)r1   r   NoPublicConstructorALL_MODULESr4   valuesr6   )r9   r<   s     r   test_nopublic_is_finalr,  !  s_    %33444 .oo,,. 	.F&%";";<%f---	..r*   c                 X   t        t              rJ t        t              sJ t        D ]  } | j                  j                         D ]  \  }}t        |t              s|j                  d      r)t        j                  |      r?t        |j                  v st        |j                  v rdt        |t              ru|t         j"                  j$                  u s|t         j&                  j(                  u r|t         j*                  u r|j-                  d      rt        |      rJ   y )Nr   
Statistics)r1   objectboolr   r4   r5   r6   r   r"   r  
isabstractr	   	__bases__Protocol_extr  r  r   abc
Instrumentr   
SocketTyper   r
  )r9   r;   r<   s      r   test_classes_are_finalr7  +  s    f%%%$   *"OO113 	*LD&fd+s# !!&)6+++|v?O?O/O &-0 ,,,$++:P:P0P "}}\*!&)))?	* *r*   trio_moddedzPytest plugin not installed.c                    t         D ]  } | j                  j                         D ]  }t        j                  |      st        |t        j                        r4t        j                  |      D cg c]S  }|j                  rE|j                  |j                  |j                  j                  di       j                  d      fvr|U }}|g k(  rJ |         yc c}w )a  Check whether we provide `alias` for all underscore prefixed attributes.

    Attrs always sets the `alias` attribute on fields, so a pytest plugin is used
    to monkeypatch `field()` to record whether an alias was defined in the metadata.
    See `_trio_check_attrs_aliases`.
    trio_original_argsaliasN)r   r4   r+  r  r	  r6   r   r)  fieldsinitr;  r;   metadatar  )r9   r<   attr
attributess       r   'test_pyright_recognizes_init_attributesrA  T  s     ! ,oo,,. 	,F99V$&%";";< "LL0
99::IIMM%%&:B?CCGL 
J 
 #+V+#%	,,
s   /AC)rn   None)r0   r   rn   r0  )r9   ztypes.ModuleTyper:   r0  rn   zIterator[types.ModuleType])rD   r   rC   r   r   r   rn   rB  )rD   r   r   r   r   r   rn   rB  )=rr   r   r  r   ro   r  r   r   r   rx   r-   pathlibr   r   r   typingr   r   r	   r  rz   r   trio.testingtrio._tests.pytest_pluginr
   r    r   r   _core._tests.tutilr   collections.abcr   r   r   typing_extensionsr3  r   r   r)   r1   r8   listr   r*  r7   r   markredistributors_should_skipskipifr  releaselevelparametrizefilterwarningsr   r'  r,  r7  hasattrfieldrA  )ms   0r   <module>rU     s   "        
  "  / /     K  %2 :
"2$555  5" l4T:;<%89+9:aqzz:  ''Ra..-   !!W,I   $78!RSDn	 T 9	 ($nb '' !!W,I   (;<&&!12Y
YY Y 
	Y 3 =	 ( Yx.%*R ]++)  ,	,k  LZ ;s   6J 6JJJ