Viewing File: /opt/alt/python35/lib64/python3.5/unittest/__pycache__/main.cpython-35.pyc



Yf8)@sdZddlZddlZddlZddlmZmZddlmZdZ	dZ
dZd	d
ZddZ
Gd
ddeZeZdS)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
cCstjj|r|jjdrtjj|rtjj|tj}tjj|sx|jtj	r||S|}|ddj
ddj
ddS|S)Nz.py\./)ospathisfilelowerendswithisabsrelpathgetcwd
startswithpardirreplace)nameZrel_pathr2/opt/alt/python35/lib64/python3.5/unittest/main.py
_convert_names'$&rcCsdd|DS)NcSsg|]}t|qSr)r).0rrrr
<listcomp>.s	z"_convert_names.<locals>.<listcomp>r)namesrrr_convert_names-src@seZdZdZdZdZdZZZZ	Z
dZddddej
dddddddddd	Zdd
dZdd
ZddZddZddZddZddZddZdddZddZdS)TestProgramzA command-line program that runs a set of tests; this is primarily
       for making test modules conveniently executable.
    Nr__main__T	tb_localsFcCs(t|trZt||_xB|jdddD]}
t|j|
|_q8Wn	||_|dkrxtj}||_||_	|	|_
||_|
|_||_
|dkrtjrd|_n	||_||_||_||_tjj|d|_|j||jdS)Nrrdefaultr)
isinstancestr
__import__modulesplitgetattrsysargvexitfailfast
catchbreak	verbositybufferr warnoptionswarningsdefaultTest
testRunner
testLoaderrrbasenameprogName	parseArgsrunTests)selfr%r1r)r2r3r*r-r+r,r.r0r partrrr__init__;s, 												
zTestProgram.__init__cCsD|rt||jdkr)|j|jtjddS)N)print_discovery_parser_initArgParsers_print_helpr(r*)r8msgrrr	usageExitas


zTestProgram.usageExitcOsw|jdkrIt|jjttd|ji|jjn*t|jjttd|jidS)Nprog)	r%r<_main_parserZformat_help
MAIN_EXAMPLESr5r=
print_helpMODULE_EXAMPLES)r8argskwargsrrrr?iszTestProgram._print_helpcCsE|j|jdkrt|dkr\|djdkr\|j|dddS|jj|dd||js|jgdSn|jj|dd||jrt|j|_	t
dkr7d|_nQ|jdkrd|_	n6t|jt
r%|jf|_	nt|j|_	|jdS)Nrdiscoverr;r)r>r%lenr
_do_discoveryrC
parse_argstestsr	testNames__name__r1r"r#listcreateTests)r8r)rrrr6rs(
(	
	zTestProgram.parseArgscCsL|jdkr*|jj|j|_n|jj|j|j|_dS)N)rNr3ZloadTestsFromModuler%testZloadTestsFromNames)r8rrrrQszTestProgram.createTestscCs4|j}|j||_|j||_dS)N)_getParentArgParser_getMainArgParserrC_getDiscoveryArgParserr=)r8Z
parent_parserrrrr>szTestProgram._initArgParserscCs3tjdd}|jddddddd	d
dd|jd
dddddd	ddd|jddddddd|jdkr|jddddddddd|_|jdkr|jddddddddd|_|jdkr/|jdddddddd d|_|S)!NZadd_helpFz-vz	--verbosedestr-actionZstore_constZconstr;helpzVerbose outputz-qz--quietrzQuiet outputz--localsr 
store_truez"Show local variables in tracebacksz-fz
--failfastr+zStop on first fail or errorz-cz--catchr,z'Catch Ctrl-C and display results so farz-bz--bufferr.z%Buffer stdout and stderr during tests)argparseArgumentParseradd_argumentr+r,r.)r8parserrrrrSs4			zTestProgram._getParentArgParsercCsJtjd|g}|j|_|j|_|jddddd|S)NparentsrMnargs*rXz?a list of any number of test modules, classes and test methods.)rZr[r5rBr?rEr\)r8parentr]rrrrTszTestProgram._getMainArgParserc	Cstjd|g}d|j|_d|_|jdddddd	|jd
ddddd
|jddddddx3dD]+}|j|dddtjdtjqW|S)Nr^z%s discoverzcFor test discovery all test modules must be importable from the top level directory of the project.z-sz--start-directoryrVstartrXz*Directory to start discovery ('.' default)z-pz	--patternpatternz+Pattern to match tests ('test*.py' default)z-tz--top-level-directorytopz<Top level directory of project (defaults to start directory)r_?r!)rbrcrd)rZr[r5rBZepilogr\ZSUPPRESS)r8rar]argrrrrUs	
	z"TestProgram._getDiscoveryArgParsercCsd|_d|_d|_|dk	rS|jdkr@|j|jj|||dkrh|jn|}|j|j|j|j|_dS)Nrztest*.py)	rbrcrdr=r>rLr3rIrR)r8r)LoaderrrrrrKs			
zTestProgram._do_discoverycCs)|jrt|jdkr+tj|_t|jtryy=|jd|jd|jd|j	d|j
d|j}WnBtk
r|jd|jd|jd|j	d|j
}YnXWqtk
r|j}YqXn	|j}|j
|j|_|jr%tj|jjdS)Nr-r+r.r0r )r,rr2rZTextTestRunnerr"typer-r+r.r0r 	TypeErrorZrunrRresultr*r(Z
wasSuccessful)r8r2rrrr7s.				
		
		zTestProgram.runTests)rO
__module____qualname____doc__r%r-r+r,r.r5r0r=rZdefaultTestLoaderr:rAr?r6rQr>rSrTrUrKr7rrrrr1s&		#	r)rmr(rZrrrZsignalsrZ
__unittestrDrFrrobjectrmainrrrr<module>s	
Back to Directory File Manager