python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_socketserver.cpython-311.opt-1.pyc

eFdZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlm
Z
mZddlmZddlmZddlmZejdejd	d
ZejZeedZe	jedZejjZe	jed
ZejZejjfdZ er4er2Gdde
j!e
j"Z#Gdde
j!e
j$Z%ej&dZ'Gdde	j(Z)Gdde	j(Z*Gdde
j+Z,Gdde
j-Z.Gdde
j/e,Z0erGdde
j!e,Z1Gd d!e	j(Z2Gd"d#e	j(Z3e4d$kre	j5dSdS)%z
Test suite for socketserver.
N)
reap_childrenverbose)	os_helper)
socket_helper)threading_helpernetworkT)moduleshello world
AF_UNIXzrequires Unix socketszrequires forkingct|ggg|\}}}||vr||Std|)Nz
timed out on )_real_selectrecvRuntimeError)sockntimeoutrwxs      J/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_socketserver.pyreceiver'sKD62r733GAq!qyyyy||l6777ceZdZdS)ForkingUnixStreamServerN__name__
__module____qualname__rrrr/rrceZdZdS)ForkingUnixDatagramServerNrrrrr!r!3rrr!c#Ktj}|dkrtjd	dVn#xYw	tj|ddS#tj|dwxYw)zBTests that a custom child process is not waited on (Issue 1540386)rHN)exitcode)osfork_exittestsupportwait_process)testcasepids  rsimple_subprocessr-8s
'))C
axx
4




		
!!#!33333!!#!3333s6A 9A  #BcpeZdZdZdZdZdZdZej	dZ
dZdZd	Z
d
ZedZedZed
ZeedZdZdZedZedZedZeedZej	dZdZdZdZdS)SocketServerTestzTest all socket servers.c"d|_g|_dSNr)	port_seed
test_filesselfs rsetUpzSocketServerTest.setUpJsrct|jD]'}	tj|#t$rY$wxYwg|jdd<dSN)rr3r%removeOSError)r5fns  rtearDownzSocketServerTest.tearDownNsf/		B
	"







s.
;;c|tjkr	tdfSd}tjd|}|j||S)Nrzunix_socket.)prefixdir)socketAF_INETHOSTtempfilemktempr3append)r5protor?r;s    rpickaddrzSocketServerTest.pickaddrXsOFN""!9CC@@@BO""2&&&Irc	TGdd|}Gdd|}trtd	|||}n5#t$r(}|d|d|d|Yd}~nd}~wwxYw||j|j|S)	NceZdZdZdS).SocketServerTest.make_server.<locals>.MyServerc.||r8)
close_requestr5requestclient_addresss   rhandle_errorz;SocketServerTest.make_server.<locals>.MyServer.handle_errores""7+++rN)rrrrPrrrMyServerrJds#




rrQceZdZdZdS)/SocketServerTest.make_server.<locals>.MyHandlercl|j}|j|dSr8)rfilereadlinewfilewrite)r5lines  rhandlez6SocketServerTest.make_server.<locals>.MyHandler.handlejs1z**,,
  &&&&&rNrrrrZrrr	MyHandlerrSis#
'
'
'
'
'rr\zcreating serverzCannot create server (z, z): )rprintPermissionErrorskipTestassertEqualserver_addressr@getsockname)r5addrsvrclshdlrbaserQr\serveres        rmake_serverzSocketServerTest.make_servercs					v			
	'	'	'	'	'	'	'	'
