+
    BiW                     n   R t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RI	t	^ RI
t
^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ]P.                  R	8X  d   ]P0                  ! R
4      h^ RIt^ RIHt ^ RIHt R t]P>                  t R t!R t"R t#]PH                  ! ]	R4       ! R R]PJ                  4      4       t&]PH                  ! ]'! ]
R4      R4       ! R R]PJ                  4      4       t(]PH                  ! ]'! ]R4      R4       ! R R]PJ                  4      4       t) ! R R]PJ                  4      t* ! R R]PJ                  4      t+ ! R  R!]PJ                  4      t,]PZ                  ! 4        ! R" R#]P\                  4      4       t/]0R$8X  d   ]Pb                  ! 4        R# R# )%zTests for unix_events.py.N)_cleanup_tests)mock)support)	os_helper)socket_helper)wait_process)hashlib_helperwin32z	UNIX only)unix_events)utilsc                  D    \         P                  P                  R 4       R # N)asyncioevents_set_event_loop_policy     9/usr/lib/python3.14/test/test_asyncio/test_unix_events.pytearDownModuler       s    NN))$/r   c                     R V ,           # )   r   exitcodes   &r   EXITCODEr   '   s    8r   c                 R    ^T u;8:  d   ^D8:  g   M \        RV  24      hRV ,
          # )   zinvalid signum r   )AssertionError)signums   &r   SIGNALr   +   s+    "vh7886>r   c                 h    V P                   f   R # V P                   P                  4        R V n         R # r   )_pipeclose)	transports   &r   close_pipe_transportr#   1   s(     OOIOr   zSignals are not supportedc                   \  a a ] tR t^:t oV 3R ltR tR tR t]P                  ! R4      R 4       t
]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R	 4       t]P                  ! R4      ]P                  ! R
4      R 4       4       t]P                  ! R4      ]P                  ! R
4      R 4       4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      ]P                  ! R
4      R 4       4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      ]P                  ! R4      R 4       4       tRtVtV ;t# )SelectorEventLoopSignalTestsc                   < \         SV `  4        \        P                  ! 4       V n        V P                  V P                  4       R # r   supersetUpr   SelectorEventLooploopset_event_loopself	__class__s   &r   r)   "SelectorEventLoopSignalTests.setUp=   .    --/	DII&r   c                    V P                  \        V P                  P                  R 4       V P                  \        V P                  P                  \
        P                  ^,           4       R# )1N)assertRaises	TypeErrorr+   _check_signal
ValueErrorsignalNSIGr.   s   &r   test_check_signal.SelectorEventLoopSignalTests.test_check_signalB   sI    tyy..	5		//q	Br   c                f    V P                   P                  \        P                  ^,           4       R# )r   N)r+   _handle_signalr8   r9   r:   s   &r   test_handle_signal_no_handler:SelectorEventLoopSignalTests.test_handle_signal_no_handlerH   s    		  q1r   c                   \         P                  ! \        P                  ! 4       R\        P                  ! 4       R 7      pVP	                  4        WP
                  P                  \        P                  ^,           &   \        P                  ! 4       V P
                  n	        V P
                  P                  \        P                  ^,           4       V P
                  P                  P                  \        P                  ^,           4       R# )r+   Nr   )r   Handler   Mockcancelr+   _signal_handlersr8   r9   remove_signal_handlerr>   assert_called_with)r.   hs   & r   $test_handle_signal_cancelled_handlerASelectorEventLoopSignalTests.test_handle_signal_cancelled_handlerK   s    NN499; $		-	
67		""6;;?3*.))+		'		  q1		''::6;;?Kr   zasyncio.unix_events.signalc                    \         P                  Vn        \         P                  Vn        \        VP                  n        V P                  \        V P                  P                  \         P                  R  4       R# )c                      R # Tr   r   r   r   <lambda>RSelectorEventLoopSignalTests.test_add_signal_handler_setup_error.<locals>.<lambda>]       4r   N)r8   r9   valid_signalsr7   set_wakeup_fdside_effectr4   RuntimeErrorr+   add_signal_handlerSIGINTr.   m_signals   &&r   #test_add_signal_handler_setup_error@SelectorEventLoopSignalTests.test_add_signal_handler_setup_errorT   sP    !'!5!5-7*II((MM<	)r   c                   \         P                  Vn        R  pTpV! 4       pV P                  VP                  4       W43 F>  pV P	                  \
        RV P                  P                  \         P                  V4       K@  	  R# )c                     "   R # 5ir   r   r   r   r   simple_coroutine^SelectorEventLoopSignalTests.test_add_signal_handler_coroutine_error.<locals>.simple_coroutinec   s     s   z1coroutines cannot be used with add_signal_handlerN)	r8   r9   
addCleanupr!   assertRaisesRegexr5   r+   rV   rW   )r.   rY   r^   	coro_funccoro_objfuncs   &&    r   'test_add_signal_handler_coroutine_errorDSelectorEventLoopSignalTests.test_add_signal_handler_coroutine_error_   sg    	 %	;')D""N		,,t% *r   c                   \         P                  Vn        \         P                  Vn        R  pV P                  P	                  \         P
                  V4       V P                  P                  P                  \         P
                  4      pV P                  V\        P                  4       V P                  VP                  V4       R# )c                      R # rN   r   r   r   r   rO   FSelectorEventLoopSignalTests.test_add_signal_handler.<locals>.<lambda>u       Tr   N)r8   r9   rR   r+   rV   SIGHUPrF   getassertIsInstancer   rC   assertEqual	_callback)r.   rY   cbrI   s   &&  r   test_add_signal_handler4SelectorEventLoopSignalTests.test_add_signal_handlerp   s~    !'!5!5		$$V]]B7II&&**6==9a0b)r   c                   \         P                  Vn        \         P                  Vn        R  pW!n         ! R R\        4      pW1P                   n        V P                  VV P                  P                  \         P                  R 4       R# )c                 (    V R8X  d   \        4       hR# )r   N)r7   )fds   &r   rS   YSelectorEventLoopSignalTests.test_add_signal_handler_install_error.<locals>.set_wakeup_fd   s    Rx l" r   c                   .    ] tR t^t]P
                  tRtR# )OSelectorEventLoopSignalTests.test_add_signal_handler_install_error.<locals>.Errr   N)__name__
__module____qualname____firstlineno__errnoEFAULT__static_attributes__r   r   r   Errry          LLEr   r   c                      R # rN   r   r   r   r   rO   TSelectorEventLoopSignalTests.test_add_signal_handler_install_error.<locals>.<lambda>   rQ   r   N)
r8   r9   rR   rS   OSErrorrT   r4   r+   rV   rW   )r.   rY   rS   r   s   &&  r   %test_add_signal_handler_install_errorBSelectorEventLoopSignalTests.test_add_signal_handler_install_error{   se    !'!5!5	# "/	!' 	!&)#II((MM<	)r   zasyncio.base_events.loggerc                   \         P                  Vn        \         P                  Vn         ! R  R\        4      pW2P                   n        R V P
                  P                  \         P                  &   V P                  \        V P
                  P                  \         P                  R 4       V P                  VP                  P                  4       V P                  ^VP                   P"                  4       R# )c                   .    ] tR t^t]P
                  tRtR# )PSelectorEventLoopSignalTests.test_add_signal_handler_install_error2.<locals>.Errr   Nrz   r{   r|   r}   r~   EINVALr   r   r   r   r   r      r   r   r   c                      R # rN   r   r   r   r   rO   USelectorEventLoopSignalTests.test_add_signal_handler_install_error2.<locals>.<lambda>       Dr   c                      R # rN   r   r   r   r   rO   r      rQ   r   N)r8   r9   rR   r   rT   r+   rF   rk   r4   rU   rV   rW   assertFalseinfocalledrn   rS   
call_countr.   	m_loggingrY   r   s   &&& r   &test_add_signal_handler_install_error2CSelectorEventLoopSignalTests.test_add_signal_handler_install_error2   s     !'!5!5	!' 	!&)#4@		""6==1II((MM<	) 	../H22==>r   c                    ! R  R\         4      pW2P                  n        \        P                  Vn        \        P                  Vn        V P                  \        V P                  P                  \        P                  R 4       V P                  VP                  P                  4       V P                  ^VP                  P                  4       R# )c                   .    ] tR t^t]P
                  tRtR# )PSelectorEventLoopSignalTests.test_add_signal_handler_install_error3.<locals>.Errr   Nr   r   r   r   r   r      r   r   r   c                      R # rN   r   r   r   r   rO   USelectorEventLoopSignalTests.test_add_signal_handler_install_error3.<locals>.<lambda>   rQ   r   N)r   r8   rT   r9   rR   r4   rU   r+   rV   rW   r   r   r   rn   rS   r   r   s   &&& r   &test_add_signal_handler_install_error3CSelectorEventLoopSignalTests.test_add_signal_handler_install_error3   s    	!' 	!&)#!'!5!5II((MM<	) 	../H22==>r   c                B   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4       V P                  V P                  P                  \         P
                  4      4       V P                  VP                  P                  4       V P                  VP                   P                  4       V P                  \         P
                  VP                  3VP                   P                  ^ ,          4       R# )c                      R # rN   r   r   r   r   rO   ISelectorEventLoopSignalTests.test_remove_signal_handler.<locals>.<lambda>   r   r   N)r8   r9   rR   r+   rV   rk   
