python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_py_compile.cpython-312.opt-1.pyc

Αe-ddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZddl
mZmZdZdZGddee
j&ZGdd	ZGd
dee
j&ed
ZGddee
j&ed
ZGdde
j&Zedk(re
j4yy)N)support)	os_helper
script_helpercBtjfd}|S)z+Runs function with SOURCE_DATE_EPOCH unset.ctj5}|jd|i|cdddS#1swYyxYw)NSOURCE_DATE_EPOCH)rEnvironmentVarGuardunsetargskwargsenvfxns   H/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_py_compile.pywrapperz*without_source_date_epoch.<locals>.wrappers@

*
*
,	(II)*''	(	(	(s	9A	functoolswrapsrrs` rwithout_source_date_epochr%__S((NcBtjfd}|S)z)Runs function with SOURCE_DATE_EPOCH set.crtj5}d|d<|i|cdddS#1swYyxYw)N	123456789r)rr	rs   rrz'with_source_date_epoch.<locals>.wrappers>

*
*
,	('2C#$''	(	(	(s
-6rrs` rwith_source_date_epochrrrceZdZfdZxZS)SourceDateEpochTestMetact	|||||}t|D]F}|jdst	||}|rt|}nt
|}t|||H|S)Ntest_)super__new__dir
startswithgetattrrrsetattr)
mclsnamebasesdctsource_date_epochclsattrmethr	__class__s
         rr"zSourceDateEpochTestMeta.__new__&slgodD%5H	,Dw'sD)$4T:G7=GT7+	,
r)__name__
__module____qualname__r"
__classcell__)r/s@rrr%s
rrceZdZdZdZdZdZeje	jje	jxs%e	jje	jddZdZdZd	Zej&eje	j(d
k(dej*dZd
ZdZejej4j6dkDddZdZdZdZy)PyCompileTestsBasectjtj|_tj
j
|jd|_|jdz|_tjj|j|_tj
jtjd|_tj
j|jd}|rtj|t!|jd5}|j#ddddy#1swYyxYw)N)r#_test.pycrwx = 123
)tempfilemkdtemposgetcwd	directorypathjoinsource_pathpyc_path	importlibutilcache_from_source
cache_path
splitdrive	cwd_drivechdiropenwrite)selfdrivefiles   rsetUpzPyCompileTestsBase.setUp7s!))biik:77<<
C((3.
#..::4;K;KL++BIIK8;
""4#3#34Q7HHUO
$""C
(	$DJJ{#	$	$	$s1EEctj|j|jr t	j
|jyyN)shutilrmtreer?rIr=rJrMs rtearDownzPyCompileTestsBase.tearDownGs.

dnn%>>HHT^^$rc8tj|j|j|j	t
jj|j|jt
jj|jyrR)

py_compilecompilerBrC
assertTruer=r@existsassertFalserGrUs rtest_absolute_pathz%PyCompileTestsBase.test_absolute_pathLsX4++T]];t}}5689rcT	tj|jdz|j|jt5tj|j|jdddy#1swYyxYw#ttf$r|jdYywxYw)Nz.actualz.need to be able to create a symlink for a file)r=symlinkrCassertRaisesFileExistsErrorrXrYrBNotImplementedErrorOSErrorskipTestrUs rtest_do_not_overwrite_symlinksz1PyCompileTestsBase.test_do_not_overwrite_symlinksQs	DJJt}}y0$--@
""?3
D""4#3#3T]]C
D
D
D	$W-	LMMJK	Ls-B+A88B B'&B'z7requires os.devnull and for it to be a non-regular filec|jt5tj|jt
jdddy#1swYyxYwrR)r`rarXrYrBr=devnullrUs r&test_do_not_overwrite_nonregular_filesz9PyCompileTestsBase.test_do_not_overwrite_nonregular_files]sA



