python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_asynchat.cpython-311.pyc

e%ddlmZddlmZddlmZddlmZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZej
dZej
dZejd	ejZd
ZGdde	jZGd
dejZdZGddejZGddeZGddejZGddejZGddejZedkrejdSdS))support)
socket_helper)threading_helper)warnings_helperNasynchatasyncoreT)modulesQUIT
ceZdZdZdZdZdS)echo_serverctj|||_t	jtjtj|_tj	|j|_
d|_dSN)	threadingThread__init__eventsocketAF_INETSOCK_STREAMsockr	bind_portportstart_resend_event)selfrs  F/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_asynchat.pyrzecho_server.__init__s\!!$'''
M&.&2DEE	!+DI66	#'c|j|j|j\}}d|_t|jvr5|d}|sn|j|z|_t|jv5|jtd|_|j	r|j	
	|jrV||jd|j}tjd|j|d|_|jVn#YnxYw||jdS)NrrgMbP?)rlistenrsetacceptbufferSERVER_QUITrecvreplacerwaitsend
chunk_sizetimesleepclose)rconnclientdatans     rrunzecho_server.run(sW	
y''))f,,99Q<<D
+,DK	,,k))+s;;"	+#((***	+
.IIdk*:4?*:;<<
5!!!"k!""o+
.	D

	s
AD==EN)__name__
__module____qualname__r'rr/rrrrs9J'''rrcBeZdZdZdZejdkrdZdZdZ	dS)echo_clientctj|g|_|t
jt
j|t|f|
|d|_dSNr)r
async_chatrcontents
create_socketrrrconnectHOSTset_terminatorr!)r
terminatorserver_ports   rrzecho_client.__init__Jsq$$T***
6>6+=>>>dK()))J'''rcdSrr3rs rhandle_connectzecho_client.handle_connectRsrdarwincdSrr3rAs rhandle_exptzecho_client.handle_exptXsDrc&|xj|z
c_dSr)r!)rr-s  rcollect_incoming_dataz!echo_client.collect_incoming_data[strcR|j|jd|_dSr7)r9appendr!rAs rfound_terminatorzecho_client.found_terminator^s%
T[)))rN)
r0r1r2rrBsysplatformrErGrJr3rrr5r5Hsn


|x			rr5ctj}t|}|||t
jd||fS)N{Gz?)rEventrstartr%clearr(r))rss  rstart_echo_serverrSbs\OEEAGGIII	JJLLL	KKMMMJte8OrcleZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdS)TestAsynchatFc6tj|_dSr)rthreading_setup_threadsrAs rsetUpzTestAsynchat.setUpos(8::


rc,tj|jdSr)rthreading_cleanuprXrAs rtearDownzTestAsynchat.tearDownrs*DM::::rctj}t|}||_|||tjdt||j
}|d|d|z|d|z|tt|jddt!j|||jddgdS)NrNshello sworldI'm not dead yet!,use_pollcounttimeouthello world)rrOrr'rPr%rQr(r)r5rpushr"rloopusepollrjoin_threadassertEqualr9)rtermserver_chunkrrRcs      rline_terminator_checkz"TestAsynchat.line_terminator_checkus!!#				






4af%%	y	x$	#d*+++	{

t|3
DDD$Q'''n6J%KLLLLLrc<dD]}|d|dS)Nr
rmrls  rtest_line_terminator1z"TestAsynchat.test_line_terminator1s4	1	1A&&ua0000	1	1rc<dD]}|d|dS)Nros
rsrts  rtest_line_terminator2z"TestAsynchat.test_line_terminator2s4	3	3A&&w2222	3	3rc<dD]}|d|dS)Nrosqqqrsrts  rtest_line_terminator3z"TestAsynchat.test_line_terminator3s4	2	2A&&vq1111	2	2rcht\}}t||j}d}|||tt
|jddtj	||
|j|d|gdSNshello world, I'm not dead yet!
r_rNr`rSr5rrer"rrfrgrrhrir9)rtermlenrRrrlr-s      rnumeric_terminator_checkz%TestAsynchat.numeric_terminator_checks$&&5((2	t	{

t|3
DDD$Q'''d8G8n%566666rc0|ddS)NrrrAs rtest_numeric_terminator1z%TestAsynchat.test_numeric_terminator1s	
%%a(((((rc0|ddS)NrrAs rtest_numeric_terminator2z%TestAsynchat.test_numeric_terminator2s%%a(((((rct\}}td|j}d}|||tt
|jddtj	||
|jg|
|j|dSr|)
rSr5rrer"rrfrgrrhrir9r!rrRrrlr-s     rtest_none_terminatorz!TestAsynchat.test_none_terminators$&&5af%%2	t	{

t|3
DDD$Q'''R(((4(((((rcnt\}}td|j}d}t|t
zd}||t|j	ddtj|||j
dd	gdS)
Nrrhello world
I'm not dead yet!
)buffer_sizer_rNr`rdr^)rSr5rrsimple_producerr"push_with_producerrrfrgrrhrir9)rrRrrlr-ps      rtest_simple_producerz!TestAsynchat.test_simple_producers$&&5qv&&2$$T+%51$EE	Q