assertTruerG   rS   r   rn   SIG_DFL	call_argsrX   s   &&r   test_remove_signal_handler7SelectorEventLoopSignalTests.test_remove_signal_handler   s    !'!5!5		$$V]]LAII++FMM:	<..556../]]H,,-x/H/H/K	Mr   c                   \         P                  Vn        \         P                  Vn        \         P                  Vn        V P                  P                  \         P                  R  4       \        4       V P                  P                  \         P                  &   VP                  P                  4        V P                  V P                  P                  \         P                  4      4       V P                  VP                  P                  4       V P                  VP                   P                  4       V P                  \         P                  VP                   3VP                   P"                  ^ ,          4       R# )c                      R # rN   r   r   r   r   rO   KSelectorEventLoopSignalTests.test_remove_signal_handler_2.<locals>.<lambda>   r   r   N)r8   r9   rW   rR   r+   rV   objectrF   rk   rS   
reset_mockr   rG   r   r   rn   default_int_handlerr   rX   s   &&r   test_remove_signal_handler_29SelectorEventLoopSignalTests.test_remove_signal_handler_2   s     --!'!5!5		$$V]]LA4:H		""6==1))+II++FMM:	<//667../]]H889OO%%a(	*r   c                b   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4       \        VP                  n        V P                  P                  \         P
                  4       V P                  VP                  4       R# )c                      R # rN   r   r   r   r   rO   WSelectorEventLoopSignalTests.test_remove_signal_handler_cleanup_error.<locals>.<lambda>   r   r   N)r8   r9   rR   r+   rV   rk   r7   rS   rT   rG   r   r   )r.   r   rY   s   &&&r   (test_remove_signal_handler_cleanup_errorESelectorEventLoopSignalTests.test_remove_signal_handler_cleanup_error   si     !'!5!5		$$V]]LA-7*		''6	'r   c                L   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4       \        VP                   n        V P                  \        V P                  P                  \         P
                  4       R# )c                      R # rN   r   r   r   r   rO   OSelectorEventLoopSignalTests.test_remove_signal_handler_error.<locals>.<lambda>   r   r   N)
r8   r9   rR   r+   rV   rk   r   rT   r4   rG   rX   s   &&r    test_remove_signal_handler_error=SelectorEventLoopSignalTests.test_remove_signal_handler_error   sc    !'!5!5		$$V]]LA&-#TYY44fmm	Er   c                `   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4        ! R R\        4      pW!P                   n        V P                  \        V P                  P                  \         P
                  4       R# )c                      R # rN   r   r   r   r   rO   PSelectorEventLoopSignalTests.test_remove_signal_handler_error2.<locals>.<lambda>   r   r   c                   .    ] tR t^t]P
                  tRtR# )KSelectorEventLoopSignalTests.test_remove_signal_handler_error2.<locals>.Errr   Nr   r   r   r   r   r      r   r   r   N)r8   r9   rR   r+   rV   rk   r   rT   r4   rU   rG   )r.   rY   r   s   && r   !test_remove_signal_handler_error2>SelectorEventLoopSignalTests.test_remove_signal_handler_error2   sm    !'!5!5		$$V]]LA	!' 	!&)#$))996==	Jr   c                `   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4       V P                  P	                  \         P                  R 4       V P                  \        V P                  P                  4      ^4       VP                  P                  4        V P                  P                  4        V P                  \        V P                  P                  4      ^ 4       VP                  P                  R4       R# )c                      R # rN   r   r   r   r   rO   9SelectorEventLoopSignalTests.test_close.<locals>.<lambda>   r   r   c                      R # rN   r   r   r   r   rO   r      s    Tr   Nru   )r8   r9   rR   r+   rV   rk   SIGCHLDrn   lenrF   rS   r   r!   assert_called_once_withrX   s   &&r   
test_close'SelectorEventLoopSignalTests.test_close   s    !'!5!5		$$V]]LA		$$V^^\BTYY778!<))+		TYY778!<66r:r   zasyncio.unix_events.sysc                   \         P                  Vn        \         P                  Vn        V P                  P	                  \         P
                  R  4       V P                  \        V P                  P                  4      ^4       RVP                  n
        VP                   P                  4        V P                  \        R4      ;_uu_ 4        V P                  P                  4        RRR4       V P                  \        V P                  P                  4      ^ 4       V P                  VP                   P                   4       R#   + '       g   i     Lf; i)c                      R # rN   r   r   r   r   rO   GSelectorEventLoopSignalTests.test_close_on_finalizing.<locals>.<lambda>
  r   r   Tz skipping signal handlers removalN)r8   r9   rR   r+   rV   rk   rn   r   rF   is_finalizingreturn_valuer   assertWarnsRegexResourceWarningr!   r   r   )r.   rY   m_syss   &&&r   test_close_on_finalizing5SelectorEventLoopSignalTests.test_close_on_finalizing  s     !'!5!5		$$V]]LATYY778!<+/(""$""?#EG GIIOOG 	TYY778!<//0G Gs   EE	rB   )rz   r{   r|   r}   r)   r;   r?   rJ   r   patchrZ   re   rq   r   r   r   r   r   r   r   r   r   r   r   __classdictcell____classcell__r/   __classdict__s   @@r   r%   r%   :   s    '
B2L 
ZZ,-) .) 
ZZ,-% .%  
ZZ,-* .* 
ZZ,-) .)$ 
ZZ,-	ZZ,-? . .?  
ZZ,-	ZZ,-? . .? 
ZZ,-M .M 
ZZ,-* .*" 
ZZ,-	ZZ,-( . .( 
ZZ,-E .E 
ZZ,-
J .
J 
ZZ,-; .;  
ZZ)*	ZZ,-1 . +1 1r   r%   AF_UNIXzUNIX Sockets are not supportedc                   V  a a ] tR tRt oV 3R lt]P                  R 4       t]P                  R 4       tR t	R t
R tR tR	 tR
 t]P                   ! ]! ]R4      R4      ]P                  R 4       4       tR tR t]P.                  ! R4      R 4       tR tR tR tR tR tRtVtV ;t # ) SelectorEventLoopUnixSocketTestsi  c                   < \         SV `  4        \        P                  ! 4       V n        V P                  V P                  4       R # r   r'   r-   s   &r   r)   &SelectorEventLoopUnixSocketTests.setUp  r1   r   c                   \         P                  ! 4       ;_uu_ 4       p\        P                  ! \        P                  4      pVP	                  V4       VP                  ^4       VP                  4        V P                  P                  R V4      pV P                  P                  V4      pVP                  4        V P                  P                  VP                  4       4       RRR4       R#   + '       g   i     R# ; i)r   c                      R # r   r   r   r   r   rO   ]SelectorEventLoopUnixSocketTests.test_create_unix_server_existing_path_sock.<locals>.<lambda>)      r   N)