/	=t//<	=	=	=s/AActj|j|jtj
j
|jyrR)rXrYrBrZr=r@r[rGrUs rtest_cache_pathz"PyCompileTestsBase.test_cache_pathes34++,t78rctj|j5tjt
jj|jt
jj|jddd|jt
jj|j|jt
jj|jy#1swYzxYwrR)r
change_cwdr?rXrYr=r@basenamerBrCrZr[r\rGrUs rtest_cwdzPyCompileTestsBase.test_cwdis

!
!$..
1	@rww//0@0@A!ww//

>
@	@	
t}}5689		@	@sA%C>>Dctjtjj	|j
tjj	|j|jtjj|j|jtjj|jyrR)rXrYr=r@relpathrBrCrZr[r\rGrUs rtest_relative_pathz%PyCompileTestsBase.test_relative_pathpsu277??4+;+;<77??4==9	;t}}5689rntz/cannot control directory permissions on Windowsctj|j}tj|jtj	|jt5tj|j|jdddtj|j|jy#1swY4xYw#tj|j|jwxYwrR)r=statr?chmodS_IREADr`IOErrorrXrYrBrCst_mode)rMmodes  rtest_exceptions_propagatez,PyCompileTestsBase.test_exceptions_propagatevswwt~~&
.	3""7+
D""4#3#3T]]C
D
HHT^^T\\2
D
D
HHT^^T\\2s$C$+CCCC,C:ctjjtjjtd}tj5|jtj|dddd|jtjjtjj|y#1swYUxYw)Nbad_coding2.pyF)doraise)r=r@rAdirname__file__rcaptured_stderrassertIsNonerXrYr\r[rDrErF)rM
bad_codings  rtest_bad_codingz"PyCompileTestsBase.test_bad_codingsWW\\"''//(";=MN


$
$
&	Mj00UKL	MNN,,Z8:	;	M	Ms'CCcXtj|j|j|j	t
jj|j|jt
jj|jt|jd5}tjj|jdi}dddt
jj!drd}nd}|j#|y#1swY@xYw)Nrbtestrr)rXrYrBrCrZr=r@r[r\rGrKrD_bootstrap_external
_classify_pycreadenvirongetassertEqual)rMfpflagsexpected_flagss    rtest_source_date_epochz)PyCompileTestsBase.test_source_date_epochs4++T]];t}}5689
$--
&	'"11??	62'E	'::>>-.!N!N/	'	's10D  D)rztest does not work with -Oc	Rtjj|jd}tj
j
|}|dz}tjj|\}}tjj|}|jtjj||tjjddjtjjt|d5}|jddddt!j"||j%tjj'||j)tjj'|y#1swY{xYw)Nz
foo.bar.pyr8__pycache__zfoo.bar.{}.pycr9r:)r=r@rAr?rDrErFsplitrmrformatsysimplementation	cache_tagrKrLrXrYrZr[r\)rM
weird_pathrGrCheadtailpenultimate_tailrOs        rtest_double_dot_no_clobberz-PyCompileTestsBase.test_double_dot_no_clobbers&WW\\$..,?
^^55jA
#WW]]:.
d77++D1GGLL)40GGLL ''(:(:(D(DE
G	H
*c
"	$dJJ{#	$:&z2312		$	$sFF&cf|jdtj|jdy)Nzopt-2)optimize)assertInrXrYrBrUs rtest_optimization_pathz)PyCompileTestsBase.test_optimization_paths#

gz11$2B2BQOPrctj|jtjjt|jd5}tjj|jdi}ddd|jdtj|jtjjt|jd5}tjj|jdi}ddd|j|dy#1swYxYw#1swY(xYw)N)invalidation_moderrr)
rXrYrBPycInvalidationModeCHECKED_HASHrKrGrDrrrrUNCHECKED_HASH)rMrrs   rtest_invalidation_modez)PyCompileTestsBase.test_invalidation_modes(<<II	
$//4
(	'B11??	62'E	'	
%(<<KK	
$//4
(	'B11??	62'E	'	
$	'	'	'	's0D4)0E4D=E	cLtjjtjjtd}tj5}|jtj|dd|jtj|dd|j|jd|jtj5tj|ddddddddy#1swYxYw#1swYyxYw)Nr|Fr)r}quietTr)r=r@rAr~rrrrrXrYrgetvaluer`PyCompileError)rMrstderrs   r
test_quietzPyCompileTestsBase.test_quietsWW\\"''//(";=MN


$
$
&	F&j00URSTUj00TQRSTV__.3"":#<#<=
F"":t1E
F		F	F
F
F		F	Fs%BD$D=DD	DD#N) r0r1r2rPrVr]reunittestskipIfr=r@r[rgisfilerhrjrnrqrskip_if_dac_overrider(skip_unless_working_chmodrzrrrrrrrrrrrr5r55s
$ %
:

DX__

33Qrww~~bjj7QNP=P=9::##X__RWW_FH((
3)H$
3;0X__SYY''!+-IJ3K3&Q%$Frr5ceZdZy)PyCompileTestsWithSourceEpochNr0r1r2rrrrr	rrT)	metaclassr+ceZdZy) PyCompileTestsWithoutSourceEpochNrrrrrrrrrFcpeZdZdZdZejdZdZdZ	dZ
dZdZd	Z
d
Zy)PyCompileCLITestCasechtj|_tjj|jd|_tjj|j|_
t|jd5}|jddddy#1swYyxYw)Nr7r9r:)
r;r<r?r=r@rArBrDrErFrGrKrL)rMrOs  rrPzPyCompileCLITestCase.setUps|!))+77<<
C#..::4;K;KL
$""C
(	$DJJ{#	$	$	$s
B((B1cBtj|jyrR)rrTr?rUs rrVzPyCompileCLITestCase.tearDowns(rcd}|rG|ddk(r?d|vr;tjtj|ddg|dj	dStj|dg|i|S)Nz-Omr-inputrXT)rcapture_output)
subprocessrunr
executableencoderassert_python_ok)rMrr
optss    rpycompilecmdz!PyCompileCLITestCase.pycompilecmdso
',DGsNw&'8>>3>>4s"K(.w(>(>(@157
7--dLR4R6RRrc0tjddg|S)Nz-mrX)rassert_python_failure)rMrs  rpycompilecmd_failurez)PyCompileCLITestCase.pycompilecmd_failures224MMMrcV|jd|j}|j|jd|j|jd|j|j
d|j
tjj|jy)Nr)rrr)rrBr
returncodestdoutrrZr=r@r[rG)rMresults  r
test_stdinzPyCompileCLITestCase.test_stdinsx""3d.>.>"?**A.,,t78rc4|j|j|j\}}}|j|d|j|d|j|d|jtj
j
|jy)Nrr)rrBrrZr=r@r[rG)rMrcrrs    rtest_with_filesz$PyCompileCLITestCase.test_with_filesst!..t/?/?AQAQRFFQ%%t78rctjjtjjtd}|j|\}}}|j
|d|j
|d|jd|y)Nbadsyntax_3131.pyrrsSyntaxError)r=r@rAr~rrrrrM
bad_syntaxrrrs     rtest_bad_syntaxz$PyCompileCLITestCase.test_bad_syntaxsiWW\\"''//(";=PQ
!66zBFFQ%

