python (3.12.0)

(root)/
lib/
python3.12/
unittest/
__pycache__/
main.cpython-312.pyc

̑e.dZddlZddlZddlZddlZddlmZmZddlm	Z	dZ
dZdZd	Z
d
ZdZdZGd
deZeZy)zUnittest main programN)loaderrunner)installHandlerTaExamples:
  %(prog)s test_module               - run tests from test_module
  %(prog)s module.TestClass          - run tests from module.TestClass
  %(prog)s module.Class.test_method  - run specified test method
  %(prog)s path/to/test_file.py      - run tests from test_file.py
aFExamples:
  %(prog)s                           - run default set of tests
  %(prog)s MyTestSuite               - run suite 'MyTestSuite'
  %(prog)s MyTestCase.testSomething  - run MyTestCase.testSomething
  %(prog)s MyTestCase                - run all 'test*' test methods
                                       in MyTestCase
c,tjj|r|jj	drtjj|rttjj
|tj}tjj|s|jtjr|S|}tjj|ddjddjddS|S)Nz.py\./)ospathisfilelowerendswithisabsrelpathgetcwd
startswithpardirnormpathreplace)namerel_paths  A/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/unittest/main.py
_convert_namers

ww~~d

 5 5e <
77==wwtRYY[9Hww}}X&(*=*=bii*HDww%cr*224=EEc3OOKc>|Dcgc]
}t|c}Scc}wN)r)namesrs  r_convert_namesr!/s,12DM$222scd|vrd|z}|S)N*z*%s*)patterns r_convert_select_patternr&3s'>7"NrceZdZdZdZdZdxZxZxZxZ	xZ
ZdZdddde
jddddddfddddZdd	Zd
ZdZddZd
ZdZdZdZddZdZy)TestProgramzA command-line program that runs a set of tests; this is primarily
       for making test modules conveniently executable.
    Nr__main__TF)	tb_locals	durationsc>t|trEt||_|j	dddD]}t|j||_n||_|tj}||_||_	|	|_
