python (3.11.7)

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

em~D	ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlm
Z
mZmZmZmZmZmZmZmZmZmZmZddlmZmZmZddlZddlZddlm Z m!Z!	ddl"Z"n
#e#$rdZ"YnwxYwej$e	j%e	j&kpe	j'e	j(kdZ)eserej*deddZ+Gdd	ej,Z-Gd
de-Z.e)Gdd
e-Z/e0dkrej1dSdS)N)captured_stdoutcaptured_stderr
requires_zlib*skip_if_broken_multiprocessing_synchronizeverboserequires_subprocess
is_emscriptenis_wasirequires_venv_with_pip
TEST_HOME_DIRrequires_resourcecopy_python_src_ignore)can_symlinkEnvironmentVarGuardrmtree)patchMockz:cannot run venv.create from within a venv on this platformz)venv is not available on Emscripten/WASI.c.tj|tjtj|}|\}}|jrHt
r%|r#t
|ddtj|j|||||fS)N)stdoutstderrencodingutf-8backslashreplace)	
subprocessPopenPIPEcommunicate
returncoderprintdecodeCalledProcessError)cmdrpouterrs     B/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_venv.pycheck_outputr'-s			A}}HC|)	;s	;#**W&899:::+
L#sC))	)8Oc8eZdZ	dZdZdZdZdZdddZd	S)
BaseTestic<tjtj|_tjdkrd|_d|_d|_	n,d|_ddtjddzf|_d	|_	tj}tj
|d
|_tjdkrGtj|r(tj|s	d|_dSd
|_dS)NntScriptsLibIncludebinlibpython%d.%dincludewin32TF)ospathrealpathtempfilemkdtempenv_dirnamebindirr2r5sysversion_info_base_executablesplitexeplatformlexistsexistscannot_link_exe)self
executables  r&setUpzBaseTest.setUp?sw''(8(:(:;;
7d??#DKDH$DLLDK}s/?/CCDDH$DL)
7==,,R0LG##
++
$GNN:..
$$(D   #(D   r(c.t|jdSN)rr=rIs r&tearDownzBaseTest.tearDownRst|r(ct5}t5}||i|dddn#1swxYwYdddn#1swxYwY||fSrM)rrgetvalue)rIfuncargskwargsoutputerrors      r&run_with_capturezBaseTest.run_with_captureUs


	&& ""
&ed%f%%%
&
&
&
&
&
&
&
&
&
&
&
&
&
&
&	&	&	&	&	&	&	&	&	&	&	&	&	&	&	&  %.."2"222s,A
	3A
7	A
7	A

AAc:tjj|jg|RSrM)r8r9joinr=)rIrSs  r&get_env_filezBaseTest.get_env_file[sw|DL040000r(rrct|j|d|5}|}dddn#1swxYwY|S)Nrr[)openrZread)rIrrSfresults     r&get_text_file_contentszBaseTest.get_text_file_contents^s
#$#T*C(
C
C
C	qVVXXF															
s<AAN)	__name__
__module____qualname__maxDiffrKrOrWrZrbr(r&r*r*;sv$G)))&3331116=r(r*c	JeZdZ	dZdZdZdZdZdZdZ	e
dZe
d	Ze
e
jed
dZejdkrd
Zn,dddddejddzfddejddzdffZdZdZdZdZdZdZe
jed
dZe
dZe
jed
dZe
jejdkd d!Z e
d"Z!e
d#Z"e
j#ejdkd$d%Z$e
jejd&kd'd(Z%d)Z&e
j#ejdkd$e
d*Z'dS)+	BasicTestc~|j|}|tj|dSrM)rZ
assertTruer8r9isdir)rIrSfns   r&rlzBasicTest.isdirfs7
T

%