,E+,,,	-XdI..FF	-	-	-MMM!66444,
-
-
-
-
-
-
-
-	-	
.
0I0I0K0KLLL
sA
A3A..A3c||||j||}|j}tr td|td|t
jd|z|jddi}d|_	|
trtdtd	D]*}trtd
|||j|+trtd||
||d|jt$r4t'|t(jr||jtrtd
dSdS)NzADDR =zCLASS =z
%s serving
poll_interval{Gz?nametargetkwargsTzserver runningztest clientzwaiting for serverdone)rhrGaddress_familyrarr]	threadingThread
serve_foreverdaemonstartrangeshutdownjoinserver_closer`r@filenoHAVE_FORKING
isinstancesocketserverForkingMixInassertFalseactive_children)r5rdretestfuncrfrctis        r
run_serverzSocketServerTest.run_serverxs!!$--0E"F"F"((44$	%(D!!!)V$$$&'$D)

+
+
+				+E*+++q	2	2A/mQ///HV*D1111/E.///	V]1133444	5Jv|/HII	5
V3444!E&MMMMM!!rcptj|tj5}|||tt|dx}}|rd|vrt|d}||z
}|rd|v||tddddS#1swxYwYdSNd
)r@SOCK_STREAMconnectsendallTEST_STRrr`r5rFrcsbufdatas      rstream_examinezSocketServerTest.stream_examines
]5&"4
5
5	,
IIdOOO
IIh C(C$
5++q#t
5++
S(+++	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,sA>B++B/2B/ctj|tj5}tr8|tjkr(||||t|t|dx}}|rd|vrt|d}||z
}|rd|v|	|tddddS#1swxYwYdSr)
r@
SOCK_DGRAMHAVE_UNIX_SOCKETSr
bindrGsendtorrr`rs      r
dgram_examinezSocketServerTest.dgram_examines$
]5&"3
4
4	, 
-Ufn%<%<t}}U++,,,
HHXt$$$ C(C$
5++q#t
5++
S(+++	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,sB)CCCcf|tjtj|jdSr8)rr	TCPServerStreamRequestHandlerrr4s rtest_TCPServerzSocketServerTest.test_TCPServers3.$9+	-	-	-	-	-rcf|tjtj|jdSr8)rrThreadingTCPServerrrr4s rtest_ThreadingTCPServerz(SocketServerTest.test_ThreadingTCPServers37$9+	-	-	-	-	-rct|5|tjtj|jddddS#1swxYwYdSr8)r-rrForkingTCPServerrrr4s rtest_ForkingTCPServerz&SocketServerTest.test_ForkingTCPServers
t
$
$	1	1OOL9(= /
1
1
1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	11AAAcf|tjtj|jdSr8)rrUnixStreamServerrrr4s rtest_UnixStreamServerz&SocketServerTest.test_UnixStreamServers35$9+	-	-	-	-	-rcf|tjtj|jdSr8)rrThreadingUnixStreamServerrrr4s rtest_ThreadingUnixStreamServerz/SocketServerTest.test_ThreadingUnixStreamServers3>$9+	-	-	-	-	-rct|5|ttj|jddddS#1swxYwYdSr8)r-rrrrrr4s rtest_ForkingUnixStreamServerz-SocketServerTest.test_ForkingUnixStreamServerst
$
$	1	1OO3(= /
1
1
1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1	1s,A		A
A
cf|tjtj|jdSr8)rr	UDPServerDatagramRequestHandlerrr4s rtest_UDPServerzSocketServerTest.test_UDPServers3.$;*	,	,	,	,	,rcf|tjtj|jdSr8)rrThreadingUDPServerrrr4s rtest_ThreadingUDPServerz(SocketServerTest.test_ThreadingUDPServers37$;*	,	,	,	,	,rct|5|tjtj|jddddS#1swxYwYdSr8)r-rrForkingUDPServerrrr4s rtest_ForkingUDPServerz&SocketServerTest.test_ForkingUDPServers
t
$
$	0	0OOL9(? .
0
0
0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0rcf|tjtj|jdSr8)rrUnixDatagramServerrrr4s rtest_UnixDatagramServerz(SocketServerTest.test_UnixDatagramServers37$;*	,	,	,	,	,rcf|tjtj|jdSr8)rrThreadingUnixDatagramServerrrr4s r test_ThreadingUnixDatagramServerz1SocketServerTest.test_ThreadingUnixDatagramServers3@$;*	,	,	,	,	,rc\|ttj|jdSr8)rr!rrrr4s rtest_ForkingUnixDatagramServerz/SocketServerTest.test_ForkingUnixDatagramServers3	
1$;*	,	,	,	,	,rcGddtj}Gddtj}g}tdD]Q}|tdf|}tjd|jdd	i
}d|_|	||fR|D]-\}}|
|.|D]-\}}||
.dS)NceZdZdS)0SocketServerTest.test_shutdown.<locals>.MyServerNrrrrrQrDrrQceZdZdS)1SocketServerTest.test_shutdown.<locals>.MyHandlerNrrrrr\rrrr\rzMyServer servingrjrkrlT)rrrryrBrtrurvrwrErxrzr{r|)r5rQr\threadsrrrs       r
test_shutdownzSocketServerTest.test_shutdownsB					|-								9			r	#	#A$I..A ''-///AAHNNAq6""""		DAq
GGIII
JJLLLL		DAq
FFHHH
NN		rcGddtjtj}|tdfd}|dS)NceZdZdS)9SocketServerTest.test_close_immediately.<locals>.MyServerNrrrrrQrrrrQrcdSr8rrrr<lambda>z9SocketServerTest.test_close_immediately.<locals>.<lambda>sTr)rThreadingMixInrrBr|)r5rQrfs   rtest_close_immediatelyz'SocketServerTest.test_close_immediatelyse					|2L4J			4)\\22rctdD]Z}|t5tjt
dftjdddn#1swxYwY[dS)Nirq)ryassertRaises
OverflowErrorrrrBr)r5rs  rtest_tcpserver_bind_leakz)SocketServerTest.test_tcpserver_bind_leaks
t	J	JA""=11
J
J&bz'3'HJJJ
J
J
J
J
J
J
J
J
J
J
J
J
J
J
J	J	Js'AA#	&A#	ctjtdftj5}	dddn#1swxYwY|d|jdS)Nrrq)rrrBrr`r@r})r5rfs  rtest_context_managerz%SocketServerTest.test_context_manager$s

