python (3.11.7)

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

e_\ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
mZddlm
Z
mZddlmZmZmZddlmZddlmZdd	lmZdd
lmZmZddlmZmZddlmZm Z dd
l!m"Z"m#Z#ddl$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8GddZ9ddZ:dS)N)support)	os_helper
MS_WINDOWS)_parse_args	Namespace)	findtestssplit_test_packages
list_cases)Logger)setup_pgo_tests)State)TestResultsEXITCODE_INTERRUPTED)RunTestsHuntRefleak)
setup_processsetup_test_dir)run_single_testPROGRESS_MIN_TIME)StrPathStrJSONTestNameTestList	TestTuple
TestFilterstrip_py_suffixcountformat_duration	printlistget_temp_dirget_work_direxit_timeoutdisplay_headercleanup_temp_dir
print_warningis_cross_compiledget_host_runnerprocess_cpu_countEXIT_TIMEOUTcBeZdZdZd#dedefdZd$dZd%d	edzd
e	e
edzffdZed	e
fdZ
d
efdZd
efdZdZded
efdZdZdZd
eded
dfdZdZdZd	e
fdZde
d	edzd
efdZde
d	edzd
efdZdZdZdZd Z d!Z!d%d	edzfd"Z"dS)&RegrtestaaExecute a test suite.

    This also parses command-line options and modifies its behavior
    accordingly.

    tests -- a list of strings containing test names (optional)
    testdir -- the directory in which to look for tests (optional)

    Users other than the Python test suite will certainly want to
    specify testdir; if it's omitted, the directory containing the
    Python test suite is searched for.

    If the tests argument is omitted, the tests listed on the
    command-line will be used.  If that's empty, too, then all *.py
    files beginning with test_ will be used.

    The other default arguments (verbose, quiet, exclude,
    single, randomize, use_resources, trace, coverdir,
    print_slow, and random_seed) allow programmers calling main()
    directly to set the values that would normally be set by flags
    on the command line.
    Fns_add_python_optsct|j|_|j|_|j|_|j|_t|_d|_t|j|j|j|_	|j
|_|j|_
|j|_|j|_|j|_|j|_|j|_|jp|j|_|o|j|_|j|_|j|_|j|_|j |_!|j"|_#|j$d}n|j$dkrd}n|j$}||_%|j&|_&|j'|_(|j)|_)|j*|_*|j+|_+|j,|_-|j.|_.|j/rA|j/\}}}t`j12|}tg||||_4nd|_4|j5|_6|j7|_8|j9|_:|j;|_<t{|j>|_>|j?rt{|j?|_@nd|_@|jA|_B|jC|_D|jE|_F|jG|_Gdt`jHvr1t`jHdrd|_Gt`jHd|_In-|jItjKd|_In|jI|_Id|_L|jM|_NtjP|_Q|jR|_Sd|_Td|_UdS)NrSOURCE_DATE_EPOCHF )Vintverbosequietpgopgo_extendedrresultsfirst_staterloggerheaderwant_header
list_testswant_list_testsrwant_list_caseswait	want_waitcleanupwant_cleanuprerun
want_rerunrunleakswant_run_leaksfast_cislow_cici_moder.want_add_python_optsmatch_testsexcludefromfilestart
starting_testargscmdline_argsuse_mpnum_workersworker_jsonfailfast	fail_fastfail_env_changed
fail_rerunforeververbose3output_on_failuretimeout
huntrleaksospathabspathrhunt_refleaktestdirtest_dirxmlpathjunit_filenamememlimitmemory_limit	thresholdgc_thresholdtuple
use_resourcespython
python_cmdtracecoveragecoverdircoverage_dirtempdirtmp_dir	randomizeenvironrandom_seedrandomgetrandbitsfirst_runtests
print_slow
print_slowesttimeperf_counter
start_timesinglesingle_test_runnext_single_testnext_single_filename)selfr-r.rTwarmupsrunsfilenames       I/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/libregrtest/main.py__init__zRegrtest.__init__5s
OO8
"$/%0MM'+T\4:tx@@"$%']%']!w"$* "$&K j6BJ+;,C/1/B	
!(*~Z(*
.0h&(g9KK
Y!^^KK)K ++-> "{&(&9 "
Z'){%'Z
=	%&(m#GT8wx00H4?x4X4XD $D(*

.0j(*(*.3B4D.E.E
9	#6;BI6F6FDOO"DO h
,.K')z "|2:--
./
.#DN+-*5H*ID
^
#%1"55D!~D04$&=+--&(Y1548!!!c:|j|dSN)r:log)rlines  rrzRegrtest.logsrNtestsreturnc6|jrtj|jd|_	t
|jd5}|}|g}dddn#1swxYwYn#t$rYnwxYw|j
rg}tjd}t
tjtj|j
5}|D]p}|ddd}|}||}|'||q	dddn#1swxYwYt'||jrt+|j|jt1}|jr&|jD]}||g|_t7|j|}	|j
s|p|j}
|
rt;|
}
n|	}
n|}
|jrG|
dd}
	|	|
