python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_fileio.cpython-311.opt-2.pyc

eOddlZddlZddlZddlZddlZddlmZddlmZddlm	Z	ddl
mZmZm
Z
mZmZddlmZmZmZmZddlmZddlmZddlZddlZGd	d
ZGddeejZGd
deejZGddZGddeejZ GddeejZ!dZ"e#dkrej$dSdS)N)array)proxywraps)cpython_only	swap_attr
gc_collect
is_emscriptenis_wasi)TESTFNTESTFN_ASCIITESTFN_UNICODEmake_bad_fd)check_warnings)UserListc*eZdZdZdZdZdZdZej	e
ddZdZd	Z
d
ZdZdZd
ZdZdZdZdZdZdZdZdZej	ejdkddZdZdZedZedZ edZ!edZ"edZ#ed Z$ed!Z%ed"Z&ed#Z'ed$Z(d%Z)ed&Z*ed'Z+ed(Z,d)S)*
AutoFileTestscF|td|_dSNw)FileIOrfselfs D/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_fileio.pysetUpzAutoFileTests.setUpsVS))cx|jr|jtjtdSN)rcloseosremoverrs rtearDownzAutoFileTests.tearDowns16	FLLNNN
	&rct|j}|tt	d||j||jd|_t|	tt|ddS)N