#T1I$0$EGG	JP																
V]113344444s599N)rrr__doc__r6r<rGrhrreap_threadsrrrrrrequires_forkingrrequires_unix_socketsrrrrrrrrrrrrrrrrr/r/Gs""   			*" " "#" "D,,,	,	,	,---
---
111---
---
111,,,
,,,
000,,,
,,,
,,,
"#"2JJJ55555rr/cbeZdZdZdZdZdZdZdZe	dZ
e	dZd	Zd
S)ErrorHandlerTestzTest that the servers pass normal exceptions from the handler to
    handle_error(), and that exiting exceptions like SystemExit and
    KeyboardInterrupt are not passed.cBtjtjdSr8)runlinkTESTFNr4s rr<zErrorHandlerTest.tearDown0s)*****rcZtt|ddSNThandled)BaseErrorTestServer
ValueErrorcheck_resultr4s rtest_sync_handledz"ErrorHandlerTest.test_sync_handled3s-J'''$'''''rc|t5ttdddn#1swxYwY|ddSNFr)r
SystemExitrrr4s rtest_sync_not_handledz&ErrorHandlerTest.test_sync_not_handled7s


z
*
*	,	,
+++	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,%(((((s<AAcZtt|ddSr)ThreadingErrorTestServerrrr4s rtest_threading_handledz'ErrorHandlerTest.test_threading_handled<s- ,,,$'''''rctj5}tt|d||jtddddS#1swxYwYdSr)rcatch_threading_exceptionrrrassertIsexc_type)r5cms  rtest_threading_not_handledz+ErrorHandlerTest.test_threading_not_handled@s

7
9
9	3R$Z000e,,,MM"+z222		3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3sAA,,A03A0cZtt|ddSr)ForkingErrorTestServerrrr4s rtest_forking_handledz%ErrorHandlerTest.test_forking_handledGs-z***$'''''rcZtt|ddSr)rrrr4s rtest_forking_not_handledz)ErrorHandlerTest.test_forking_not_handledLs-z***%(((((rcttj5}dd|zz}|||ddddS#1swxYwYdS)NHandler called
Error handled
)openrrr`read)r5rlogexpecteds    rrzErrorHandlerTest.check_resultQs
)"
#
#	3s),=,GGHSXXZZ222	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3s1AAAN)
rrrrr<rrrrrrrrrrrrr+s))+++((()))
(((333((()))33333rrc*eZdZfdZdZdZxZS)rc||_ttdfttj|j5	dddn#1swxYwY	||	n#|	wxYw|
dSr1)	exceptionsuper__init__rB
BadHandlerr@create_connectionrahandle_requestr|	wait_done)r5r	__class__s  rrzBaseErrorTestServer.__init__Xs"
$J///

%d&9
:
:																		 !!!DsAA"%A"*BB)cttjd5}|dddddS#1swxYwYdS)Nar)rrrrX)r5rNrOrs    rrPz BaseErrorTestServer.handle_errorcs
)"C
(
(	)CII'(((	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)s>AAcdSr8rr4s rrzBaseErrorTestServer.wait_donegsr)rrrrrPr
__classcell__r	s@rrrWsV					)))






rrceZdZdZdS)rcttjd5}|ddddn#1swxYwY|jd)Nrrz
Test error)rrrrXrfr)r5rs  rrZzBadHandler.handlels
)"C
(
(	*CII()))	*	*	*	*	*	*	*	*	*	*	*	*	*	*	*k##L111s=AANr[rrrrrks#22222rrc.eZdZfdZfdZdZxZS)rcjtj|_tj|i|dSr8)rtEventrrrrr5poskwr	s   rrz!ThreadingErrorTestServer.__init__ts4O%%	#$$$$$$rcltj|i||jdSr8)rshutdown_requestrrsetrs   rrz)ThreadingErrorTestServer.shutdown_requestxs2  #,,,,	

rc8|jdSr8)rrwaitr4s rrz"ThreadingErrorTestServer.wait_done|s	r)rrrrrrr
rs@rrrrs`%%%%%rrceZdZdS)rNrrrrrrsrrceZdZdZdZdS)SocketWriterTestcGddtj}tjtdf|}||jt
j|jtjtj	}|5|
|jdddn#1swxYwY||
|jtj||j|jdS)NceZdZdZdS)-SocketWriterTest.test_basics.<locals>.Handlerc|j|j_|j|j_|j|j_dSr8)rWrfr}wfile_filenorNrequest_filenor4s rrZz4SocketWriterTest.test_basics.<locals>.Handler.handlesD$(J!+/:+<+<+>+>(-1\-@-@-B-B***rNr[rrrHandlerr!s(
C
C
C
C
Crr%r)rrrrB
addCleanupr|r@rsrIPPROTO_TCPrrarassertIsInstancerWioBufferedIOBaser`r#r$)r5r%rfrs    rtest_basicszSocketWriterTest.test_basicssF	C	C	C	C	Cl7	C	C	C'q	7;;+,,,M!6#5v7I
K
K
	-	-
IIf+,,,	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-flB,=>>>,f.CDDDDDsB''B+.B+c	
tjtdGddtj}t	jtdf||j	tjfd}tjtj|}|tjtj|d
d	tj
	
fd}tj|}|||jt)
|
d|jd	|jtjj|	tjjd
z
dS)Npthread_killceZdZdZdS),SocketWriterTest.test_write.<locals>.Handlerc|jd|j_|j|j_dtjj	z}|j||j_
dS)Nwrite data
)rWrXrfsent1rUrVreceivedr(r)
SOCK_MAX_SIZEsent2)r5	big_chunks  rrZz3SocketWriterTest.test_write.<locals>.Handler.handlesc$(J$4$4_$E$E!'+z':':'<'<$!DL$>>	$(J$4$4Y$?$?!!!rNr[rrrr%r/s(
@
@
@
@
@rr%rc0dSr8)r)signumframeinterrupteds  rsignal_handlerz3SocketWriterTest.test_write.<locals>.signal_handlersOOrc`tjjtjtj}|5|d5}|j||d|	d	tjtdrn;t|	dddn#1swxYwYddddS#1swxYwYdS)Nrbclient response
rT)r)r@rsrr'makefilerrarVrrsignalSIGUSR1rfloatlen)rreaderr;main_threadr-	received2	response1rfs  r
run_clientz/SocketWriterTest.test_write.<locals>.run_clients
f3V5G"$$A
/
/AJJt$$
/		&/000"OO--			.///C    Lfn==="''a'99
 

