
    +g*+                        S SK Jr  S SKrS SKrS SKrS SKJr  S SKrSSK	J
r
Jr  SSK7  SSKJrJrJr  SS	KJr  \(       a  S S
KJr  SS jrSS jrSS jrSS jrSS jrSS jrSS jrSS jrg)    )annotationsN)TYPE_CHECKING   )_coresocket)*)assert_checkpointscheck_half_closeable_streamwait_all_tasks_blocked   )setsockopt_tests)Sequencec                 V  #    [         R                  " 5       u  pU    U   [        R                  " [        5         [        U 5        S S S 5        S S S 5        S S S 5        [        R                  " [        R                  S9 n[        R                  " [        SS9   [        U5        S S S 5        S S S 5        [        R                  " 5       u  p4U   U   [        U5      nUR                  UL d   e S S S 5        S S S 5        [        R                  " 5        nUR                  S5      I S h  vN   UR                  S5        [        R                  " 5        nUR                  UR                  5       5      I S h  vN   [        U5      nUR                  [        R                  [        R                   5      (       d   eUR#                  [        R                  [        R                   S5        UR                  [        R                  [        R                   5      (       a   eUR                  [        R                  [        R                   S5      n[%        U[&        5      (       d   e[)        U5        S S S 5        S S S 5        g ! , (       d  f       GND= f! , (       d  f       GNN= f! , (       d  f       GNX= f! , (       d  f       GN= f! , (       d  f       GN$= f! , (       d  f       GN= f! , (       d  f       GN= f GN GN! , (       d  f       N= f! , (       d  f       g = f7f)Ntypez,^SocketStream requires a SOCK_STREAM socket$matchz	127.0.0.1r   r   F)stdlib_socket
socketpairpytestraises	TypeErrorSocketStreamtsocketr   
SOCK_DGRAM
ValueErrorbindlistenconnectgetsockname
getsockoptIPPROTO_TCPTCP_NODELAY
setsockopt
isinstancebytesr   )	stdlib_astdlib_bsockabslisten_sockclient_sockress	            i/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/trio/_tests/test_highlevel_socket.pytest_SocketStream_basicsr2      s    &113H	8]]9%" & 
 
W//	0D]]A

 
 
1 DA	
AOxx1}}  
	[/0001^^%%k&=&=&?@@@[)A << 3 3W5H5HIIIILL,,g.A.A5I||G$7$79L9LMMMM,,w22G4G4GKCc5))))Q  
	) &% 8
 
 
1	0 A 	1 A  
	s   L)J'JJJJ'*L) KJ9&K.!L)K/K0K/8L)L*L+*L#L8L9C9L2L:	L)