tell)rrwritebytesrangeassertEqualr&r r	assertRaisesReferenceErrorgetattr)rps  rtestWeakRefszAutoFileTests.testWeakRefs$s$&MM	eBii  !!!111.'1f=====rc|jttd||jd|jd||jd|jd||jd|jdd||jd|jdd||jd|jdd||jddS)	Nrr%)rr'r(r)r*r&seekrs rtestSeekTellzAutoFileTests.testSeekTell.sNU599%%&&&+++A***B+++Aq+++B+++B+++++rc|j}||jd||jddD],}|t
tft||d-dS)NwbF)modeclosedoops)rr*r;r<r+AttributeError	TypeErrorsetattr)rrattrs   rtestAttributeszAutoFileTests.testAttributes<sF&&&5)))%	8	8D~y9%q$
8
8
8
8	8	8rz WASI does not expose st_blksize.ctj}ttdr<tj|j}t|d|}||jj	|dS)Nfstat
st_blksize)
ioDEFAULT_BUFFER_SIZEhasattrr!rDrfilenor-r*_blksize)rblksizefsts   rtestBlksizezAutoFileTests.testBlksizeHsh(2w	:(46==??++Cc<99G'22222rc|jtgd|jt	d}|td5}||}dddn#1swxYwY||d||ddS)Nr3r6rabcdefghrefgh)	rr'r(r 	bytearrayrrreadintor*)rbarns    rtestReadintoByteArrayz#AutoFileTests.testReadintoByteArraySsU>>>**+++
{
#
#
[[
%
%	

2A															4555As-BBBc|jtgd|jt	td}|td5}||}dddn#1swxYwY|	|d|	|dt	td
dddg}|td5}||}dddn#1swxYwY|	t|d|	|ddS)	NrOrQrRrSrTHr6)shape)rr'r(r 
memoryviewrUrrrVr*cast)rmrrXs    r_testReadintoMemoryviewz%AutoFileTests._testReadintoMemoryview]sU>>>**+++y--..
[[
%
%	

1

A															3444Ay--..33C1v3FF
[[
%
%	

1

A															q#:;;;As$:BB #B !EE
Ec|jtgd|jt	dd}|td5}||}dddn#1swxYwY||t	dgd||dt	dd}|td5}||}dddn#1swxYwY||t	dgd||dt	d	d}|td5}||}dddn#1swxYwY||t	d	d
||ddS)NrOBrQrR)r3r6rrPefghrTb)r3r6rrcrdrerfIrS)	rr'r(r rrrrVr*)rarrXs    r_testReadintoArrayz AutoFileTests._testReadintoArraymstU>>>**+++#{##
[[
%
%	

1

A															E#'I'I'IJJKKKA#{##
[[
%
%	

1

A															E#'H'H'HIIJJJA#{##
[[
%
%	

1

A															E#'>??@@@As6.BBBD$$D(+D(F88F<?F<cddg}|j||j|td|_|j}||ddSNs123s456rbs123456)r
writelinesr rrreadr*rlbufs   rtestWritelinesListz AutoFileTests.testWritelinesListsq
V!VT**fkkmmi(((((rc,tddg}|j||j|t
d|_|j}||ddSrm)rrror rrrpr*rqs   rtestWritelinesUserListz$AutoFileTests.testWritelinesUserListsyff%&&!VT**fkkmmi(((((rc|t|jjgd|t|jjd|t|jjddS)N)r3r6abc)r+r?rrors rtestWritelinesErrorz!AutoFileTests.testWritelinesErrorsc)TV%6			BBB)TV%6===)TV%6>>>>>rc|jd|j|td|_||jdd|jd||jdd||j	dddgdS)Ns
hi
bye
abcrRrshi
sbye
abc)
rr'r rrr*rpr7readline	readlinesrs rtest_none_argszAutoFileTests.test_none_argss_%%%VS))T**O<<<A..888))$//(F1CDDDDDrcR|t|jjddS)NzHello!)r+r?rr'rs rtest_rejectzAutoFileTests.test_rejects$)TV\8<<<<<rc
|t|jd|jd|jjd|jjd|j`|t|jd|jd|jd|jjd|j|t|jd|jddS)N<
.FileIO name= mode=z closefd=True>z.FileIO fd=z.FileIO [closed]>)r*reprr
modulenamenamer;rIr rs rtestReprzAutoFileTests.testReprsdf///46;;;E	F	F	F
FKdf///46==????DFKKKI	J	J	J	
df37???D	F	F	F	F	Frctjttj}	||dd5}|t
|d|jd|jd|j	ddddn#1swxYwYtj
|dS#tj
|wxYw)NrRF)closefdrrrz closefd=False>)r!openrO_RDONLYrr*rrrr;r )rfdrs   rtestReprNoCloseFDzAutoFileTests.testReprNoCloseFDs
WVR[
)
)	Re44
D  a"&///16661666"CDDD
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D

HRLLLLLBHRLLLLs.B(=B;B(BB(BB((B>ct|jd|j5|t5t	|jdddn#1swxYwYddddS#1swxYwYdS)Nr)rrr+RuntimeErrorrrs rtestRecursiveReprzAutoFileTests.testRecursiveReprs
tvvtv
.
.		""<00

TV














																		s4A0AA0A	A0A	 A00A47A4c<|j}||||j|t
|jd|||j|	td}|t|jd||j|||jdS)Nr%rR)
rassertFalseisattyr<r+
ValueErrorrpr 
assertTruerrr?rVrrs  r
testErrorszAutoFileTests.testErrorssF$$$"""*afb111				!!!KK$$)QZ444"""				!!!!!rcZgd}|j||jj|D]2}t	|j|}|t|3|t|jj|t|jjtd|t|jj
|t|jj
d|t|jj|t|jjd|t|jj|t|jjddS)N)rIrseekablereadablewritablerpreadallr}r~r&truncateflushr3rr)
rr rr<r-r+rr?rVrUr7r'ro)rmethods
methodnamemethods    rtestMethodszAutoFileTests.testMethodssY000	

&&&!	2	2JTVZ00Fj&1111)TV_555*dfoy||DDD)TV[111*dfk1555)TV\222*dflC888)TV%6777*df&7=====rc	|dd|ddS#t$rA}||jd||jdYd}~dSd}~wwxYw)N.rRShould have raised OSErrorr)rfailOSErrorassertNotEqualerrnor*filename)res  rtestOpendirzAutoFileTests.testOpendirs	4KKS!!!

II233333		.	.	.+++QZ---------	.s/
A:6A55A:ntz&test only works on a POSIX-like systemcPtjdtj}|t5}||ddddn#1swxYwYtj|||jj	tj
dS)NrrR)r!rrr+rrr r*	exceptionrEISDIR)rrcms   r
testOpenDirFDzAutoFileTests.testOpenDirFDs
WS"+
&
&


w
'
'	!2KKC   	!	!	!	!	!	!	!	!	!	!	!	!	!	!	!
+U\:::::sAA!$A!c<tfd}|S)Nc0|j}tj|	||	|jdS#t$rYdSwxYw#	|jw#t$rYwwxYwxYwr)rr!r rIr)rrfuncs  rwrapperz'AutoFileTests.ClosedFD.<locals>.wrappersAHQXXZZ   
T1


FLLNNNNNDDFLLNNNNDs@A)A
A&%A&)B+BB
BBBBrrrs` rClosedFDzAutoFileTests.ClosedFDs3	t
	
	
	
	

	rc<tfd}|S)Nc|j}tj|	|||dn<#t
$r/}||jtjYd}~nd}~wwxYw	|jdS#t
$rYdSwxYw#	|jw#t
$rYwwxYwxYw)Nr)	rr!r rIrrr*rEBADF)rrrrs   rrz-AutoFileTests.ClosedFDRaises.<locals>.wrapper
sAHQXXZZ   