test_utilsunix_socket_pathsocketr   bindlistenr!   r+   create_unix_serverrun_until_completewait_closed)r.   pathsockcorosrvs   &    r   *test_create_unix_server_existing_path_sockKSelectorEventLoopUnixSocketTests.test_create_unix_server_existing_path_sock!  s    ((**d==0DIIdOKKNJJL99//dCD))..t4CIIKII(():; +***s   CC00D	c                   \         P                  ! 4       ;_uu_ 4       p\        P                  ! V4      pV P                  P                  R  V4      pV P                  P                  V4      pVP                  4        V P                  P                  VP                  4       4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   SSelectorEventLoopUnixSocketTests.test_create_unix_server_pathlike.<locals>.<lambda>2  r   r   N)	r   r   r   FakePathr+   r   r   r!   r   )r.   r   srv_coror   s   &   r    test_create_unix_server_pathlikeASelectorEventLoopUnixSocketTests.test_create_unix_server_pathlike.  s~    ((**d%%d+Dyy33L$GH))..x8CIIKII(():; +***s   BB00C	c           	        \         P                  ! 4       ;_uu_ 4       p\        P                  ! V4      pV P                  P                  R  V4      pV P                  \        4      ;_uu_ 4        V P                  P                  V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   WSelectorEventLoopUnixSocketTests.test_create_unix_connection_pathlike.<locals>.<lambda>:  r   r   N)	r   r   r   r   r+   create_unix_connectionr4   FileNotFoundErrorr   r.   r   r   s   &  r   $test_create_unix_connection_pathlikeESelectorEventLoopUnixSocketTests.test_create_unix_connection_pathlike7  s    ((**d%%d+D9933L$GD""#455 		,,T2 6 +* 65 +**s$   AB0/B	B0B-(B00C	c                   \         P                  ! 4       pV P                  \        P                  V4       \        VR 4      P                  4        V P                  P                  R V4      pV P                  \        R4      ;_uu_ 4        V P                  P                  V4       RRR4       R#   + '       g   i     R# ; i)wbc                      R # r   r   r   r   r   rO   `SelectorEventLoopUnixSocketTests.test_create_unix_server_existing_path_nonsock.<locals>.<lambda>F      Dr   zAddress.*is already in useN)r   gen_unix_socket_pathr`   r   unlinkopenr!   r+   r   ra   r   r   r   s   &  r   -test_create_unix_server_existing_path_nonsockNSelectorEventLoopUnixSocketTests.test_create_unix_server_existing_path_nonsock@  s    ..0	(($/T4 yy++L$?##G$@B BII((.B B B Bs   B11C	c                    V P                   P                  R  RRR7      pV P                  \        R4      ;_uu_ 4        V P                   P	                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   SSelectorEventLoopUnixSocketTests.test_create_unix_server_ssl_bool.<locals>.<lambda>L  r  r   spamT)r   sslz"ssl argument must be an SSLContextN)r+   r   ra   r5   r   r.   r   s   & r    test_create_unix_server_ssl_boolASelectorEventLoopUnixSocketTests.test_create_unix_server_ssl_boolK  sg    yy++Lv04 , 6##I$HJ JII((.J J J J   A$$A5	c                    V P                   P                  R  RR7      pV P                  \        R4      ;_uu_ 4        V P                   P	                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   XSelectorEventLoopUnixSocketTests.test_create_unix_server_nopath_nosock.<locals>.<lambda>S  r  r   Nr   z#path was not specified, and no sockr+   r   ra   r7   r   r  s   & r   %test_create_unix_server_nopath_nosockFSelectorEventLoopUnixSocketTests.test_create_unix_server_nopath_nosockR  s`    yy++Lt+D##J$IK KII((.K K K Ks   A##A4	c           	     f   \         P                   ! 4       pT;_uu_ 4        V P                  P                  R  RVR7      pV P                  \        R4      ;_uu_ 4        V P                  P                  V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   XSelectorEventLoopUnixSocketTests.test_create_unix_server_path_inetsock.<locals>.<lambda>[  r   r   Nr   r   "A UNIX Domain Stream.*was expected)r   r+   r   ra   r7   r   r.   r   r   s   &  r   %test_create_unix_server_path_inetsockFSelectorEventLoopUnixSocketTests.test_create_unix_server_path_inetsockX  s    }}T99//459 0 ;D''
(LN N		,,T2N TN N TTs#   >BB	:BBBB0	c           	        \         P                   ! \         P                  \         P                  4      pT;_uu_ 4        V P                  P	                  R  RVR7      pV P                  \        R4      ;_uu_ 4        V P                  P                  V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   USelectorEventLoopUnixSocketTests.test_create_unix_server_path_dgram.<locals>.<lambda>d  r   r   Nr  r  )r   r   
SOCK_DGRAMr+   r   ra   r7   r   r  s   &  r   "test_create_unix_server_path_dgramCSelectorEventLoopUnixSocketTests.test_create_unix_server_path_dgrama  s    }}V^^V->->?T99//459 0 ;D''
(LN N		,,T2N TN N TTs#   >B=<B*	B=*B:5B==C	SOCK_NONBLOCKz$no socket.SOCK_NONBLOCK (linux only)c                V   \         P                  ! 4       pV P                  \        P                  V4       \
        P
                  ! \
        P                  \
        P                  \
        P                  ,          4      pV;_uu_ 4        VP                  V4       V P                  P                  R  RVR7      pV P                  P                  V4      pVP                  4        V P                  P                  VP                  4       4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   ^SelectorEventLoopUnixSocketTests.test_create_unix_server_path_stream_bittype.<locals>.<lambda>u  r   r   Nr  )r   r  r`   r   r  r   r   SOCK_STREAMr'  r   r+   r   r   r!   r   )r.   fnr   r   r   s   &    r   +test_create_unix_server_path_stream_bittypeLSelectorEventLoopUnixSocketTests.test_create_unix_server_path_stream_bittypej  s     ,,.	(("-}}V^^#//&2F2FFHTIIbM99//459 0 ;D))..t4CIIKII(():; TTTs   BDD(	c                    V P                   P                  R  R^R7      pV P                  \        R4      ;_uu_ 4        V P                   P	                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   fSelectorEventLoopUnixSocketTests.test_create_unix_server_ssl_timeout_with_plain_sock.<locals>.<lambda>|  r  r   r  r   ssl_handshake_timeout1ssl_handshake_timeout is only meaningful with sslNr  r  s   & r   3test_create_unix_server_ssl_timeout_with_plain_sockTSelectorEventLoopUnixSocketTests.test_create_unix_server_ssl_timeout_with_plain_sock{  sk    yy++LvBC , E##CE E II((.E E E Er  c           	     d   \         P                   ! 4       pT;_uu_ 4        V P                  P                  R  VR7      pV P                  \        R4      ;_uu_ 4        V P                  P                  V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   \SelectorEventLoopUnixSocketTests.test_create_unix_connection_path_inetsock.<locals>.<lambda>  r   r   r   r  N)r   r+   r   ra   r7   r   r  s   &  r   )test_create_unix_connection_path_inetsockJSelectorEventLoopUnixSocketTests.test_create_unix_connection_path_inetsock  s    }}T9933L9= 4 ?D''
(LN N		,,T2N TN N TTs#   =BB	9BBBB/	zasyncio.unix_events.socketc                    \         P                  ! 4       pW!P                  n        \        VP
                  n        V P                  P                  R  RR7      pV P                  \        4      ;_uu_ 4        V P                  P                  V4       RRR4       V P                  VP                  P                  4       \        VP
                  n        V P                  P                  R RR7      pV P                  \        4      ;_uu_ 4        V P                  P                  V4       RRR4       V P                  VP                  P                  4       R#   + '       g   i     L; i  + '       g   i     LJ; i)c                      R # r   r   r   r   r   rO   USelectorEventLoopUnixSocketTests.test_create_unix_server_bind_error.<locals>.<lambda>  r  r   z/testr  Nc                      R # r   r   r   r   r   rO   r?    r  r   )r   rD   r   r   r   r   rT   r+   r   r4   r   r   r!   r   MemoryError)r.   m_socketr   r   s   &&  r   "test_create_unix_server_bind_errorCSelectorEventLoopUnixSocketTests.test_create_unix_server_bind_error  s     yy{'+$ '		yy++Lw+Gw''II((. (

))* +		yy++Lw+G{++II((. ,

))* (' ,+s   6EE-E*	-E=	c                   V P                   P                  R  \        P                  \	        4       R7      pV P                  \        R4      ;_uu_ 4        V P                   P                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   XSelectorEventLoopUnixSocketTests.test_create_unix_connection_path_sock.<locals>.<lambda>      Dr   r:  zpath and sock can not beN)r+   r   osdevnullr   ra   r7   r   r  s   & r   %test_create_unix_connection_path_sockFSelectorEventLoopUnixSocketTests.test_create_unix_connection_path_sock  s^    yy//"**68 0 5##J0JKKII((. LKKKs   A::B	c                    V P                   P                  R  R4      pV P                  \        R4      ;_uu_ 4        V P                   P	                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   \SelectorEventLoopUnixSocketTests.test_create_unix_connection_nopath_nosock.<locals>.<lambda>  rH  r   Nzno path and sock were specifiedr+   r   ra   r7   r   r  s   & r   )test_create_unix_connection_nopath_nosockJSelectorEventLoopUnixSocketTests.test_create_unix_connection_nopath_nosock  s`    yy//$ ##J$EG GII((.G G G Gs   A""A3	c                   V P                   P                  R  \        P                  RR7      pV P	                  \
        R4      ;_uu_ 4        V P                   P                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   _SelectorEventLoopUnixSocketTests.test_create_unix_connection_nossl_serverhost.<locals>.<lambda>  rH  r   r  )server_hostnamez"server_hostname is only meaningfulNr+   r   rI  rJ  ra   r7   r   r  s   & r   ,test_create_unix_connection_nossl_serverhostMSelectorEventLoopUnixSocketTests.test_create_unix_connection_nossl_serverhost  sk    yy//"**f 0 >##J$HJ JII((.J J J J   A22B	c                   V P                   P                  R  \        P                  RR7      pV P	                  \
        R4      ;_uu_ 4        V P                   P                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   _SelectorEventLoopUnixSocketTests.test_create_unix_connection_ssl_noserverhost.<locals>.<lambda>  rH  r   T)r  z/you have to pass server_hostname when using sslNrW  r  s   & r   ,test_create_unix_connection_ssl_noserverhostMSelectorEventLoopUnixSocketTests.test_create_unix_connection_ssl_noserverhost  sp    yy//"**$ 0 0 ##IK K II((.K K K KrZ  c                    V P                   P                  R  R^R7      pV P                  \        R4      ;_uu_ 4        V P                   P	                  V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r   r   r   r   rO   jSelectorEventLoopUnixSocketTests.test_create_unix_connection_ssl_timeout_with_plain_sock.<locals>.<lambda>  r   r   r  r2  r4  NrP  r  s   & r   7test_create_unix_connection_ssl_timeout_with_plain_sockXSelectorEventLoopUnixSocketTests.test_create_unix_connection_ssl_timeout_with_plain_sock  sk    yy//6BC 0 E##CE E II((.E E E Er  rB   )!rz   r{   r|   r}   r)   r   skip_unless_bind_unix_socketr   r   r   r  r  r  r  r%  unittest
skipUnlesshasattrr   r-  r5  r;  r   r   rC  rK  rQ  rX  r^  rc  r   r   r   r   s   @@r   r   r     s     '
 //
< 0
< //< 0<3	///33 9?A//< 0A</3 
ZZ,-+ .+"///// /r   r   sendfilezsendfile is not supportedc                      a a ] tR tRt oRR,          t ! R R]P                  4      t]V 3R l4       t	]V 3R l4       t
V 3R ltRR ltR	 tR
 tR tR tR tR tR tR tR tR tR tR tRtVtV ;t# )&SelectorEventLoopUnixSockSendfileTestsi     c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	.SelectorEventLoopUnixSockSendfileTests.MyProtoi  c                    R V n         R V n        \        4       V n        VP	                  4       V n        RV n        VP	                  4       V n        R# )FN)startedclosed	bytearraydatacreate_futurefutr"   _ready)r.   r+   s   &&r   __init__7SelectorEventLoopUnixSockSendfileTests.MyProto.__init__  s@     DLDK!DI))+DH!DN,,.DKr   c                V    R V n         Wn        V P                  P                  R4       R# TN)rp  r"   rv  
set_result)r.   r"   s   &&r   connection_made>SelectorEventLoopUnixSockSendfileTests.MyProto.connection_made  s     DL&NKK""4(r   c                <    V P                   P                  V4       R # r   )rs  extend)r.   rs  s   &&r   data_received<SelectorEventLoopUnixSockSendfileTests.MyProto.data_received  s    IIT"r   c                J    R V n         V P                  P                  R4       R# rz  )rq  ru  r{  )r.   excs   &&r   connection_lost>SelectorEventLoopUnixSockSendfileTests.MyProto.connection_lost  s    DKHH%r   c                :   "   V P                   G R j  xL
  R #  L5ir   )ru  r:   s   &r   r   :SelectorEventLoopUnixSockSendfileTests.MyProto.wait_closed  s     ((NNs   )rv  rq  rs  ru  rp  r"   N)rz   r{   r|   r}   rw  r|  r  r  r   r   r   r   s   @r   MyProtorn    s#     	/	)
	#	&	 	r   r  c                   < \        \        P                  R 4      ;_uu_ 4       pVP                  V P                  4       RRR4       \
        SV `  4        R#   + '       g   i     L ; i)r   N)r  r   TESTFNwriteDATAr(   
setUpClass)clsfpr/   s   & r   r  1SelectorEventLoopUnixSockSendfileTests.setUpClass  sA    )""D))RHHSXX * *)s   AA(	c                l   < \         P                  ! \         P                  4       \        SV `  4        R # r   )r   r  r  r(   tearDownClass)r  r/   s   &r   r  4SelectorEventLoopUnixSockSendfileTests.tearDownClass  s"    ))*r   c                  < \         P                  ! 4       V n        V P                  V P                  4       \	        \
        P                  R 4      V n        V P                  V P                  P                  4       \        SV `-  4        R# )rbN)r   new_event_loopr+   r,   r  r   r  filer`   r!   r(   r)   r-   s   &r   r)   ,SelectorEventLoopUnixSockSendfileTests.setUp  sV    **,	DII&))40			(r   c                   \         P                   ! \         P                  \         P                  4      pVP                  R 4       VP	                  \         P
                  \         P                  R4       VP	                  \         P
                  \         P                  R4       V'       d   V P                  VP                  4       V# )Frl  )
r   AF_INETr+  setblocking
setsockopt
SOL_SOCKET	SO_SNDBUF	SO_RCVBUFr`   r!   )r.   cleanupr   s   && r   make_socket2SelectorEventLoopUnixSockSendfileTests.make_socket  sz    }}V^^V-?-?@))6+;+;TB))6+;+;TBOODJJ'r   c                8    V P                   P                  V4      # r   )r+   r   r  s   &&r   run_loop/SelectorEventLoopUnixSockSendfileTests.run_loop  s    yy++D11r   c                4  a aa S P                  4       pS P                  S P                  4      o\        P                  ! 4       pS P                  R R7      pVP                  \        P                  V34       S P                  S P                  P                  V3R lVR7      4      oS P                  S P                  P                  V\        P                  V34      4       S P                  SP                  4       VV V3R lpS P                  V4       VS3# )F)r  c                     < S # r   r   )protos   r   rO   @SelectorEventLoopUnixSockSendfileTests.prepare.<locals>.<lambda>  s    Er   r:  c                     < S P                   P                  4        SP                  S P                  4       4       SP                  4        SP                  SP                  4       4       R # r   )r"   r!   r  r   )r  r.   servers   r   r  ?SelectorEventLoopUnixSockSendfileTests.prepare.<locals>.cleanup  sF    OO!!#MM%++-.LLNMM&,,./r   )r  r  r+   r   find_unused_portr   HOSTr  create_serversock_connectrv  r`   )r.   r   portsrv_sockr  r  r  s   f    @@r   prepare.SelectorEventLoopUnixSockSendfileTests.prepare   s    !TYY'--/##E#2}))401tyy66  7  * +dii,,TM4F4F3MNOell#	0 	 U{r   c                   V P                  4       w  r\        P                  ! R . R7      ;_uu_ 4        V P                  \        P
                  R4      ;_uu_ 4        V P                  V P                  P                  WP                  ^ R4      4       RRR4       RRR4       V P                  V P                  P                  4       ^ 4       R#   + '       g   i     LD; i  + '       g   i     LO; i)zasyncio.unix_events.os)specz$os[.]sendfile[(][)] is not availableN)r  r   r   ra   r   SendfileNotAvailableErrorr  r+   _sock_sendfile_nativer  rn   tell)r.   r   r  s   &  r    test_sock_sendfile_not_availableGSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_not_available  s    llnZZ0r::''(I(I(NP Pdii==dII>?G HP ;
 	)1-	P P ;:s#   )C"7C	C"CC""C2	c           
     r   V P                  4       w  r\        4       pV P                  \        P                  R 4      ;_uu_ 4        V P                  V P                  P                  W^ R4      4       RRR4       V P                  V P                  P                  4       ^ 4       R#   + '       g   i     L<; inot a regular fileN)r  r   ra   r   r  r  r+   r  rn   r  r  r.   r   r  fs   &   r   test_sock_sendfile_not_a_fileDSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_not_a_file  s    llnH##G$E$E$8: :MM$))99$:;TC D: 	)1-	: :s   -B&&B6	c           
        V P                  4       w  r\        P                  ! 4       pV P                  \        P
                  R 4      ;_uu_ 4        V P                  V P                  P                  W^ R4      4       RRR4       V P                  V P                  P                  4       ^ 4       R#   + '       g   i     L<; ir  )r  ioBytesIOra   r   r  r  r+   r  rn   r  r  r  s   &   r   test_sock_sendfile_iobufferBSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_iobuffer(  s    llnJJL##G$E$E$8: :MM$))99$:;TC D: 	)1-	: :s   -B11C	c           
        V P                  4       w  r\        P                  ! 4       pRVP                  n        V P                  \        P                  R4      ;_uu_ 4        V P                  V P                  P                  W^ R4      4       RRR4       V P                  V P                  P                  4       ^ 4       R#   + '       g   i     L<; i)r   r  Nru   )r  r   rD   filenor   ra   r   r  r  r+   r  rn   r  r  r  s   &   r   #test_sock_sendfile_not_regular_fileJSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_not_regular_file1  s    llnIIK "##G$E$E$8: :MM$))99$:;TC D: 	)1-	: :s   !-CC	c                   V P                  4       w  rV P                  P                  4       pV P                  P	                  4       pV P                  P                  VR W^ R \        V P                  4      ^ 4       VP                  4        \        P                  ! \        P                  4      ;_uu_ 4        V P                  V4       R R R 4       V P                  \        4      ;_uu_ 4        V P                  P                   P#                  V4       R R R 4       R #   + '       g   i     L]; i  + '       g   i     R # ; ir   )r  r+   rt  r  r  _sock_sendfile_native_implr   r  rE   