nf-rctjjtjjtd}|jd|\}}}|j
|d|j
|d|j
|dy)Nr-qrr)r=r@rAr~rrrrs     rtest_bad_syntax_with_quietz/PyCompileCLITestCase.test_bad_syntax_with_quiet
smWW\\"''//(";=PQ
!66tZHFFQ%%rcNtjjtjjtd}|j|j|\}}}|j|d|j|d|jd|jy)Nshould_not_exists.pyrrsno such file or directory)
r=r@rAr~rrrBrrlowerrMshould_not_existsrrrs     rtest_file_not_existsz)PyCompileCLITestCase.test_file_not_existsszGGLL)BDZ[!66t7G7GIZ[FFQ%

2FLLNCrc4tjjtjjtd}|jd|j|\}}}|j|d|j|d|j|dy)Nrrrr)r=r@rAr~rrrBrrs     rtest_file_not_exists_with_quietz4PyCompileCLITestCase.test_file_not_exists_with_quietswGGLL)BDZ[!66tT=M=MO`aFFQ%%rN)r0r1r2rPrVrrequires_subprocessrrrrrrrrrrrrrsR$)!W  "	S#	SN99.&D&rr__main__)rimportlib.utilrDr=rXrSrtrrr;rrrtest.supportrrrrtypeTestCaserr5rrrr0mainrrr<module>rs	

1
d8#4#45
 WFWFt	$6$,$5$5.E6:		'9'/'8'81H9>	C&8,,C&LzHMMOr