t|3
DDD$Q'''n6J%KLLLLLrc6t\}}td|j}d}||tzt
|jddtj	||
|jddgdS)Nrrrr_rNr`rdr^)rSr5rrr"rrfrgrrhrir9rs     rtest_string_producerz!TestAsynchat.test_string_producers$&&5qv&&2	T+-...

t|3
DDD$Q'''n6J%KLLLLLrcVt\}}td|j}|d|tt
|jddtj	||
|jgddS)Nrrshello world

I'm not dead yet!
r_rNr`)rdrr^r}rrRrrls    rtest_empty_linezTestAsynchat.test_empty_lines$&&5qv&&	4555	{

t|3
DDD$Q'''DDD	F	F	F	F	Frc,t\}}tj|_t	d|j}|d|t|t
|jdd|jtj|||jg|t%|jddS)Nrrrr_rNr`r)rSrrOrr5rrer"close_when_donerrfrgrrrhrir9
assertGreaterlenr!rs    rtest_close_when_donez!TestAsynchat.test_close_when_dones$&&5(00qv&&	2333	{	

t|3
DDD	
  """$Q'''R(((	
3qx==!,,,,,rcft\}}td|j}d}|||t	||t||t|jd|t|jd|tt
|jddtj
|||jgddS)	Nrrsbytes

unicoder_rNr`)bytesrr)rSr5rre	bytearray
memoryviewassertRaises	TypeErrorr"rrfrgrrhrir9rs     r	test_pushzTestAsynchat.test_pushs%&&5qv&&	t	y	z$   )QVR000)QVY777	{

t|3
DDD$Q'''%C%C%CDDDDDrN)r0r1r2rgrYr\rmrvrxrzrrrrrrrrrr3rrrUrUlsG;;;;;;MMM,111
333
222

7
7
7)))
))))))	M	M	MMMM
F
F
F---,EEEEErrUceZdZdZdS)TestAsynchat_WithPollTN)r0r1r2rgr3rrrrsGGGrrceZdZdZdS)TestAsynchatMockedctj}ttj|j_t	}|
|||jtjj
|d5}|dddn#1swxYwY||jdS)Nhandle_error)unittestmockMockBlockingIOErrorerrnoEAGAINr#side_effectrr8
set_socket
addCleanupdel_channelpatchobjecthandle_readassertFalsecalled)rr
dispatchererrors    rtest_blockingioerrorz'TestAsynchatMocked.test_blockingioerrors}!!## / = =	((**
d###
.///
]
 
'
'
N
C
C	%u""$$$	%	%	%	%	%	%	%	%	%	%	%	%	%	%	%&&&&&s/CCCN)r0r1r2rr3rrrrs#'''''rrceZdZdZdS)TestHelperFunctionsc|tddd|tddddS)Nzqwerty
z
r
qwertydkjfr)rirfind_prefix_at_endrAs rtest_find_prefix_at_endz+TestHelperFunctions.test_find_prefix_at_endsT44ZHH!LLL44\6JJANNNNNrN)r0r1r2rr3rrrrs(OOOOOrrceZdZdZdS)TestNotConnectedczt}|t|jddS)N)rr8r
ValueErrorr=)rr,s  r!test_disallow_negative_terminatorz2TestNotConnected.test_disallow_negative_terminators4$$&&*f&;R@@@@@rN)r0r1r2rr3rrrrs(AAAAArr__main__) testrtest.supportrrrrrrKrr(r
unittest.mockimport_deprecatedrrrequires_working_socketr<r"rrr8r5rSTestCaserUrrrrr0mainr3rr<module>rsl&&&&&&))))))((((((







-?,Z88,?,Z88t,,,,,,,,,)",,,\(%4TETETETETE8$TETETEnL'''''*'''OOOOO(+OOOAAAAAx(AAAzHMOOOOOr