contextlibsuppressr   CancelledErrorr  r4   KeyError	_selectorget_keyr.   r   r  ru  r  s   &    r   test_sock_sendfile_cancel1ASelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_cancel1;  s    llnii%%'!!#		,,S$-.c$))na	I

  !7!788MM# 9x((II''- )( 98(((s   7D.&D1D.	1E	c                Z   V P                  4       w  rV P                  P                  4       pV P                  P	                  4       pV P                  P                  VR W^ R \        V P                  4      ^ 4       VP                  4        V P                  P                  W1P	                  4       W^ R \        V P                  4      ^ 4       V P                  \        4      ;_uu_ 4        V P                  P                  P                  V4       R R R 4       R #   + '       g   i     R # ; ir   )r  r+   rt  r  r  r  r   r  rE   r4   r  r  r  r  s   &    r   test_sock_sendfile_cancel2ASelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_cancel2H  s    llnii%%'!!#		,,S$-.c$))na	I

		,,S++--.c$))na	Ix((II''- )(((s   )&DD*	c                X   V P                  4       w  rV P                  P                  4       p\        P                  ! 4       pR VP
                  n        \        P                  ! R\        4       R7      ;_uu_ 4        V P                  P                  VRW^ R\        V P                  4      ^ 4       RRR4       V P                  P                  P                  V4      pV P                  V4       VP                   P#                  \        P$                  4       R#   + '       g   i     Lq; i)Fos.sendfilerT   N)r  r  r  r   rD   	cancelledr   r   BlockingIOErrorr+   r  r   r  r  r  assertIsNotNoneadd_done_callbackr   ANY)r.   r   r  r  ru  keys   &     r   !test_sock_sendfile_blocking_errorHSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_blocking_errorU  s    lln!!#iik%*"ZZ?3DEEII00dD12D#dii.!M F ii!!))$/S!55dhh? FEs   ;5DD)	c                   V P                  4       w  rV P                  P                  4       pV P                  P	                  4       p\
        P                  ! R \        4       R7      ;_uu_ 4        V P                  P                  VRW^ R\        V P                  4      ^ 4       RRR4       V P                  \        4      ;_uu_ 4        V P                  P                  P                  V4       RRR4       VP                  4       pV P!                  V\"        P$                  4       V P'                  ^ V P                  P)                  4       4       R#   + '       g   i     L; i  + '       g   i     L; i)r  r  N)r  r  r  r+   rt  r   r   r   r  r   r  r4   r  r  r  	exceptionrm   r   r  rn   r  )r.   r   r  r  ru  r  s   &     r   &test_sock_sendfile_os_error_first_callMSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_os_error_first_callb  s    lln!!#ii%%'ZZ79==II00dD12D#dii.!M > x((II''- )mmoc7#D#DEDIINN,- >= )(s   /5E	&E&E#	&E6	c                   V P                  4       w  rV P                  P                  4       pV P                  P	                  4       p\        4       p\        P                  ! R VR7      ;_uu_ 4        V P                  P                  WAP                  4       WRR\        V P                  4      R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  P                  P                  V4       RRR4       VP                  4       pV P!                  We4       V P#                  RV P                  P%                  4       4       R#   + '       g   i     L; i  + '       g   i     Lp; ir  r  i  N)r  r  r  r+   rt  r   r   r   r  r   r  r4   r  r  r  r  assertIsrn   r  r.   r   r  r  ru  errr  s   &      r   %test_sock_sendfile_os_error_next_callLSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_os_error_next_callp  s    lln!!#ii%%'iZZ377II00kkm1515tS^157 8
 x((II''- )mmoctyy~~/0 87
 )(s   1AE&E&E#	&E6	c                   V P                  4       w  rV P                  P                  4       pV P                  P	                  4       p\
        P                  ! 4       p\        P                  ! R VR7      ;_uu_ 4        V P                  P                  WAP                  4       WRR\        V P                  4      R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  P                  P                  V4       RRR4       VP!                  4       pV P#                  We4       V P%                  RV P                  P'                  4       4       R#   + '       g   i     L; i  + '       g   i     Lp; ir  )r  r  r  r+   rt  r   r  r   r   r  r   r  r4   r  r  r  r  r  rn   r  r  s   &      r   test_sock_sendfile_exceptionCSelectorEventLoopUnixSockSendfileTests.test_sock_sendfile_exception  s    lln!!#ii%%'//1ZZ377II00kkm1515tS^157 8
 x((II''- )mmoctyy~~/0 87
 )(s   <AE#&E1E.	1F	)r  r+   s   12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcde12345abcderN   )rz   r{   r|   r}   r  r   Protocolr  classmethodr  r  r)   r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   r   s   @@r   rk  rk    s      $D'"" 2  
    2,......@.1"1 1r   rk  c                   @  a a ] tR tRt oV 3R ltRR ltR t]P                  ! R4      R 4       t	]P                  ! R4      R 4       t
]P                  ! R4      R 4       t]P                  ! R	4      ]P                  ! R4      R
 4       4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       tR tR tR tR tR tR tRtVtV ;t# )UnixReadPipeTransportTestsi  c                  < \         SV `  4        V P                  4       V n        \        P
                  ! \        P                  4      V n        \        P                  ! \        P                  R 7      V n        ^V P                  P                  n        \        P                   ! R4      pVP#                  4        V P%                  VP&                  4       \        P                   ! R4      pVP#                  4       p\        P                  ! 4       p\(        P*                  Vn        WCn        V P%                  VP&                  4       R# )spec_setzos.set_blockingzos.fstatN)r(   r)   new_test_loopr+   r   make_test_protocolr   r  protocolr   rD   r  	RawIOBasepiper  r   r   startr`   stopstatS_IFIFOst_moder.   blocking_patcherfstat_patcherm_fstatstr/   s   &    r   r)    UnixReadPipeTransportTests.setUp  s    &&(	"55g6F6FGIIr||4	()		%::&78 (--.

:.%%'YY[\\
!**+r   c                    \         P                  ! V P                  V P                  V P                  VR 7      pV P                  \        V4       V# waiter)r
   _UnixReadPipeTransportr+   r  r  r`   r#   r.   r  r"   s   && r   read_pipe_transport.UnixReadPipeTransportTests.read_pipe_transport  s@    66tyy$))7;}}>DF	 	,i8r   c                h   V P                   P                  4       pV P                  VR 7      pV P                   P                  V4       V P                  P
                  P                  V4       V P                   P                  ^VP                  4       V P                  VP                  4       4       R# r  N)r+   rt  r  r   r  r|  rH   assert_reader_read_readyassertIsNoneresultr.   r  trs   &  r   	test_ctor$UnixReadPipeTransportTests.test_ctor  s}    ((*%%V%4		$$V,%%88<		2>>2&--/*r   zos.readc                    V P                  4       pR Vn        VP                  4        VP                  ^VP                  4       V P
                  P                  P                  R 4       R#    dataN)r  r   r  rH   max_sizer  r  r.   m_readr  s   && r   test__read_ready+UnixReadPipeTransportTests.test__read_ready  sN    %%'%
!!!R[[1##66w?r   c                   V P                  4       pR Vn        VP                  4        VP                  ^VP                  4       V P                  V P                  P                  4       \        P                  ! V P                  4       V P                  P                  P                  4        V P                  P                  P                  R4       R# r   N)r  r   r  rH   r   r   r+   readersr   run_brieflyr  eof_receivedr  r!  s   && r   test__read_ready_eof/UnixReadPipeTransportTests.test__read_ready_eof  s    %%'!
!!!R[[1**+tyy)""557%%88>r   c                2   V P                  4       p\        Vn        VP                  4        VP	                  ^VP
                  4       \        P                  ! V P                  4       V P                  V P                  P                  P                  4       R#    N)r  r  rT   r  rH   r   r   r(  r+   r   r  r  r   r!  s   && r   test__read_ready_blocked3UnixReadPipeTransportTests.test__read_ready_blocked  sf    %%',
!!!R[[1tyy)44;;<r   asyncio.log.logger.errorc                t   V P                  4       p\        4       pWAn        \        P                  ! 4       Vn        VP                  4        VP                  ^VP                  4       VP
                  P                  V4       VP                  \        P                  ! R4      \        \        \        3R7       R# )r.  z;Fatal read error on pipe transport
protocol:.*
transport:.*)exc_infoN)r  r   rT   r   rD   _closer  rH   r   r   MockPatternMOCK_ANY)r.   r"  m_logexcr  r  s   &&&  r   test__read_ready_error1UnixReadPipeTransportTests.test__read_ready_error  s     %%'i IIK	
!!!R[[1
		$$S)##""./ x2	 	$ 	4r   c                    V P                  4       p\        P                  ! 4       pV P                  P	                  ^V4       VP                  4        V P                  V P                  P                  4       R# r-  )r  r   rD   r+   
add_readerpause_readingr   r'  )r.   r"  r  ms   &&  r   test_pause_reading-UnixReadPipeTransportTests.test_pause_reading  sS    %%'IIK		Q"
**+r   c                    V P                  4       pVP                  4        VP                  4        V P                  P	                  ^VP
                  4       R# r-  )r  r<  resume_readingr+   r  r  r!  s   && r   test_resume_reading.UnixReadPipeTransportTests.test_resume_reading  s@    %%'

		2>>2r   c                    V P                  4       p\        P                  ! 4       Vn        VP	                  4        VP                  P                  R 4       R # r   )r  r   rD   r4  r!   rH   r!  s   && r   r   %UnixReadPipeTransportTests.test_close  s8    %%'IIK	


		$$T*r   c                    V P                  4       pR Vn        \        P                  ! 4       Vn        VP                  4        V P                  VP                  P                  4       R# rz  )r  _closingr   rD   r4  r!   r   r   r!  s   && r   test_close_already_closing5UnixReadPipeTransportTests.test_close_already_closing  sE    %%'IIK	

))*r   c                n   V P                  4       p\        4       pVP                  V4       V P                  VP	                  4       4       V P                  V P                  P                  4       \        P                  ! V P                  4       V P                  P                  P                  V4       R # r   )r  r   r4  r   
is_closingr   r+   r'  r   r(  r  r  rH   )r.   r"  r  r  s   &&  r   test__close&UnixReadPipeTransportTests.test__close  sv    %%'h
		#(**+tyy)%%88=r   c                   V P                  4       pV P                  VP                  4       V P                  VP                  4       R pVP	                  V4       V P
                  P                  P                  V4       V P                  P                  P                  4        V P                  VP                  4       V P                  VP                  4       R # r   )r  r  	_protocol_loop_call_connection_lostr  r  rH   r  r!   r  r.   r  r  s   &  r   test__call_connection_lost5UnixReadPipeTransportTests.test__call_connection_lost  s    %%'R\\*RXX&
  %%%88=		**,",,'"((#r   c                   V P                  4       pV P                  VP                  4       V P                  VP                  4       \	        4       pVP                  V4       V P                  P                  P                  V4       V P                  P                  P                  4        V P                  VP                  4       V P                  VP                  4       R # r   )r  r  rO  rP  r   rQ  r  r  rH   r  r!   r  rR  s   &  r   #test__call_connection_lost_with_err>UnixReadPipeTransportTests.test__call_connection_lost_with_err  s    %%'R\\*RXX&i
  %%%88=		**,",,'"((#r   c                    V P                  4       pVP                  4        \        P                  ! V P                  4       V P                  VP                  4       VP                  4        R # r   )r  r!   r   r(  r+   r  rP  r<  r.   r  s   & r   !test_pause_reading_on_closed_pipe<UnixReadPipeTransportTests.test_pause_reading_on_closed_pipe)  sI    %%'

tyy)"((#
r   c                f    V P                  4       pVP                  4        VP                  4        R # r   )r  r<  rY  s   & r   !test_pause_reading_on_paused_pipe<UnixReadPipeTransportTests.test_pause_reading_on_paused_pipe0  s(    %%'

r   c                    V P                  4       pVP                  4        \        P                  ! V P                  4       V P                  VP                  4       VP                  4        R # r   )r  r!   r   r(  r+   r  rP  rA  rY  s   & r   "test_resume_reading_on_closed_pipe=UnixReadPipeTransportTests.test_resume_reading_on_closed_pipe6  sI    %%'

tyy)"((#
r   c                F    V P                  4       pVP                  4        R # r   )r  rA  rY  s   & r   "test_resume_reading_on_paused_pipe=UnixReadPipeTransportTests.test_resume_reading_on_paused_pipe=  s    %%' 	r   r+   r  r  r   )rz   r{   r|   r}   r)   r  r  r   r   r#  r*  r/  r8  r>  rB  r   rH  rL  rS  rV  rZ  r]  r`  rc  r   r   r   r   s   @@r   r  r    sP    ,$+ 
ZZ	@ @ 
ZZ		? 	? 
ZZ	= = 
ZZ*+	ZZ	4  ,4 
ZZ	, , 
ZZ	3 3 
ZZ	+ + 
ZZ	+ + 
ZZ	> >$$ r   r  c                   f  a a ] tR tRt oV 3R ltRR ltR tR t]P                  ! R4      R 4       t
]P                  ! R4      R 4       t]P                  ! R4      R	 4       t]P                  ! R4      R
 4       t]P                  ! R4      R 4       t]P                  ! R4      ]P                  ! R4      R 4       4       t]P                  ! R4      R 4       tR t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       t]P                  ! R4      ]P                  ! R4      R 4       4       t]P                  ! R4      R 4       t]P                  ! R4      R 4       tR tR tR tR tR tR tRtVt V ;t!# ) UnixWritePipeTransportTestsiD  c                  < \         SV `  4        V P                  4       V n        \        P
                  ! \        P                  4      V n        \        P                  ! \        P                  R 7      V n        ^V P                  P                  n        \        P                   ! R4      pVP#                  4        V P%                  VP&                  4       \        P                   ! R4      pVP#                  4       p\        P                  ! 4       p\(        P*                  Vn        WCn        V P%                  VP&                  4       R# r  )r(   r)   r  r+   r   r  r   BaseProtocolr  r   rD   r  r  r  r  r   r   r   r`   r  r  S_IFSOCKr  r  s   &    r   r)   !UnixWritePipeTransportTests.setUpF  s    &&(	"55g6J6JKIIr||4	()		%::&78 (--.