||_|
|_||_
|
|_|tjsd|_n||_||_||_||_t(j*j-|d|_|j1||j3y)Nrrdefaultr)
isinstancestr
__import__modulesplitgetattrsysargvexitfailfast
catchbreak	verbositybufferr*r+warnoptionswarningsdefaultTest
testRunner
testLoaderr
rbasenameprogName	parseArgsrunTests)selfr1r=r5r>r?r6r9r7r8r:r<r*r+parts               r__init__zTestProgram.__init__Cs
fc"$V,DKS)!"-
9%dkk48
9!DK<88D	 
$"""COO&DM%DM&$$((a1
t

rctjdt|rt||j|j|j
tjdy)NzHTestProgram.usageExit() is deprecated and will be removed in Python 3.13)	r<warnDeprecationWarningprint_discovery_parser_initArgParsers_print_helpr4r6)rDmsgs  r	usageExitzTestProgram.usageExitksP

01C	E#J!!)  "rcV|j\t|jjttd|j
iz|jjyt|jjttd|j
izy)Nprog)	r1rK_main_parserformat_help
MAIN_EXAMPLESrArL
print_helpMODULE_EXAMPLES)rDargskwargss   rrNzTestProgram._print_helpusx;;$##//12-64=="99:""--/$##//12/VT]]$;;<rc|j|jvt|dkDr+|djdk(r|j	|ddy|j
j
|dd||js1|j	gy|j
j
|dd||jr+t|j|_	tdk(rcd|_n[|jd|_	nGt|jtr|jf|_	nt|j|_	|jy)NrdiscoverrHr))rMr1lenr
_do_discoveryrS
parse_argstestsr!	testNames__name__r=r.r/listcreateTests)rDr5s  rrBzTestProgram.parseArgs~s;;4y1}aJ!>""48,((ab48::""2&((ab48::+DJJ7DN:%"



%!DN
((#
."..0DN!$"2"23DNrc|jr|j|j_|rM||jn|}|j|j|j|j
|_y|j+|jj|j|_y|jj|j|j|_yr)testNamePatternsr?r[startr%toptestr`loadTestsFromModuler1loadTestsFromNames)rDfrom_discoveryLoaderrs    rrczTestProgram.createTestss  /3/D/DDOO,(.T__FHF'

DLL$((KDI
^^
#;;DKKHDI::4>>;?;;HDIrc||j}|j||_|j||_yr)_getParentArgParser_getMainArgParserrS_getDiscoveryArgParserrL)rD
parent_parsers  rrMzTestProgram._initArgParserss6002
 22=A!%!<!<]!Krc>tjd}|jdddddd	|jd
ddddd
	|jdddd|jddtddd|j|jdddddd|_|j
|jdddddd|_|j|jd d!d"dd#d|_|j!|jd$d%d&td'(g|_|S))NF)add_helpz-vz	--verboser9store_constrHzVerbose output)destactionconsthelpz-qz--quietrzQuiet outputz--localsr*
store_truez"Show local variables in tracebacks)rurvrxz--durationsr+Nz+Show the N slowest test cases (N=0 for all))rutyper-metavarrxz-fz
--failfastr7zStop on first fail or errorz-cz--catchr8z'Catch Ctrl-C and display results so farz-bz--bufferr:z%Buffer stdout and stderr during testsz-kreappendz.Only run tests which match the given substring)rurvr{rx)	argparseArgumentParseradd_argumentintr7r8r:rer&)rDparsers  rrnzTestProgram._getParentArgParsersr((%8D+K#0!1		3	D)+#0!/		1	J[#/!E		G	M#$(#!N		P== l'3%B
 
D"DM??"il'3%N
 
P$DO;;jx'3%L
 
N DK  (+='/6M%U
 
W%'D!
rctj|g}|j|_|j|_|j
ddd|S)Nparentsr_r#z?a list of any number of test modules, classes and test methods.)nargsrx)r~rrArRrNrVr)rDparentrs   rrozTestProgram._getMainArgParsersP((&:mm ,,G3"8		9
rcXtj|g}d|jz|_d|_|jdddd|jd	d
dd|jd
ddddD]3}|j|dtjtj5|S)Nrz%s discoverzcFor test discovery all test modules must be importable from the top level directory of the project.z-sz--start-directoryrfz*Directory to start discovery ('.' default))rurxz-pz	--patternr%z+Pattern to match tests ('test*.py' default)z-tz--top-level-directoryrgz<Top level directory of project (defaults to start directory))rfr%rg?)rr-rx)r~rrArRepilogrSUPPRESS)rDrrargs    rrpz"TestProgram._getDiscoveryArgParsers((&:#dmm3$
	D"5G!M		OD+I!N		PD"9"4		5/	8C3(0(9(9%-%6%6
 
8	8

rcd|_d|_d|_|8|j|j	|jj|||j
d|y)Nrztest*.pyT)rkrl)rfr%rgrLrMr^rc)rDr5rls   rr]zTestProgram._do_discoverys^
!%%-$$&""--dD9V<rc|jr
t|jtj|_t|jtrV		|j|j|j|j|j|j|j}n|j}|j|j|_|j"ry|j j$dk(rt'j"t(y|j j+rt'j"dyt'j"dyy#t$r@|j|j|j|j|j}YwxYw#t$r|j}YwxYw)N)r9r7r:r<r*r+)r9r7r:r<rr)r8rr>rTextTestRunnerr.r{r9r7r:r<r*r+	TypeErrorrunrhresultr6testsRunr4_NO_TESTS_EXITCODE
wasSuccessful)rDr>s  rrCzTestProgram.runTestssK????"$33DOdoot,
/I!%4>>:>--8<:>--;?>>;?>>"1"KJ"J nnTYY/99{{##q(+,**,
!I!%4>>:>--8<:>--"1"IJI
/!__.

/s,AEAF# F&"F##F&&GGr)FN)ra
__module____qualname____doc__r1r9r7r8r:rAr<rerLrdefaultTestLoaderrFrPrNrBrcrMrnrorpr]rCr$rrr(r(9sFINRRHRzRFRXR;K(d#0H0HTd$&>C"	&P=:
HL
$L	*=!rr()rr4r~r
r<rrsignalsr
__unittestrrUrWrr!r&objectr(mainr$rr<module>rsX
	#


 3g&gTr