b))*****r(c	t|j|tj|j|dSrM)rr=rWvenvcreate_check_output_of_default_createrNs r&test_defaults_with_str_pathz%BasicTest.test_defaults_with_str_pathjsK		t|dk4<888,,.....r(c	t|j|tjtj|j|dSrM)rr=rWrorppathlibPathrqrNs r&test_defaults_with_pathlib_pathz)BasicTest.test_defaults_with_pathlib_pathrsU		t|dk7<+E+EFFF,,.....r(c8||j||j|j|j|d}tjddkotjdkotj
dk}|r3|tj
|n2|tj||d}tj}tj|}|d|z||dtjtjz|tjd	krd
nd}dtjd
|d|j}|||||j|j}tj|sP||j}	t1d|	zt1dtj|	z|tj|d|zdS)Nlib64Pposixdarwin
pyvenv.cfgz	home = %szexecutable = %sr,z	 --copiesz
command = z -m venvz --without-pip Contents of %r:    %rFile %r should exist.)rlr?r5r2rZstructcalcsizer8r>r@rErkr9islinkassertFalserGrbrBdirnameassertInr:rJr=rDrlistdir)
rIr#
conditionsdatarJr9copiesr"rmbds
          r&rqz)BasicTest._check_output_of_default_createzs5

4;

4<   
DHg&&s++q01rw'7I1|x/		0OOBGNN1--....RW^^A..///**<88)
wz**

kD($///

'g&&s~6678<	>	>	>w}}+X3>XX6XX$,XX

c4   


t{DH
5
5w~~b!!	-""4;//B#b()))(RZ^^+,,,r**,Cb,HIIIIIr(cgd}|D]\}}t|j|stj}ntjd
i||dvrdndi}t	|_t	|_||j|j|	d}|sdD]}|
|d|tjdkr|d	kr|
|d|dS)N))NN)symlinksz--copies)with_pip
--without-pip)system_site_packages--system-site-packages)clear--clear)upgrade	--upgrade)upgrade_deps--upgrade-deps)prompt--prompt)rrFTr})rrrrrz
command = .* r,rrg)rr=ro
EnvBuilderrupgrade_dependencies
_setup_piprWrprbassertNotRegexr8r>assertRegex)rIattrsattroptbrs      r&test_config_file_command_keyz&BasicTest.test_config_file_command_keysS	
	
	
	?	?ID#4<   
SO%%OSSd.F&F&FUUDQSS%)VVA"66AL!!!(DL999..|<<D
?6FFC''.Ds.D.DEEEEF$4#3#3  '='='=>>>>%	?	?r(ctj|jd}t	|jtj}||j|j|	|j}|
d}||jd|z|
d|t	|jtjd}||j|j|	|j}|
d}||jd|d|t	|jtjd	}tjtj}||j|j|	|j}|
d}||jd|z|d
|z|dS)Nr}z(%s) z	prompt = z	My prompt)rz(My prompt) zprompt = 'My prompt'
.zprompt = '%s'
)r8r9rCr=rrorrWrpensure_directoriesrbassertEqualrassertNotInrbasenamegetcwd)rIenv_namebuildercontextrcwds      r&test_promptzBasicTest.test_prompts7==..q1t|/##gndl;;;,,T\::**<888);<<<d+++t|/555gndl;;;,,T\::**<88888