:.%%'YY[]]
!**+r   c                    \         P                  ! V P                  V P                  V P                  VR 7      pV P                  \        V4       V# r  )r
   _UnixWritePipeTransportr+   r  r  r`   r#   r  s   && r   write_pipe_transport0UnixWritePipeTransportTests.write_pipe_transportX  s@    77		4998<?EG	 	,i8r   c                j   V P                   P                  4       pV P                  VR 7      pV P                   P                  V4       V P                  P
                  P                  V4       V P                   P                  ^VP                  4       V P                  RVP                  4       4       R# r  )r+   rt  rn  r   r  r|  rH   r  r  rn   r  r  s   &  r   r  %UnixWritePipeTransportTests.test_ctor_  s    ((*&&f&5		$$V,%%88<		2>>2v}}/r   c                d    V P                  4       pV P                  VP                  4       4       R # r   )rn  r   can_write_eofrY  s   & r   test_can_write_eof.UnixWritePipeTransportTests.test_can_write_eofh  s%    &&(((*+r   zos.writec                   V P                  4       p^Vn        VP                  R4       VP                  ^R4       V P	                  V P
                  P                  4       V P                  \        4       VP                  4       R# )   r  N)
rn  r   r  rH   r   r+   writersrn   rr  _bufferr.   m_writer  s   && r   
test_write&UnixWritePipeTransportTests.test_writel  sb    &&( 
""1g.**+bjj1r   c                   V P                  4       pVP                  R 4       V P                  VP                  4       V P                  V P                  P
                  4       V P                  \        R 4      VP                  4       R# r&  )	rn  r  r   r   r+   rx  rn   rr  ry  rz  s   && r   test_write_no_data.UnixWritePipeTransportTests.test_write_no_datau  s]    &&(
(**+34r   c                    V P                  4       p^Vn        VP                  R4       V P                  P	                  ^VP
                  4       V P                  \        R4      VP                  4       R# )   r     taN)	rn  r   r  r+   assert_writer_write_readyrn   rr  ry  rz  s   && r   test_write_partial.UnixWritePipeTransportTests.test_write_partial}  sU    &&( 
		2??35)2::6r   c                   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        VP                  R4       V P                  VP                  4       V P                  P                  ^VP                  4       V P                  \	        R4      VP
                  4       R# )r.  s   previousr  s   previousdataN)rn  r+   
add_writerr  rr  ry  r  r   r   r  rn   rz  s   && r   test_write_buffer-UnixWritePipeTransportTests.test_write_buffer  s    &&(		Q0{+

(		2??3?3RZZ@r   c                2   V P                  4       p\        4       Vn        VP                  R 4       VP	                  ^\        R 4      4       V P                  P                  ^VP                  4       V P                  \        R 4      VP                  4       R# r  )rn  r  rT   r  rH   rr  r+   r  r  rn   ry  rz  s   && r   test_write_again,UnixWritePipeTransportTests.test_write_again  sm    &&(-/
""1i&89		2??37+RZZ8r   zasyncio.unix_events.loggerc                   V P                  4       p\        4       pWAn        \        P                  ! 4       Vn        VP                  R 4       VP                  ^R 4       V P                  V P                  P                  4       V P                  \        4       VP                  4       VP
                  P                  VR4       V P                  ^VP                  4       VP                  R 4       V P                  ^VP                  4       VP                  R 4       VP                  R 4       VP                  R 4       VP                  R 4       VP                  P                  R4       VP!                  4        R# )r  z#Fatal write error on pipe transportz=pipe closed by peer or os.write(pipe, data) raised exception.N)rn  r   rT   r   rD   _fatal_errorr  rH   r   r+   rx  rn   rr  ry  
_conn_lostwarningr!   )r.   r{  m_logr  r  s   &&&  r   test_write_err*UnixWritePipeTransportTests.test_write_err  s    &&(i!))+
""1g.**+bjj1
**A	C 	BMM*
BMM*



((K	M

r   c                    V P                  4       pVP                  4        VP                  R 4       V P                  VP                  ^4       VP                  R 4       V P                  VP                  ^4       R# r  )rn  r  r  rn   r  rz  s   && r   test_write_close,UnixWritePipeTransportTests.test_write_close  sZ    &&(

*
*r   c                   V P                  4       pVP                  4        V P                  V P                  P                  4       V P                  V P                  P
                  4       V P                  VP                  4       4       \        P                  ! V P                  4       V P                  P                  P                  R 4       R # r   )rn  r  r   r+   r'  rx  r   rK  r   r(  r  r  rH   rY  s   & r   r#  ,UnixWritePipeTransportTests.test__read_ready  s    &&(
**+**+(tyy)%%88>r   c                R   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        ^Vn        VP                  4        V P                  V P                  P                  4       V P                  \	        4       VP
                  4       R# r.  r  N)
rn  r+   r  r  rr  ry  r   r   rx  rn   rz  s   && r   test__write_ready-UnixWritePipeTransportTests.test__write_ready  st    &&(		Q0w'
 
**+bjj1r   c                V   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        ^Vn        VP                  4        V P                  P                  ^VP                  4       V P                  \	        R4      VP
                  4       R# )r.  r     aN)	rn  r+   r  r  rr  ry  r   r  rn   rz  s   && r   test__write_ready_partial5UnixWritePipeTransportTests.test__write_ready_partial  sv    &&(		Q0w'
 
		2??34"**5r   c                   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        \        4       Vn        VP                  4        VP                  ^\	        R4      4       V P                  P                  ^VP                  4       V P                  \	        R4      VP
                  4       R# r  )rn  r+   r  r  rr  ry  r  rT   rH   r  rn   rz  s   && r   test__write_ready_again3UnixWritePipeTransportTests.test__write_ready_again  s    &&(		Q0w'
-/
""1i&89		2??37+RZZ8r   c                   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        ^ Vn        VP                  4        VP                  ^\	        R4      4       V P                  P                  ^VP                  4       V P                  \	        R4      VP
                  4       R# r  )
rn  r+   r  r  rr  ry  r   rH   r  rn   rz  s   && r   test__write_ready_empty3UnixWritePipeTransportTests.test__write_ready_empty  s    &&(		Q0w'
 
""1i&89		2??37+RZZ8r   r1  c                   V P                  4       pV P                  P                  ^VP                  4       \	        R4      Vn        \        4       ;Vn        pVP                  4        V P                  V P                  P                  4       V P                  V P                  P                  4       V P                  \	        4       VP
                  4       V P                  VP                  4       4       VP                  4        V P                  ^VP                  4       \         P"                  ! V P                  4       V P$                  P&                  P)                  V4       R# r  )rn  r+   r  r  rr  ry  r   rT   r   rx  r'  rn   r   rK  assert_not_calledr  r   r(  r  r  rH   )r.   r{  r7  r  r  s   &&&  r   test__write_ready_err1UnixWritePipeTransportTests.test__write_ready_err  s     &&(		Q0w'
$+I-c
**+**+bjj1(""$BMM*tyy)%%88=r   c                <   V P                  4       pV P                  P                  ^VP                  4       RVn        \        R4      Vn        ^Vn        VP                  4        V P                  V P                  P                  4       V P                  V P                  P                  4       V P                  \        4       VP                  4       V P                  P                  P                  R4       V P                  P                   P                  4        R# )r.  Tr  N)rn  r+   r  r  rG  rr  ry  r   r   rx  r'  rn   r  r  rH   r  r!   rz  s   && r   test__write_ready_closing5UnixWritePipeTransportTests.test__write_ready_closing  s    &&(		Q0w'
 
**+**+bjj1%%88>		**,r   c                   V P                  4       pV P                  P                  ^VP                  4       V P                  P	                  ^VP
                  4       RR.Vn        VP                  4        V P                  VP                  4       V P                  V P                  P                  4       V P                  V P                  P                  4       V P                  . VP                  4       V P                  VP                  4       4       \        P                   ! V P                  4       V P"                  P$                  P'                  R4       R# )r.  s   dar  N)rn  r+   r  r  r;  r  ry  abortr   r   r'  rx  rn   r   rK  r   r(  r  r  rH   rz  s   && r   
test_abort&UnixWritePipeTransportTests.test_abort  s    &&(		Q0		Q/U^


(**+**+RZZ((tyy)%%88>r   c                   V P                  4       pV P                  VP                  4       V P                  VP                  4       R pVP	                  V4       V P
                  P                  P                  V4       V P                  P                  P                  4        V P                  VP                  4       V P                  VP                  4       R # r   )rn  r  rO  rP  rQ  r  r  rH   r  r!   r  rR  s   &  r   rS  6UnixWritePipeTransportTests.test__call_connection_lost  s    &&(R\\*RXX&
  %%%88=		**,",,'"((#r   c                   V P                  4       pV P                  VP                  4       V P                  VP                  4       \	        4       pVP                  V4       V P                  P                  P                  V4       V P                  P                  P                  4        V P                  VP                  4       V P                  VP                  4       R # r   )rn  r  rO  rP  r   rQ  r  r  rH   r  r!   r  rR  s   &  r   rV  ?UnixWritePipeTransportTests.test__call_connection_lost_with_err+  s    &&(R\\*RXX&i
  %%%88=		**,",,'"((#r   c                    V P                  4       p\        P                  ! 4       Vn        VP	                  4        VP                  P                  4        VP	                  4        R # r   )rn  r   rD   	write_eofr!   rH   rY  s   & r   r   &UnixWritePipeTransportTests.test_close8  sA    &&(yy{


'') 	
r   c                    V P                  4       p\        P                  ! 4       Vn        R Vn        VP                  4        V P                  VP                  P                  4       R# rz  )rn  r   rD   r  rG  r!   r   r   rY  s   & r   test_close_closing.UnixWritePipeTransportTests.test_close_closingA  sE    &&(yy{

,,-r   c                X   V P                  4       pVP                  4        V P                  VP                  4       4       V P	                  V P
                  P                  4       \        P                  ! V P
                  4       V P                  P                  P                  R 4       R # r   )rn  r  r   rK  r   r+   r'  r   r(  r  r  rH   rY  s   & r   test_write_eof*UnixWritePipeTransportTests.test_write_eofH  sm    &&(
(**+tyy)%%88>r   c                    V P                  4       pR .Vn        VP                  4        V P                  VP	                  4       4       V P                  V P                  P                  P                  4       R# r  )	rn  ry  r  r   rK  r   r  r  r   rY  s   & r   test_write_eof_pending2UnixWritePipeTransportTests.test_write_eof_pendingP  sR    &&(Y

(66==>r   re  r   )"rz   r{   r|   r}   r)   rn  r  rt  r   r   r|  r  r  r  r  r  r  r#  r  r  r  r  r  r  r  rS  rV  r   r  r  r  r   r   r   r   s   @@r   rg  rg  D  s    ,$0, 
ZZ
2 2 
ZZ
5 5 
ZZ
7 7 
ZZ
A A 
ZZ
9 9 
ZZ,-	ZZ
  .2 
ZZ
+ +? 
ZZ
2 2 
ZZ
6 6 
ZZ
9 9 
ZZ
9 9 
ZZ*+	ZZ
>  ,> 
ZZ
- - 
ZZ
? ?$$.?? ?r   rg  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestFunctionaliX  c                z    \         P                  ! 4       V n        \         P                  ! V P                  4       R # r   )r   r  r+   r,   r:   s   &r   r)   TestFunctional.setUpZ  s$    **,	tyy)r   c                f    V P                   P                  4        \        P                  ! R 4       R # r   )r+   r!   r   r,   r:   s   &r   tearDownTestFunctional.tearDown^  s    		t$r   c                  a  V 3R  lpR pV! 4       ;_uu_ 4        S P                   P                  \        4       V4       RRR4       V! 4       ;_uu_ 4        S P                   P                  \        4       V4       RRR4       V! 4       ;_uu_ 4        S P                   P	                  \        4       4       RRR4       V! 4       ;_uu_ 4        S P                   P                  \        4       4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ls; i  + '       g   i     R# ; i)c                  0   < S P                  \        R 4      # )zInvalid file object)ra   r7   r:   s   r   assert_raisesFTestFunctional.test_add_reader_invalid_argument.<locals>.assert_raisesc  s    ))*6LMMr   c                      R # r   r   r   r   r   rO   ATestFunctional.test_add_reader_invalid_argument.<locals>.<lambda>f  rj   r   N)r+   r;  r   r  remove_readerremove_writer)r.   r  rp   s   f  r    test_add_reader_invalid_argument/TestFunctional.test_add_reader_invalid_argumentb  s    	N __II  2. __II  2.  __II##FH- __II##FH- _ __ ___s/   %C;%D$D!$D4;D	D	!D1	4E	c                $  a aa V 3R  loVVV 3R lp\         P                  ! 4       w  op S P                  P                  V! 4       4       SP	                  4        VP	                  4        R#   SP	                  4        TP	                  4        i ; i)c                  0   < S P                  \        R 4      # )z'File descriptor .* is used by transport)ra   rU   r:   s   r   r  LTestFunctional.test_add_reader_or_writer_transport_fd.<locals>.assert_raisess  s    )):< <r   c                    <"   SP                   P                  R  SR7      G Rj  xL
 w  r R pS! 4       ;_uu_ 4        SP                   P                  SV4       RRR4       S! 4       ;_uu_ 4        SP                   P                  SP                  4       V4       RRR4       S! 4       ;_uu_ 4        SP                   P	                  S4       RRR4       S! 4       ;_uu_ 4        SP                   P	                  SP                  4       4       RRR4       S! 4       ;_uu_ 4        SP                   P                  SV4       RRR4       S! 4       ;_uu_ 4        SP                   P                  SP                  4       V4       RRR4       S! 4       ;_uu_ 4        SP                   P                  S4       RRR4       S! 4       ;_uu_ 4        SP                   P                  SP                  4       4       RRR4       V P                  4        R#  EL  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELy; i  + '       g   i     ELL; i  + '       g   i     EL,; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  T P                  4        i ; i5i)c                  ,    \         P                  ! 4       # r   )r   r  r   r   r   rO   WTestFunctional.test_add_reader_or_writer_transport_fd.<locals>.runner.<locals>.<lambda>z  s    ((*r   r:  Nc                      R # r   r   r   r   r   rO   r  }  s    Tr   )r+   create_connectionr;  r  r  r  r  r!   )r  prrp   r  rsockr.   s      r   runnerETestFunctional.test_add_reader_or_writer_transport_fd.<locals>.runnerx  s    9966* 7 8 8FB!"__II((3 %"__II((< % #__II++E2 %"__II++ELLN; % #__II((3 %"__II((< % #__II++E2 %"__II++ELLN; % 
78 %__$__ %__$__ %__$_ %_$_ 
s   "KHKJ6 HJ6 3+H-J6 5IJ6 (*IJ6 )I)J6 +I=J6 J;J6 *J#<J6 KH*	$	J6 -H>	8	J6 I		J6 I&	 	J6 )I:	4	J6 =J	J6 J 	J6 #J3	.J6 6KKN)r   
socketpairr+   r   r!   )r.   r  wsockr  r  s   f  @@r   &test_add_reader_or_writer_transport_fd5TestFunctional.test_add_reader_or_writer_transport_fdr  sb    	<
	< ((*u	II((2KKMKKM KKMKKMs    A- -"BrB   N)
rz   r{   r|   r}   r)   r  r  r  r   r   r  s   @r   r  r  X  s     *%. ) )r   r  c                   @  a  ] tR tRt o R t]P                  ! R4      ]P                  ! RRR7      R 4       4       t	]P                  ! R4      ]P                  ! RRR7      R 4       4       t
]P                  ! R4      ]P                  ! RRR7      R	 4       4       tR
tV tR# )TestForki  c           	     x  "   \         P                  ! 4       p\        P                  ! 4       w  r#V P	                  \        P
                  V4       V P	                  \        P
                  V4       \        P                  ! 4       pV^ 8X  dm    \         P                  ! 4       p\        P                  ! VR\        \        V4      4      P                  4       ,           4       \        P                  ! ^ 4       R# \        P                   ! V^d4      pV P#                  VR4       \%        V^ R7       R#   \         d    \        P                  ! TR4        Lt\         d@   p\        P                  ! TR\        T4      P                  4       ,           4        Rp?LRp?ii ; i  \        P                  ! ^ 4       i ; i5i)    s   LOOP:s   NO LOOPs   ERROR:Nr   )r   get_running_looprI  r  r`   r!   forkget_event_loopr  stridencoderU   BaseExceptionascii_exitreadrn   r   )r.   r+   rwpider  s   &      r   test_fork_not_share_event_loop'TestFork.test_fork_not_share_event_loop  s    '')wwy!$!$ggi!8--/Hs2d8}';';'==>  WWQ_FVZ0q)   (J'  ;Ia(99::; sP   B	F:AD/ AF:/"FF FF5FF FF F77F:md5z'TSAN doesn't support threads after forkT)threadc                2  a aaaaa S P                  \        4       \        P                  ! R 4      oSP	                  4       pS P                  VP
                  4       VP                  4       oVP                  4       oVP                  4       oVV3R loVVVVV 3R lp\        P                  ! V! 4       4       SP                  \        P                  R7       S P                  SP                  4       4       S P                  SP                  4       4       R# )r  c                     < V3R  lp \         P                   ! \         P                  V 4       SP                  4         \        P                  ! ^4       K  )c                  R   < SP                  4        \        P                  ! 4        R # r   )setsysexit)argschild_handleds   *r   
on_sigtermJTestFork.test_fork_signal_handling.<locals>.child_main.<locals>.on_sigterm  s    !!#
r   )r8   SIGTERMr  timesleep)r  r  child_starteds    r   
child_main6TestFork.test_fork_signal_handling.<locals>.child_main  s6     MM&..*5