d}|	|dz|_n#t@$rYnwxYw|j!rZ	|
d|
|j!=n;#tD$r.tGd|j!tIj%dYnwxYwtMj'|j(|j)rtMj*|
tW|
|fS)	N
pynexttestrz\btest_[a-zA-Z0-9_]+\b#rr)rcrMzCannot find starting test: ),rr_r`joinrtropenreadstripOSErrorrNrecompilerSAVEDCWDsplitsearchappendgrouprr6r
rRr7setrMaddr	rdr
indexr
IndexErrorrP
ValueErrorprintsysexitrxseedrwrushufflerk)rrfp	next_testregexrmatch
exclude_testsargalltestsselectedposs            r
find_testszRegrtest.find_testss	(*T\<(P(PD%
$3S99(R "		 1 1I&KE(((((((((((((((



=	4EJ899Ebgll9#5t}EEFF
4"44D::c1--a0D::<<D!LL..E(U[[]]3334
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4	8	BD-t/@AAA
<	#(
'
'!!#&&&& "DT]%2444}	1 1H
$.x88#H	|H
nnXa[11(0q(9%%



	
@hnnT-?@@@AA


HD4FHHIII
	D$%%%>	%N8$$$h''slB
*A>2B
>BB
BB


BB3A4E44E8;E89+I%%
I21I2=J5KKc.|D]}t|dSr)r)rnames  rr=zRegrtest.list_testss(		D$KKKK		rruntestsc	P|jdkrd|_|j\}}|dt	|d||dddd|d}|j||||j|S)NrrzRe-running z- failed tests in verbose mode in subprocessesTF)rrDr4rZrWmatch_tests_dictr\)	rTr8
prepare_rerunrlencopyr:	set_tests
_run_tests_mp)rrrrs    r_rerun_failed_testszRegrtest._rerun_failed_testssq  
 !D"&,"<"<">">	
Xs5zzXXXYYY==-#!%%	
h'''8T%5666rc|jr|ddS||_t	||}|jjrNt	tt|jjddt|jj||dS)NzJRe-running failed tests is not supported with --python host runner option.testz
failed again:)rnr	get_stater9rrr8badrrr display_result)rrrerun_runtestss   rrerun_failed_testszRegrtest.rerun_failed_testss?	HH&



F>>++
11(;;<	(%DL,--v66HHHdl&'''N+++++rc|jrdS|}ttd|d|j|j|j|jdS)Nz== Tests result: z ==)r6rrr8rrr5r|)rrstates   rrzRegrtest.display_resultsz<	F  

,%,,,---##HN$(J0B	D	D	D	D	Dr	test_namec|Jd}tt}||t||d}nt	||}|j|||S)Nz-result = run_single_test(test_name, runtests))globalslocalsresult)dictrrunctxrrr8accumulate_result)rrrtracercmd	namespacers       rrun_testzRegrtest.run_testssCCVXXIMM#wyyMCCCx(FF$Y99F&&vx888
rc|jrddl}|dd}nd}ttj|}|t|d}nd}d|d}|jr|d	t|jzz
}|
|d}|}t|d
D]c\}	}
tj}|
}|r|d|}|j|	|||
||}
fdtjD}|D]s}tj|d|d
\}}}	t)tj||]#t*t,f$rYpwxYw|
|j|jrn_t5|
}tj|z
}|t6kr|dt|}L|
jt:jkrd}e|rt?||S)NrFT)rorrrzRun z
 sequentiallyz (timeout: %s)rz -- cFg|]}|v|d|S))ztest.test_
startswith).0modulesave_moduless  r
<listcomp>z3Regrtest.run_tests_sequentially.<locals>.<listcomp>NsGGGGf$L88 & 1 12D E E9"888r.z in ) rproTracerrmodulesget_jobsrr]rr
iter_tests	enumerater}r~r:display_progressrpop
rpartitiondelattrKeyErrorAttributeError	must_stoprWrXstrrrrPASSEDr)rrrorjobsrmsg
previous_test
tests_iter
test_indexrrtextrnew_modulesrparent_r	test_timers                    @rrun_tests_sequentiallyzRegrtest.run_tests_sequentially.s=	LLL[[uD[99FFF3;''  ""$''EEE)U)))	H#oh6F&G&GGGC