.555t|/---gry{{++gndl;;;,,T\::**<883777

'#-t44444r(ctj}tjdkrdnd}tjtjd}tj	5}tj
tj|||tjdkr<tj
tjfd}|
|}td|5||dddn#1swxYwYddddS#1swxYwYdS)Nr7r-r1rc
tj|d|d<|ddddddgdS)Nr-mpipinstallr
setuptools)r8r9normcaser)r"rT
expect_exerIs  r&pip_cmd_checkerz<BasicTest.test_upgrade_dependencies.<locals>.pip_cmd_checkers_))#a&11A  "!#$r(zvenv.subprocess.check_output)rorr@rEr8r9rCrJr;TemporaryDirectoryrrYr:rrr)rIrbin_path
python_exefake_env_dirrfake_contextrs`      @r&test_upgrade_dependenciesz#BasicTest.test_upgrade_dependenciess/## # 7 799UW]]3>2215


(
*
*	;l))\8Z@@J|w&&W--bg.>.>z.J.JKK












#55lCCL5GG
;
;,,\:::
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;/	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;s7,B6E"E8EE	EE	EE #E c	t|j|tj|jt
j|j|j|j	}|ddg}d|jfd|jfdtjfdtjffD]Z\}}d|z|d<t|\}}||||[dS)N-cprefixexec_prefixbase_prefixbase_exec_prefixzimport sys; print(sys.%s)r4)rr=rWrorpr8r9rYr?rDr@rrr'rstripencode)rIenvpyr"rexpectedr$r%s       r&
test_prefixeszBasicTest.test_prefixess		t|dk4<888T\4;AAdD!
t|$
DL)
CO,
!56	!8	E	EFH
169CF#C((HCSYY[[(//*;*;VDDDD	E	Er(c	t|j|tj|jdt
j|j|j|j	}|ddg}dddttjfdtj
fdtjffD]\}}||5d	|z|d
<t!|\}}||||dddn#1swxYwYdS)NFrrzget_preferred_scheme("prefix")rozget_default_scheme()rois_python_build()get_makefile_filename()get_config_h_filename()%import sysconfig; print(sysconfig.%s)r4rr=rWrorpr8r9rYr?rDstr	sysconfigis_python_buildget_makefile_filenameget_config_h_filenamesubTestr'rrrrIrr"callrr$r%s       r&test_sysconfigzBasicTest.test_sysconfigs		t|dk4<%HHHT\4;AAdD!
7,
 #i&?&A&A"B"BC
&	(G(I(IJ
&	(G(I(IJL	F	FND(d##
F
F@4GA',,S  hoo.?.?EEE
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F	F	FAD;;D?	D?	zNeeds symlinksc	t|j|tj|jdt
j|j|j|j	}|ddg}dddttjfdtj
fdtjffD]\}}||5d	|z|d
<t!|\}}||||dddn#1swxYwYdS)NTrrrrrrrrr4rrs       r&test_sysconfig_symlinksz!BasicTest.test_sysconfig_symlinkss		t|dk4<$GGGT\4;AAdD!
7,
 #i&?&A&A"B"BC
&	(G(I(IJ
&	(G(I(IJL	F	FND(d##
F
F@4GA',,S  hoo.?.?EEE
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F	F	Frr7))r-)r0r.)r/
site-packages)r1)r5)r2r2r3Nr4rc,	|D]}tjj|jg|R}tj|tj||}t|d5}|ddddn#1swxYwYdS)NwbStill here?)r8r9rYr=mkdirr^write)rIpathsfilenamesubdirsdrmr`s       r&create_contentszBasicTest.create_contents?s		(	(GT\4G444AHQKKKa**Bb$
(1'''
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(		(	(s&BB	B	c	||jdtj|j|jD]}tjj|jg|dzR}|t
j	|t|d5}||ddddn#1swxYwYtj
d}||j|jD]S}tjj|jg|dzR}|t
j	|TdS)Nfoo)rrbrTr)rENV_SUBDIRSrorpr=r8r9rYrkrGr^rr_rr)rIrrmr`rs     r&test_overwrite_existingz!BasicTest.test_overwrite_existingKs		
T-u555DL!!!'	;	;GdlBg.@BBBBOOBGNN2..///b$
;1  >:::
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;/---t|$$$'	1	1GdlBg.@BBBBRW^^B//0000	1	1s )CC	C	cvtj|D]}tj||}tj|stj|rtj|utj|rt|dSrM)	r8rr9rYrisfileremoverlr)rIr9rms   r&clear_directoryzBasicTest.clear_directory]s*T""		BdB''Bw~~b!!
RW^^B%7%7
	"



r""
r


		r(ct|jddD]}tjj|jg|R}t|d5}|ddddn#1swxYwY|ttftj|j||jdS)Nrr()
rr8r9rYr=r^rassertRaises
ValueErrorOSErrorrorpr)rIrrmr`s    r&test_unoverwritable_failsz#BasicTest.test_unoverwritable_failses%bqb)	/	/Edl3U333Bb$
1














z73T[$,OOO  ....	/	/sA  A$	'A$	c	dD]@}tj|}||j|j||j||j|j|j|	|j|j
}tj
|sP|	|j}td|ztdtj|z|tj
|d|zBdS)NFT)rrrr)rorrWrpr=rlr?r5r2rZrDr8r9rGrrrk)rIrrrmrs     r&test_upgradezBasicTest.test_upgradens)	%	N	NGog666G!!'.$,???JJt{###JJt|$$$DJ!!""4;99B7>>"%%
1&&t{33'",---hB/000OOBGNN2..0G"0LMMMM	N	Nr(c	dD]c\}}tjd|}||j|d}|d|z|ddS)N))Ttrue)FfalseT)rrr}z"include-system-site-packages = %s
)rorrpr=rbr)rIsspsrrs     r&test_isolationzBasicTest.test_isolations	9	K	KFCoDsKKKGNN4<(((..|<<DMM?!CTJJJJ		K	Kr(c	dD]}tjd|}||j||j|j}|rl|jr3|tj
||tj
|dS)NrTrr)
rorrpr=rZr?rDrHrr8r9rrk)rIuslrrms    r&test_symlinkingzBasicTest.test_symlinkings	!
	8
	8CoD3???GNN4<(((""4;99B
8'8$$RW^^B%7%78888OOBGNN2$6$6777
	8
	8r(c	t|j|tj|jt
jt
j|j|j	|j
}t|ddg\}}||
|dS)Nr!import sys; print(sys.executable))rr=rWrorpr8r9rYr:r?rDr'rrrrIrr$r%s    r&test_executablezBasicTest.test_executables		t|dk4<888RW--dl;;![$(44/!122Sellnn55555r(c	t|jtjdd}||jt
jt
j|j|j	|j
}t|ddg\}}||
|dS)NTrrr
rr=rorrpr8r9rYr:r?rDr'rrrrIrrr$r%s     r&test_executable_symlinksz"BasicTest.test_executable_symlinkss		t|/t<<<t|$$$RW--dl;;![$(44/!122Sellnn55555r(r,zonly relevant on Windowsc6	t|jtjtj|jd}t
jd}||tj||j	d}tj||j	|j
}t|d|j
ddgd	\}}||
d
dS)NuϼўТλФЙTrzactivate.bat&rzprint(0)oemr[0)rr=r8r9rYr:rorrpr?rDr'rr)rIr=ractivaterr$r%s       r&test_unicode_in_batch_filez$BasicTest.test_unicode_in_batch_files		t|',,rw//==~NN/---w7<<nEEWdk48<<
sDHdJ7


S	
c*****r(c	tt|j|tj|jtjtj	|j|j
|j}t|ddg\}}|
|ddS)Nrzrfrom multiprocessing import Pool; pool = Pool(1); print(pool.apply_async("Python".lower).get(3)); pool.terminate()python)rrr=rWrorpr8r9rYr:r?rDr'rrrrs    r&test_multiprocessingzBasicTest.test_multiprocessings		3444t|dk4<888RW--dl;;![$(44
! !!S
	
hoo&7&788888r(c	tt|j|tj|jtjtj	|j|j
|j}tjtd}tj||gdS)Nz_test_venv_multiprocessing.py)rrr=rWrorpr8r9rYr:r?rDrr
check_call)rIrscripts   r&test_multiprocessing_recursionz(BasicTest.test_multiprocessing_recursions		3444t|dk4<888RW--dl;;![$(44m-LMMufo.....r(znot relevant on Windowsctjd}||dt|jtjd}||jtj	
|j|jd}tj	
|jd}t|d5}|
d|d	dddn#1swxYwYt||g\}}||d
||d
dS)Nbashzbash required for this testTrrztest_strict.shwzset -euo pipefail
source z
deactivate
r~)shutilwhichskipTestrr=rorrpr8r9rYr?r^rr'rr)rIrrrtest_scriptr`r$r%s        r&%test_deactivate_with_strict_bash_optsz/BasicTest.test_deactivate_with_strict_bash_optss{|F##<MM7888t|/---t|$$$7<<dk:FFgll4<1ABB
+s
#
#	$q
GG#&###
$
$
$	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$ { 344Sbiikk***biikk*****sC55C9<C9r|zonly relevant on macOSct|jtj}||jt
jt
j|j|j	|j
}t|ddg\}}||
ddS)Nrz5import os; print("__PYVENV_LAUNCHER__" in os.environ)Falserrs     r&test_macos_envzBasicTest.test_macos_envst|/##t|$$$RW--dl;;![$(44C!EFFSgnn&6&677777r(c	t|j|jtjz}|t
tj||t
tjtj	|dSrM)
rr=r8pathseprrrorprtru)rIbad_itempaths  r&test_pathsep_errorzBasicTest.test_pathsep_errorsk		t||bj0*dk<@@@*dk7<3M3MNNNNNr(c		t|jtj}tjtj}|	t|tj
||j}t	j|tjtj|tj
|||jd}t	j|tj
|d}dtjddz}tj
|||}g}tjD]}	|	drStj|	r3tj|	tj
||ktjtj
|	drt	j|	}
t/|	|
}|
D]}||vr|dkrtj
|	|}
tj|
rtj|
|ctj|
r:tj|
tj
||t.||	tj
||j|jdd	d
|jg}tj
|}t=jd}|rt=j rFtj!tj"tj}tj#dkrd
}nd}tIj%|d|||itj
|j|j|j}|dddg}tM|\}}|'|(|vdS)Nrzos.pyzpython%d%d.zipr4z.zipr)ignorerrorLIBDIRr|DYLD_LIBRARY_PATHLD_LIBRARY_PATH
PYTHONPATH)envz-Srzimport sys; print(sys.path)))rr=r@
platlibdirr8r9r:r;r<
addCleanuprYr?rr!copy2rJr2makedirsrAendswithrcopyfilerrcopyrlcopytreeappendrDr*rget_config_varrabspathrrErrr'rkr)rIr4non_installed_dirr?libdirlandmark
stdlib_zipzip_landmark'additional_pythonpath_for_non_installedeachpathnames
ignored_namesr>rmr"
pythonpathld_library_pathld_library_path_envrr$r%s                     r&%test_zippath_from_non_installed_posixz/BasicTest.test_zippath_from_non_installed_posixs		t|^
G,,X-=-?-?@@ 1222/==
S^V,,,/TXa[II
F7<<00%(8!(<<
w||$5$.$.0035/		H  ((
7>>(++EO %6
CCEEEXw ? ?@@

8,, 6x G G
!
G
GD},, .. h55Bw~~b))GB////r**GBGLL,F,F/EGGGG
G8>>w||-t{DHEE|	Z__355

$28<<	O)";"="=	O goobgoocn.M.MNNO<8##"5"3c#/#6#I	J	J	J	JT\4;AAdD"?@$$S++--455555r()(rcrdrerlrrrvrqrrrrequireVenvCreaterrunittest
skipUnlessrrr@rErrArrrrrrrrrr8r>rrrskipIfr%r(r,rKrgr(r&riricsd)+++//////JJJ8???>5558;;;<EEE$FFF*X(899FF:9F*|w


MC$4RaR$889
MC$4RaR$88/J

(
(
(111$///NNN*KKKX(89988:98.
6
6
6X(89966:96XD*DEE++FE+ 999(///X_RW_&?@@++A@+$X13KLL	8	8ML	8OOOX_RW_&?@@L6L6A@L6L6L6r(riceZdZ	dZdZdZdZdZej	dZ
eeddZ
d	S)

EnsurePipTestctjtj|j|j|j}t|ddg\}}|d}|	|d|d}|	|
ddS)Nrz1try:
 import pip
except ImportError:
 print("OK")latin-1r~OK)r8r9rYr:r=r?rDr'r rrrs    r&assert_pip_not_installedz&EnsurePipTest.assert_pip_not_installedpsRW--dl;;![$(44B!DEESjj##b!!!jj##d+++++r(ct|j|tj|j|dSrMrr=rWrorprUrNs r&test_no_pip_by_defaultz$EnsurePipTest.test_no_pip_by_default}sDt|dk4<888%%'''''r(ct|j|tj|jd|dS)NF)rrWrNs r&test_explicit_no_pipz"EnsurePipTest.test_explicit_no_pipsIt|dk4<%HHH%%'''''r(c2ttjd5}||ddddn#1swxYwY|tjtjdS)Nrr()r^r8devnullrr_rkr9rG)rIr`s  r&test_devnullzEnsurePipTest.test_devnulls
"*d
#
#	,qQVVXXs+++	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	
rz2233333s)AAAct|jt5}d|d<d|d<tj5}||d<d}d}d}|fD]\}}t
j||}	tj|	t
j|	|}
t|
d	5}|
|dddn#1swxYwY|5|tj|j|d
dddn#1swxYwYdddn#1swxYwYdddn#1swxYwYt
jt
j|j|j|j}t%|dd
ddddddg	\}
}|d}||d|
d}
dt-j}||
dt1||tj|jd}|||
t5}|5d|d<t%|dd
dddddg\}
}dddn#1swxYwYdddn#1swxYwY|d}t7jdd|t6j}||d|
d}
|d|
|d|
|s|dSdS)Nr.PYTHONWARNINGS1PIP_NO_INSTALLHOMEz[global]
no-install=1)rzpip.ini)z.pipzpip.confr T)rrz-Wzignore::DeprecationWarningzignore::ImportWarningz-Irrz	--versionrSr~zpip {}zensurepip._uninstallzl^(WARNING: )?The directory .* or its parent directory is not owned or is not writable by the current user.*$)flagszSuccessfully uninstalled pipz#Successfully uninstalled setuptools) rr=rr;rr8r9rYrr^rnicer_errorrWrorpr:r?rDr'r rformat	ensurepipversionlenfsencoderresub	MULTILINErstriprU)rIrenvvarshome_dir
bad_configwin_locationposix_locationrfnamedirpathfpathr`rr$r%expected_versionr=s                 r&do_test_with_pipzEnsurePipTest.do_test_with_pips7t|
 
"
"!	9g)1G$%),G$%,..
9("*5
 2!5'5&7,,NGU gll8W==GHW%%%GLL%88EeS)),Q
+++,,,,,,,,,,,,,,,
%%''99))$+t|?S37*999999999999999999#
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9!	9FRW--dl;;T[$(SS.J,dUK!)**S
jj##b!!!jj###??9+<+>+>??3c"233346FGGG+dl++229==

gs###
!
"
"	3g!!##
3
3-5()'6140)233S	
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3	3	3	3	3	3	3	3	3	3	3	3	3	3	3	3jj##fNOQ...	
r***jj##

4c:::

;SAAA$	,))+++++	,	,sEA8E9C	EC
E"C
#E;)D0$E0D44E7D48E;EE	EE	EE"%E"2L
 K3'L
3K7	7L
:K7	;L

LLc#K		dVdS#tj$rb}|jpdd}|jpdd}||d|d|Yd}~dSd}~wwxYw)Nr(replace)errorsz

**Subprocess Output**
z

**Subprocess Error**
)rr!rUr rfail)rIexcr$r%s    r&rdzEnsurePipTest.nicer_errors			EEEEE,			:$,,I,>>C:$,,I,>>CII//*-//),//








	sA<AA77A<cpucZ|d|ddS)NFT)rwrNs r&
test_with_pipzEnsurePipTest.test_with_pips2	
e$$$d#####r(N)rcrdrerUrXrZr]rw
contextlibcontextmanagerrdrr
rrgr(r&rQrQms/
,
,
,(((
(((
444W,W,W,r$u$$$$$r(rQ__main__rM)2rrfr8os.pathrtrjr!rrr@rr;test.supportrrrrrrr	r
rrr
rtest.support.os_helperrrrrMro
unittest.mockrrctypesImportErrorrNrrrBrJrLSkipTestr'TestCaser*rirQrcmainrgr(r&<module>rs								











EEEEEEEEEEEEEEEEEEEEEEEEEEEE
NMMMMMMMMM%%%%%%%%MMMM
FFF
(H'J#/!.
s~-@BB
IGI
(
G
H
HH&&&&&x &&&PH6H6H6H6H6H6H6H6TS$S$S$S$S$HS$S$S$lzHMOOOOOs)A..A87A8