1r   c                    <"   \         P                  ! 4       p V P                  \        P                  V3R  l4       SP                  SR7      pVP                  4        SP                  4        \        P                  ! VP                  \        P                  4       VP                  \        P                  R7       R pSP                  \         P                  ! V! 4       4      G Rj  xL
 ^*4       R#  L5i)c                  $   < SP                  4       # r   )r  )r  parent_handleds   *r   rO   BTestFork.test_fork_signal_handling.<locals>.main.<locals>.<lambda>  s    .BTBTBVr   targettimeoutc                  N   "   \         P                  ! R 4      G Rj  xL
  ^*#  L5ig?N)r   r  r   r   r   rd   >TestFork.test_fork_signal_handling.<locals>.main.<locals>.func  s     mmC((( )s   %#%N)r   r  rV   r8   r  Processr   waitrI  killr  joinr   SHORT_TIMEOUTrn   create_task)r+   processrd   r	  r  ctxr  r.   s      r   main0TestFork.test_fork_signal_handling.<locals>.main  s     ++-D##FNN4VWkkk4GMMO GGGKK0LL!6!6L7
 7#6#6tv#>>C>s   C'C8*C6+C8r  N)r`   multiprocessing_cleanup_testsmultiprocessingget_contextManagershutdownEventr   runr  r   r  r   is_setr   )r.   managerr  r  r	  r  r  r  s   f  @@@@@r   test_fork_signal_handling"TestFork.test_fork_signal_handling  s     	56 ))&1++-(() 		D 	D" 	DF7#8#89..01,,./r   c                  aa V P                  \        4       \        P                  ! R 4      pVP	                  4       pV P                  VP
                  4       VP                  R^ 4      oV3R loVP                  V3R lR7      pVP                  4        VP                  4        V P                  SP                  ^*4       R# )r  ic                  ^   <"   \         P                  ! R 4      G Rj  xL
  ^*S n        R#  L5ir  )r   r  value)r  s   r   r	  2TestFork.test_fork_asyncio_run.<locals>.child_main  s$     --$$$FL %s   -+-c                  :   < \         P                  ! S ! 4       4      # r   r   r&  r	  s   r   rO   0TestFork.test_fork_asyncio_run.<locals>.<lambda>      W[[-Fr   r  Nr`   r   r!  r"  r#  r$  Valuer  r   r  rn   r.  r.   r  r(  r  r	  r  s   &   @@r   test_fork_asyncio_runTestFork.test_fork_asyncio_run  s     	56))&1++-(()sA&	 ++%F+Gr*r   c                  aa V P                  \        4       \        P                  ! R 4      pVP	                  4       pV P                  VP
                  4       VP                  R^4      oV3R loVP                  V3R lR7      pVP                  4        VP                  4        V P                  SP                  ^ 4       R# )r  r,  c                     <"   \         P                  ! \        P                  R R4      G Rj  xL
 p V P	                  4       G Rj  xL
 Sn        R#  L# L5i)z-cpassN)r   create_subprocess_execr  