((**
%.z1%=%= 	% 	%!J	*,,JD
:%)TT==9K((T:::]]9h??FGGGGGGGK&

---"("3"3C"8"84CK/6666 .1D0EFF
KKM)++j8I---.;mm_Y=W=W=W X

-- $
	!-   
s7 FF,+F,cj|j|j}|jr|jd|}|S)Nz then )r8rrXr9)rrs  rrzRegrtest.get_statejs@&&t'<==	7'66u66ErrTcfddlm}||||j|jdS)Nr)
RunWorkers)run_workersrr:r8run)rrrTrs    rrzRegrtest._run_tests_mpps@++++++
;$+t|DDHHJJJJJrc|jrk|jrKt|jd5}||jdzdddn#1swxYwYnt	j|j|1|}|dd|j|j	r(t	j
dt	jz|jr!|j
|jdSdS)Nw
T)show_missingsummaryrqzleaks %d)rrrwriter_unlinkr8
write_resultsrrrGsystemgetpidrfwrite_junit)rrrr8s    rfinalize_testszRegrtest.finalize_teststsE$	5$
5$3S99;RHHT2T9:::;;;;;;;;;;;;;;;	$3444nn&&G!!tT+/+<
"
>
>
>	0Ij29;;.///	:L$$T%899999	:	:sAAAcTtj|jjz
}t	|j}t
t
dt|z|j	|j
||}t
d|dS)NzTotal duration: %szResult: )r}r~r:rboolrLrrr8display_summaryrzr)rdurationfilteredrs    rrzRegrtest.display_summarys$&&)??())	
"_X%>%>>???$$T%8(CCC  
   !!!!!rcXt|fid|jd|jd|jddddd|jd|jd	|jd
|jd|jd|j	d
|j
d|jd|jd|j
dud|jd|jd|jd|jd|jd|jS)NrWrXrLrrDFrZr6r7r\r]r4r5rbrd	use_junitrhrjrlrnrurw)rrWrXrLrZr6r7r\r]r4r5rbrdrfrhrjrlrnrurw)rrs  rcreate_run_testszRegrtest.create_run_testssU


nn
"22
((	

"T
%

LL

**
#44
LL
LL
**
**
]]
 *$66!
"**#
$**%
&,,'
()
*nn+
,((-
	
rrch|jr.|jjdkrd}t|tjd|jdkrt
pddz|_|js|js1|j	s*|j
s#|s!|jst|j
|jtd|j||}||_|j|t)|jr
|jsd	}nt*}|r|j	|jr|||jd}n||}|||jr.|jr|||r|jn!#|r|jwwxYw|| ||j!|j"|j#S)
NzhWARNING: Running tests with --huntrleaks/-R and less than 3 warmup repetitions can give false positives!T)fileflushrrzUsing random seed:F)$rbrrrstdoutrTr)r<r6r5rrRr$rlrnrwrrzr:rrrstart_load_trackerrrrrEr8
need_rerunrstop_load_trackerrr	get_exitcoderXrY)rrrrruse_load_trackerrs       r
_run_testszRegrtest._run_testssm	4!2!:Q!>!>NC#CJd3333a!2 3 3 8qA=D
	@8	@#z	@-1-A	@	@#0	@
4-t???
"D$4555((22&h'''	*T%5	*$ *	-K**,,,
	0
?""8T-=>>>44X>>)))
24<#:#:#<#<
2''111
0--/// 
0--////
0	
F###|(()>)-::	:s
%BGG#cTtj|jdt|j}t	5tj|d5|||cdddcdddS#1swxYwY	ddddS#1swxYwYdS)NT)exist_ok)r5)r_makedirsrtr"r#rtemp_cwdr)rrrwork_dirs    r	run_testszRegrtest.run_testssE
DL40000--^^
	8
	8
#HD999
8
8
x77
8
8
8
8
8
8
8
	8
	8
	8
	8
	8
	8
	8
	8

8
8
8
8
8
8
8
8
8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8
	8s5BB+BB	BB	BB!$B!c