JJ
J$	J''
J61L)9
K	K
KL)
K,	'K//
K>9L)LL
L	L
L&"L)c            	       ^^^#    Sm[         R                  " 5       u  pU    U   [        U 5      m[        U5      mSUU4S jjnSUU4S jjn[        R                  " 5        IS h  vN nUR                  U5        UR                  U5        S S S 5      IS h  vN   TR                  S5      I S h  vN   TR                  S5      I S h  vN S:X  d   eTR                  5       I S h  vN   TR                  S5      I S h  vN S:X  d   e S S S 5        S S S 5        g  N N! , IS h  vN  (       d  f       N= f N Ns NW N@! , (       d  f       N== f! , (       d  f       g = f7f)Ni c                 v   >#    [        T5      n TR                  U 5      I S h  vN   U [        T5      -  n g  N7fN)	bytearraysend_allr'   )dataBIGr+   s    r1   sender*test_SocketStream_send_all.<locals>.senderN   s6     S>D**T""" E#JD #s    979c                    >#    [        5       I S h  vN   Sn U T:  a-  U [        TR                  T5      I S h  vN 5      -  n U T:  a  M-  U T:X  d   eg  NB N7f)Nr   )r   lenreceive_some)nbytesr9   r,   s    r1   receiver,test_SocketStream_send_all.<locals>.receiverf   sX     (***F3,#ANN3$7788 3,S= =	 + 8s%   AA&AA
A
AA   e
       returnNone)	r   r   r   r   open_nursery
start_soonr7   r>   send_eof)a_sockb_sockr:   r@   nurseryr9   r+   r,   s        @@@r1   test_SocketStream_send_allrN   C   s    
C'')NF	  
		 		0	! 	! %%''7v&x( (' jj^^B''4///jjl^^B''3...a N (''' 	''a s   E&EAE&D
'E*#D"ED E1D<2E
D>E(E )EE
EE	E&E E"D9(D+)D95E>E EE
E	E
E#E&c                  ^ #    SU 4S jjnSS jn[         R                  " 5        IS h  vN nUR                  U5        UR                  X#5        S S S 5      IS h  vN   g  N7 N! , IS h  vN  (       d  f       g = f7f)Nc                 N   >#     T R                  SS-  5      I S h  vN   M   N7f)N   xi'  )r7   )r-   s   r1   r:   fill_stream.<locals>.sender{   s'     **TE\*** *s   %#%c                h   #    [        5       I S h  vN   U R                  R                  5         g  N7fr5   )r   cancel_scopecancel)rM   s    r1   waiterfill_stream.<locals>.waiter   s(     $&&&##% 	's   20 2rE   )rM   z_core.NurseryrF   rG   )r   rH   rI   )r-   r:   rV   rM   s   `   r1   fill_streamrX   z   sS     +& !!##w6"6+ $#####sD   'B A"B #A&B A$B $B &A=,A/-A=9B c                 T   ^#    SS jmSU4S jjn [        TU 5      I S h  vN   g  N7f)Nc                 d   #    [         R                  " 5       u  p[        U 5      [        U5      4$ 7fr5   )r   r   r   )leftrights     r1   stream_maker/test_SocketStream_generic.<locals>.stream_maker   s,      ((*D!<#666s   .0c                    >#    T" 5       I S h  vN u  p[        U 5      I S h  vN   [        U5      I S h  vN   X4$  N/ N N7fr5   )rX   )r[   r\   r]   s     r1   clogged_stream_maker7test_SocketStream_generic.<locals>.clogged_stream_maker   sA     (N*$%   { + s.   A>AA AAA AA)rF   z!tuple[SocketStream, SocketStream])r
   )r`   r]   s    @r1   test_SocketStream_genericrb      s#     7 &l4H
IIIs   (&(c                   #    [         R                  " 5        n U R                  S5        U R                  S5        [        R
                  " [        5         [        U 5        S S S 5        S S S 5        [        R                  " [        R                  S9 n U R                  S5      I S h  vN   [        R
                  " [        SS9 n[        U 5        S S S 5        WR                  S5        S S S 5        [        R                  S:w  au  [        R                  " 5        n U R                  S5      I S h  vN   [        R
                  " [        SS9 n[        U 5        S S S 5        WR                  S	5        S S S 5        [        R                  " 5       nUR                  S5      I S h  vN   UR                  S5        [        U5      nUR                  UL d   e[        R                  " 5       nUR                  UR                  5       5      I S h  vN   [!        5          UR#                  5       I S h  vN nS S S 5        [%        W[&        5      (       d   eUR                  R                  5       UR                  5       :X  d   eUR                  R)                  5       UR                  5       :X  d   e[!        5          UR+                  5       I S h  vN   S S S 5        [!        5          UR+                  5       I S h  vN   S S S 5        [!        5          [        R
                  " [,        R.                  5         UR#                  5       I S h  vN   S S S 5        S S S 5        UR1                  5         UR+                  5       I S h  vN   g ! , (       d  f       GN.= f! , (       d  f       GN8= f GN! , (       d  f       GN= f! , (       d  f       GN= f GN! , (       d  f       GN= f! , (       d  f       GN{= f GNU GN GN! , (       d  f       GN= f GNF! , (       d  f       GNK= f GN0! , (       d  f       GN5= f N! , (       d  f       N= f! , (       d  f       GN= f N7f)
Nr   rC   r   z.^SocketListener requires a SOCK_STREAM socket$r   z.*SOCK_STREAMdarwinz,^SocketListener requires a listening socket$z.*listen)r   r   r   r   r   r   r   SocketListenerr   r   r   r   sysplatformr    r!   r	   acceptr&   r   getpeernameacloser   ClosedResourceErrorclose)r-   excinfor.   listenerr/   server_streams         r1   test_SocketListenerrp      s    				1	 	]]9%1 & 
  
W//	0Aff%&&&]]C
 1	

 	&' 
1 ||x^^&&)***E q!	
 MM+&  .."K


+
,,,rk*H??k))).."K


k557
888		&oo// 
m\2222++-1H1H1JJJJ++-1H1H1JJJJ		oo 
 
	oo 
 
	]]5445//### 6 
 



   g &% 
 	 	'
 
 
1	0 +   - 9/ 
	 	  
	 	  
	
 $ 65 
	
 !s  Q&=NN!N)*Q&O(N,)ON/O+1Q&O(1O2O(OO(41Q&%O:&A(Q&O=Q&P1P 2P6BQ&;PPPQ&&P-:P*;P-?Q&%Q6Q
P?QQ+Q&Q$Q&
N	N
N)$Q&,O/
N>	9O
OQ&O(
O%	 O((
O72	Q&=Q& P
PQ&P
P'"Q&*P--
P<7Q&?Q
Q	Q
Q!	Q&c                   #    [         R                  " 5       n U R                  S5      I S h  vN   U R                  S5        [	        U 5      nU R                  5         [        5          [        R                  " [        R                  5         UR                  5       I S h  vN   S S S 5        S S S 5        g  N N! , (       d  f       N= f! , (       d  f       g = f7f)Nr   rC   )r   r   r   r   re   rl   r	   r   r   r   rk   rh   )r.   rn   s     r1   +test_SocketListener_socket_closed_underfootrr      s     .."K


+
,,,rk*H  
	]]5445//### 6 
	 - $ 65 
	sQ   *CB6:C'%CB: B8!B:%C-
C8B::
C	C
CCc                   #     " S S[         R                  5      n U " / 5      nU " [        [        R                  S5      [        [        R
                  S5      [        [        R                  S5      U[        [        R                  S5      [        [        R                  S5      [        [        R                  S5      U/5      n[        U5      n[        5          UR                  5       I S h  vN nUR                  UL d   e S S S 5        [        R                  S	[        R                  S
[        R                  S0R                  5        Ho  u  pV[        5          [        R                   " [        US9 nUR                  5       I S h  vN   S S S 5        WR"                  R                  U:X  d   e S S S 5        Mq     [        5          UR                  5       I S h  vN nUR                  UL d   e S S S 5        g  GN! , (       d  f       GN= f N! , (       d  f       N= f! , (       d  f       M  = f NY! , (       d  f       g = f7f)Nc                     \ rS rSrSS jr\R                  r\SS j5       r	\        SS j5       r	 S       SS jjr	\        SS j5       r
\          SS j5       r
 S         SS	 jjr
SS
 jrSrg)5test_SocketListener_accept_errors.<locals>.FakeSocket   c                $    [        U5      U l        g r5   )iter_events)selfeventss     r1   __init__>test_SocketListener_accept_errors.<locals>.FakeSocket.__init__   s    <DLrD   c                   g r5    )rz   leveloptnames      r1   r"   @test_SocketListener_accept_errors.<locals>.FakeSocket.getsockopt   s    BErD   c                   g r5   r   rz   r   r   buflens       r1   r"   r      s     rD   Nc                   g)NTr   r   s       r1   r"   r      s     rD   c                   g r5   r   )rz   r   r   values       r1   r%   @test_SocketListener_accept_errors.<locals>.FakeSocket.setsockopt   s     rD   c                   g r5   r   rz   r   r   r   optlens        r1   r%   r   	  s     rD   c                   g r5   r   r   s        r1   r%   r     s     rD   c                   #    [         R                  " 5       I S h  vN   [        U R                  5      n[	        U[
        5      (       a  UeUS 4$  N47fr5   )r   
checkpointnextry   r&   BaseException)rz   events     r1   rh   <test_SocketListener_accept_errors.<locals>.FakeSocket.accept  sF     ""$$$&E%//d{" %s   AA5A)ry   )r{   z$Sequence[SocketType | BaseException]rF   rG   )r   intr   r   rF   r   )r   r   r   r   r   r   rF   r'   r5   )r   r   r   r   r   
int | NonerF   zint | bytes)r   r   r   r   r   zint | BufferrF   rG   )
r   r   r   r   r   rG   r   r   rF   rG   )
r   r   r   r   r   zint | Buffer | Noner   r   rF   rG   )rF   ztuple[SocketType, object])__name__
__module____qualname____firstlineno__r|   r   SOCK_STREAMr   overloadr"   r%   rh   __static_attributes__r   rD   r1   
FakeSocketru      sS   	( "" 
E 
E		 	 		
 	 	 
	 "&	 	 		
 	 	 
	 	 		
  	 	 
	 
	 	 		
 	 	 	 
	 "&	 	 		
 '	 	 		#rD   r   zConnection abortedzPermission deniedzBad protocolzOut of file descriptorsz$attempt to write to read-only memoryzout of buffersz$\[\w+ \d+\] Out of file descriptors$z1\[\w+ \d+\] attempt to write to read-only memory$z\[\w+ \d+\] out of buffers$r   )r   
SocketTypeOSErrorerrnoECONNABORTEDEPERMEPROTOEMFILEEFAULTENOBUFSre   r	   rh   r   itemsr   r   r   )r   fake_server_sockfake_listen_sockrn   streamcoder   rm   s           r1   !test_SocketListener_accept_errorsr      s    ?#W'' ?#B ""~!E&&(<=EKK!45ELL.1ELL";<ELL"HIEMM#34		
 ./H		((}} 0000 

 	=J5 eg	
  !we4oo''' 5==&&$... "! 
	((}} 0000 
	 ) 
	 ( 54 "! ) 
	s   CI
H -G=.H AI
H%5H	H

H$H%3I
	H9H7H94	I
=H  
H
I
H
H"H%%
H4	/I
7H99
II
c                   #    [         R                  " 5       u  pU    U   UR                  S5      I S h  vN   UR                  5         [	        U 5      nUR                  S5      I S h  vN S:X  d   eUR                  S5      I S h  vN S:X  d   e S S S 5        S S S 5        g  No N= N ! , (       d  f       N= f! , (       d  f       g = f7f)NrQ   r   rD   )r   r   sendrl   r   r>   )sock_asock_br   s      r1   5test_socket_stream_works_when_peer_has_already_closedr   I  s     '')NF	kk$f%((++t333((++s222  ,+ sg   CB;B*B$3B*(B&)B*B(
B*B;	C$B*&B*(B**
B8	4B;;
C	CrE   )r-   r   rF   rG   )
__future__r   r   r   r   rf   typingr   r    r   r   _highlevel_sockettestingr	   r
   r   test_socketr   collections.abcr   r2   rN   rX   rb   rp   rr   r   r   r   rD   r1   <module>r      s`    "   
    ' ! 
 *() X4/n,J"8!v$c1L3rD   