T1


		67777
7
7
7  %+66666666
7
FLLNNNNNDDFLLNNNNDsdAB;
B%BB;BB;B**
B87B8;C'=CC'
C$!C'#C$$C'rrs` rClosedFDRaiseszAutoFileTests.ClosedFDRaises	s3	t				
	rc.|dSr)r rs  rtestErrnoOnClosezAutoFileTests.testErrnoOnCloses						rc0|ddS)Na)r'rs  rtestErrnoOnClosedWritez$AutoFileTests.testErrnoOnClosedWrite s	




rc0|ddSNr)r7rs  rtestErrnoOnClosedSeekz#AutoFileTests.testErrnoOnClosedSeek$s	q					rc.|dSr)r&rs  rtestErrnoOnClosedTellz#AutoFileTests.testErrnoOnClosedTell(s	rc0|ddSr)rrs  rtestErrnoOnClosedTruncatez'AutoFileTests.testErrnoOnClosedTruncate,s	

1




rc.|dSr)rrs  rtestErrnoOnClosedSeekablez'AutoFileTests.testErrnoOnClosedSeekable0	

rc.|dSr)rrs  rtestErrnoOnClosedReadablez'AutoFileTests.testErrnoOnClosedReadable4rrc.|dSr)rrs  rtestErrnoOnClosedWritablez'AutoFileTests.testErrnoOnClosedWritable8rrc.|dSr)rIrs  rtestErrnoOnClosedFilenoz%AutoFileTests.testErrnoOnClosedFileno<s	




rcV||ddS)NF)r*rrs  rtestErrnoOnClosedIsattyz%AutoFileTests.testErrnoOnClosedIsatty@s&U+++++rc	|jn#t$rYnwxYw|td|_tj|j|jS)NrR)rr rrrr!rIrs r
ReopenForReadzAutoFileTests.ReopenForReadDsn	FLLNNNN			D	VS))
!!!v
s
))cX|}|ddS)Nr3)rrprs  rtestErrnoOnClosedReadz#AutoFileTests.testErrnoOnClosedReadMs&  	q					rcV|}|dSr)rrrs  rtestErrnoOnClosedReadallz&AutoFileTests.testErrnoOnClosedReadallRs$  			rcx|}tdd}||dS)Nrgs
xxxxxxxxxx)rrrV)rrrjs   rtestErrnoOnClosedReadintoz'AutoFileTests.testErrnoOnClosedReadintoWs5  #w	

1




rN)-__name__
__module____qualname__rr#r/r8rBunittestskipIfrrMrYr`rkrtrvrzrrrrrrrrr!rrrrrrrrrrrrrrrrrrrrrrs!***
>>>,,,
8
8
8X_W@AA33BA3 ,))))))???
EEE===
F
F
F""">>>,
4
4
4X_RW_&NOO;;PO;


&^^^^^XXXX,,X,^^^rrc eZdZejZdZdS)CAutoFileTests_ioN)rrrrrrrrrrr]s
ZFJJJrrc eZdZejZdZdS)PyAutoFileTests_pyioN)rrrrrrrrrrras
\FJJJrrceZdZdZdZdZdZdZej	e
jdkddZd	Z
d
ZdZdZd
ZdZdZdZdZdS)OtherFileTestsc	|td}||d||d||d||td}||d||d||d||td}||d||d||d||d|tj	dkr!ts	|dd}||d||dtj	d	krUd
tj	vrGtj	ds(||d||d|n#t$rYnwxYwtjtdS#tjtwxYw)NrFTrRza+win32z/dev/ttyrjdarwinbsd)sunosaix)rrr*rrrr rsysplatformr

startswithrr!unlinkrs  r	testAbleszOtherFileTests.testAbleshs'	FC((AQZZ\\5111QZZ\\4000QZZ\\4000
GGIIIFC((AQZZ\\4000QZZ\\5111QZZ\\4000
GGIIIFD))AQZZ\\4000QZZ\\4000QZZ\\4000QXXZZ///
GGIII|w&&}&J44A$$QZZ\\5999$$QZZ\\4888|x//CL00<223CDD1((u===$$QXXZZ666GGIIIID	 
IfBIfs1H6M,9MC2M,
MM,
MM,,NcdD]Z}	|t|}||d|zK#t$rYWwxYwdS)N)raUzwU+rwrtz%r is an invalid file mode)rrr rr)rr;rs   rtestInvalidModeStringsz%OtherFileTests.testInvalidModeStringss1	?	?D
?KK--					6=>>>>	



	?	?sA
AAc	dD]\}|t|d5}||j|ddddn#1swxYwY]	tjtrt	jtdSdS#tjtrt	jtwwxYw)N))rr:)r:r:)zwb+rb+)zw+br)rjab)rr)ab+r)za+br)rRrn)rnrn)rr)zr+brrr3)rrr*r;r!pathexistsr)rmodesrs   rtestModeStringszOtherFileTests.testModeStringss
	"H
7
7
[[q227a$$QVU1X666777777777777777
7w~~f%%
"	&!!!!!
"
"rw~~f%%
"	&!!!!
"s/%B#"A	B#A	B#A	B##AC#c|ttd}|t	jtdSr)rstrrr r!rrs  rtestUnicodeOpenzOtherFileTests.testUnicodeOpens>KKFS))				
	&rctjd}||d}	|d|ttd5}||ddddn#1swxYwYtj	tdS#tj	twxYw)Nasciirr|rn)
r
encoderr'r rr*rpr!rrfnrs   r
testBytesOpenzOtherFileTests.testBytesOpens

 
)
)KKC  	$
GGFOOO
GGIIIlD))
3Q  6222
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
Il#####BIl####s/>C*)BCB##C&B#'CC utf-8z%test only works for utf-8 filesystemsc$	tjd}n-#t$r |dtzYnwxYw||d}	|d|ttd5}||	ddddn#1swxYwYtjtdS#tjtwxYw)Nrzcould not encode %r to utf-8rr|rn)rr
UnicodeEncodeErrorskipTestrr'r rr*rpr!rrs   rtestUtf8BytesOpenz OtherFileTests.testUtf8BytesOpens9	K&w//BB!	K	K	KMM8>IJJJJJ	KKKC  	&
GGFOOO
GGIIInd++
3q  6222
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
In%%%%%BIn%%%%s?'AA>C4)CC4CC4CC44Dcd}|t|j|d|t|jt|dddS)Nzfoobarrr	)r+rrr()rfn_with_NULs  rtestConstructorHandlesNULCharsz-OtherFileTests.testConstructorHandlesNULCharssP *dk;DDD*dk5g3N3NPSTTTTTrc(|t|jd|t|jt	t
jdkr3ddl}|t|jt	dSdS)Nirr)	r+rrrrrrmsvcrt
get_osfhandle)rrs  r
testInvalidFdzOtherFileTests.testInvalidFds}*dk3777'4;

>>><7""MMMgv';[]]KKKKK#"rcld}	|t|}||d|zdS#t$r\}|jddkr:t
|}t|vs||vr$|d|zYd}~dSYd}~dSYd}~dSd}~wwxYw)Nqwertyzno error for invalid mode: %srz&bad error message for invalid mode: %s)rrr rrargsr)rbad_modermsgss     rtestBadModeArgumentz"OtherFileTests.testBadModeArguments	BFH--A
GGIIIII5@AAAAA	L	L	Lx{aHHQ;;(!"3"3IIFJKKKKKKKKK "3"3"3"3"3"3	LsA

B3AB..B3c	|td}|tt	td||d|d||d||	dtjd|d||d||	dtjd|dS)Nrr%r2rr4)
rrr'r(rUr)r*r&rr7rFSEEK_ENDr rs  rtestTruncatezOtherFileTests.testTruncatesKK$$	ib		**++,,,2&&&	

1


2&&&2;//333	

21%%%2;//444						rcfd}	|tjtdS#tjtwxYw)Ncttd}|tt	d|td}|d}|tt	dkrd|z|dkr*d|z|	|dkr*d|z|tjt}|dkrd|zdSdS)	Nrzr+r2z(Read on file opened for update failed %rzFile pos after read wrong %dz!File pos after ftruncate wrong %dz"File size after ftruncate wrong %d)
rrr'r(r)r rprr&rr!rgetsize)rdatasizers   r	bug801631z7OtherFileTests.testTruncateOnWindows.<locals>.bug801631sSFC((A
GGE%))$$%%%
GGIIIF4((A66!99DuU1XX&&		DtKLLLvvxx1}}		816688CDDD
JJLLLvvxx1}}		=HIII
GGIII7??6**Dqyy		>EFFFFFyr)r!rr)rr*s` rtestTruncateOnWindowsz$OtherFileTests.testTruncateOnWindowss]	G	G	G	G	G.	IKKKIfBIfs	
-Ac6	ttd}|d|ttd}|d|ttd}|}|||d	t
jtdS#YdSxYw#	t
jtw#YwxYwxYw)Nr:sspamrseggsrnsspameggs)rrr'r rpr*r!r)rrds   r
testAppendzOtherFileTests.testAppends	VT""A
GGG
GGIIIVT""A
GGG
GGIIIVT""AA
GGIIIQ,,,
	&!!!!!

	&!!!!
s0CC5C--C25D7DDDDcL|t|jddddS)N1r)r+r?rrs rtestInvalidInitzOtherFileTests.testInvalidInit&s&)T[#q!<<<<<rctd5}||jg|t|jg||jg|t|jdd||jgddddS#1swxYwYdS)NTquietz/some/invalid/namer)rr*warningsr+r?rr)rrs  rtestWarningszOtherFileTests.testWarnings)s
$
'
'
'	-1QZ,,,ib999QZ,,,j$+7KTRRRQZ,,,	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-sBB33B7:B7cGddtGfdd|jtjttj}||tj|dS)NceZdZdS)=OtherFileTests.testUnclosedFDOnException.<locals>.MyExceptionN)rrrrrrMyExceptionr92srr:c$eZdZfdZxZS):OtherFileTests.testUnclosedFDOnException.<locals>.MyFileIOcn|dkrdt|||S)Nrzblocked setting name)super__setattr__)rrvaluer:MyFileIO	__class__s   rr?zFOtherFileTests.testUnclosedFDOnException.<locals>.MyFileIO.__setattr__4s=6>>%+&<===Xt,,88uEEEr)rrrr?
__classcell__)rBr:rAs@rrAr<3sN
F
F
F
F
F
F
F
F
F
F
FrrA)	Exceptionrr!r__file__rr+r )rrr:rAs  @@rtestUnclosedFDOnExceptionz(OtherFileTests.testUnclosedFDOnException1s*****)***	F	F	F	F	F	F	F	Ft{	F	F	F
WXr{
+
++x444
rN)rrrrrrrr
rrrgetfilesystemencodingrrrr r#r+r.r1r6rFrrrrrfs2(((T	?	?	?
"
"
"
$
$
$X_.S.00G;<>>
&
&>>
&UUU
LLLBBB 


:$===---					rrc<eZdZejZdZedZdZdS)COtherFileTestsrcddl}|t|j|jdz|t|j|jdz
dS)Nrr3)	_testcapir+r?rINT_MAXINT_MIN)rrKs  rtestInvalidFd_overflowz&COtherFileTests.testInvalidFd_overflowAsZ	)T[)2Ca2GHHH)T[)2Ca2GHHHHHrcJ|td5}|}dddn#1swxYwYtjt5}|}dddn#1swxYwY|||dS)Nrn)rrErpr	open_coder*)rrexpectedactuals    rtest_open_codezCOtherFileTests.test_open_codeHs[[4
(
(	 AvvxxH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 
]8
$
$	VVXXF															6*****s!=AA!BB	BN)	rrrrrrrrNrSrrrrIrI=sK
ZFJII\I+++++rrIc&eZdZejZdZdZdS)PyOtherFileTestsrc|td5}|}dddn#1swxYwYtd5}t	jt5}|}dddn#1swxYwY|||||jgddddS#1swxYwYdS)NrnTr3)	rrErprr_open_code_with_warningr*rr5)rrrQrrRs     rrSzPyOtherFileTests.test_open_codeVs[[4
(
(	 AvvxxH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 
$
'
'
'	01.x88
"A
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"Xv...
B///	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0sE=AAC2BCB	CB	4CC #C N)rrrrrrrSrrrrUrURs/
\FJ
0
0
0
0
0rrUctjtrtjtdSdSr)r!rrrrrrrtearDownModulerYcs:
w~~f
	&r__main__)%rr!rFrrrweakrefr	functoolsrtest.supportrrr	r
rtest.support.os_helperrr
rrtest.support.warnings_helperrcollectionsrrrrTestCaserrrrIrUrYrmainrrr<module>rcsw


								877777      



BBBBBBBBH
]H$5mX%6
TTTTTTTTn+++++nh&7+++*00000~x'8000"zHMOOOOOr