..	#
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/s6D#	B6D?D#D	D#D	D##D'*D')rnr1r?r)r(r)
get_attributerBrrrrBr&r|rtrrC	get_identrurxrr{r`r3rEr4r6r5)r5r%r<originalrJ
backgroundr;rGr-rHrIrfs      @@@@@@r
test_writezSocketWriterTest.test_writes|11&.II	@	@	@	@	@l7	@	@	@'q	7;;+,,,o''					=@@
v~x@@@		)++	/	/	/	/	/	/	/	/	/	/,%Z888
s9~~666O444*>???t|'ABBBDL$>$DEEEEErN)rrrr+rOrrrrrs:EEE"8F8F8F8F8Frrc eZdZdZdZdZdS)MiscTestCasec g}ttD]V}|ds?tt|}t|dddkr||W|tj|dS)N_rr)r?r
startswithgetattrrEassertCountEqual__all__)r5rrm
mod_objects    rtest_allzMiscTestCase.test_alls%%	*	*D??3''
*$\488
:|T::nLLOOD)))l2H=====rcGddtj}|tdftj}t	j|jtj}||j|	|
||jd|
dS)NceZdZdZdZdZdS)SMiscTestCase.test_shutdown_request_called_if_verify_request_false.<locals>.MyServercdS)NFrrMs   rverify_requestzbMiscTestCase.test_shutdown_request_called_if_verify_request_false.<locals>.MyServer.verify_requestsurrcf|xjdz
c_tj||dS)Nr@)shutdown_calledrrr)r5rNs  rrzdMiscTestCase.test_shutdown_request_called_if_verify_request_false.<locals>.MyServer.shutdown_requests5$$)$$&77gFFFFFrN)rrrr^r`rrrrrQr\s>


 O
G
G
G
G
GrrQrr@)rrrBrr@rsrrracloserr`r`r|)r5rQrfrs    r4test_shutdown_request_called_if_verify_request_falsezAMiscTestCase.test_shutdown_request_called_if_verify_request_falses	G	G	G	G	G|-	G	G	G4)\%FGGM&/1CDD			&'(((				/333rcGddtjtj}|tdftj}tdD]G}t
j|j5|	dddn#1swxYwYH|
t|jd|
dS)z
        In #37193, users reported a memory leak
        due to the saving of every request thread. Ensure that
        not all threads are kept forever.
        ceZdZdS)2MiscTestCase.test_threads_reaped.<locals>.MyServerNrrrrrQrerrrQr
N)rrrrBrryr@rrar
assertLessrE_threadsr|)r5rQrfrs    rtest_threads_reapedz MiscTestCase.test_threads_reapeds					|2L4J			4)\%FGGr	(	(A)&*?@@
(
(%%'''
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(FO,,b111s+BB	B	N)rrrrYrbrirrrrQrQsA>>>*rrQ__main__)6r
contextlibr)r%selectrBr@rCrtunittestrtest.supportr(rrrrrr)requiresrequires_working_socketrrBhasattrr
skipUnlessrhas_fork_supportr~rr
SHORT_TIMEOUTrrrrrr!contextmanagerr-TestCaser/rrrBaseRequestHandlerrrrrrrQrmainrrr<module>rys								











////////""""""&&&&&&))))))i   $$D$111GFI..++,=,CEE|,&8&|5GHH}!\78888






,";"."?







L$=$0$C


444a5a5a5a5a5x(a5a5a5H)3)3)3)3)3x()3)3)3X




,0


(222220222|:





!:<O


JFJFJFJFJFx(JFJFJFZ/////8$///dzHMOOOOOr