t|j}d}t}t}|rDhd
tj}
fdtjD}||kr|}d}|r_|r]|jdkr|ddg|js4tj
d}|d|}	|d	|	gd}||fS)
N>
PYTHONPATH_PYTHON_PROJECT_BASE_PYTHON_HOST_PLATFORM_PYTHON_SYSCONFIGDATA_NAMEcNi|]!\}}|dr|v||"S))PYTHON_PYTHONr)rrvaluekeeps   r
<dictcomp>z4Regrtest._add_cross_compile_opts.<locals>.<dictcomp>
sE +e'<==AEeAMrTrz-j2BUILDPYTHON z--python)rrnr'r(r_rvitemsrTextend	sysconfigget_config_var)r
regrtest_optskeep_environrv
cross_compile
hostrunnerold_environnew_environbuildpythonrnr-s          @r_add_cross_compile_optsz Regrtest._add_cross_compile_optss1DO,,*++
%&&
	 D*K/1z/?/?/A/AK
k))%L	$Z	$1$$$$dC[111?
$'6}EE *::[::
$$j*%=>>>#&&rcDtjjs|ddtjvr|dtjjdkr|d|s(tjjs|ddSdSdS)Nz-udefault)z-Wr?rz-bbz-E)	rr
write_throughrwarnoptionsr3flags
bytes_warningignore_environment)rpython_optsr7s   r_add_ci_python_optszRegrtest._add_ci_python_opts&s
z'	%t$$$CO++01119"Q&&u%%%	)9/
)""4(((((	)	)
)
)rc\tjtjt	j|}	t
d|dttdr$tstj
|d|dSddl}|||5}	|
n~#t$rq	|
tnQ#|j$rD||
tjt&YnwxYwYnwxYwdddn#1swxYwYtj|jdS#t*$r }t-d|d	|Yd}~dSd}~wwxYw)
Nz+ T)rexecvr)env)r]z!Failed to change Python options: z

Command: )rrrstderrshlexrrhasattrr_rrH
subprocessPopenr@KeyboardInterruptr*TimeoutExpiredkillrr
returncode	Exceptionr&)rrrvcmd_textrMprocexcs       r_execute_pythonzRegrtest._execute_python;s&

:c??	2/x//....r7##
*J
*Q%%%%%"!!!%%cw%77;4
;		,;;;; IIlI;;;;)8;;; IIKKK IIKKKH%9:::::;;;;;;;;;;;;;;;;;)))))	2	2	21c11&.11
2
2
2
2
2
2
2
2
2	2sAFF:E<CE
EC87E8AEEEE	EEEFEF"E#F
F+F&&F+cPg}g}||\}}|jr||||s|s|dSttj}|r||dd<|r|||d|||dS)Nrz--dont-add-python-opts)	r=rJrFlistr	orig_argvr3rrW)rrEr6rvr7rs      rr.zRegrtest._add_python_opts]s
 $ < <] K K<	@$$[,???	m	'/F3=!!	#"C!H	&JJ}%%%

+,,,S'*****rcHtjd|jrMtj|js)tj|j|_t|j	t|j|_dS)Nbackslashreplace)errors)rrreconfigurerfr_r`isabsrarrRr!rt)rs r_initzRegrtest._initss	
&8999	Grw}}T5H'I'I	G"$'//$2E"F"FD)***#DL11rc |jr|||jr(t	|jt
jd|jrtdt|j||\}}d}|j
r||n:|jrt!||j|jn|||}t
j|dS)NrzPress any key to continue...)rLrd)rKr.r`rCr%rtrrrAinputrrdrr>r=r?rrLr#)rrrexitcodes    rmainz
Regrtest.mains$	$!!###

	T\***HQKKK>	20111t}%%%//%00%	7OOH%%%%

!	7x#'#3 $

/
/
/
/
/~~h66Hr)F)rr)#__name__
__module____qualname____doc__rrrrrrkrrstaticmethodr=rrrrrrrrr3rr	rrrr#r=rFrWr.r`rdrrr,r,s,b9b99b9b9b9b9b9HC(C(4C(5HW[OA[;\C(C(C(C(J)\H2,8,,,,(
D
D
D
(
h



:::xKhKSKTKKKK:::&"""
i



45:95:X_5:5:5:5:5:n8)8HtO88888"-'-'-'^)))*222D+++,222(T/rr,Fcttjddfi|}t|||dS)zRun the Python suite.rN)r.)r)rrargvr,rd)rr.kwargsr-s    rrdrdsL	SXabb\	,	,V	,	,BR"233388u8EEEEEr)NF);r_rxrrKrr4r}rrtest.supportrrcmdlinerrr	r
rr:rr6r
rrr8rrrrrsetuprrrrrutilsrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r,rdrjrr<module>rrsn				



				



........++++++++AAAAAAAAAA      66666666++++++++0000000066666666|	|	|	|	|	|	|	|	~FFFFFFr