executabler  r.  )procr  s    r   r	  9TestFork.test_fork_asyncio_subprocess.<locals>.child_main  s:      77fUUD!%,FL V,s!   *AAAAAAc                  :   < \         P                  ! S ! 4       4      # r   r1  r2  s   r   rO   7TestFork.test_fork_asyncio_subprocess.<locals>.<lambda>
  r4  r   r  Nr5  r7  s   &   @@r   test_fork_asyncio_subprocess%TestFork.test_fork_asyncio_subprocess  s     	56))&1++-(()sA&	- ++%F+Gq)r   r   N)rz   r{   r|   r}   r  r   requires_hashdigestr   skip_if_sanitizerr)  r8  rC  r   r   r  s   @r   r  r    s     *0 ''.HQUV+0 W /+0Z ''.HQUV+ W /+$ ''.HQUV* W /*r   r  __main__)2__doc__r  r~   r  r!  multiprocessing.utilr   r   rI  r8   r   r  r  r  rf  r   testr   test.supportr   r   r   r   platformSkipTestr   r
   test.test_asyncior   r   r   r  r6  r   r   r#   rg  TestCaser%   rh  r   rk  r  rg  r  requires_forkIsolatedAsyncioTestCaser  rz   r  r   r   r   <module>rR     s      	  P 	    
     " & % '<<7


K
((   10 88 
V89Z1:#6#6 Z1 :Z1z 
WVY/57g/z':': g/7g/T 
WR,02J1Z-@-@ J12J1Zn!4!4 nbQ?*"5"5 Q?hCX&& CL 	o*x// o* o*b zMMO r   