Your IP : 3.147.205.57


Current Path : /lib64/python2.7/unittest/
Upload File :
Current File : //lib64/python2.7/unittest/main.pyc

�
�mec@s�dZddlZddlZddlZddlmZmZddlmZe	Z
dZdZdZ
d	Zd
Zdefd��YZeZdS(
sUnittest main programi����Ni(tloadertrunner(tinstallHandlers)  -f, --failfast   Stop on first failure
s7  -c, --catch      Catch control-C and display results
s=  -b, --buffer     Buffer stdout and stderr during test runs
s�Usage: %(progName)s [options] [tests]

Options:
  -h, --help       Show this message
  -v, --verbose    Verbose output
  -q, --quiet      Minimal output
%(failfast)s%(catchbreak)s%(buffer)s
Examples:
  %(progName)s test_module               - run tests from test_module
  %(progName)s module.TestClass          - run tests from module.TestClass
  %(progName)s module.Class.test_method  - run specified test method

[tests] can be a list of any number of test modules, classes and test
methods.

Alternative Usage: %(progName)s discover [options]

Options:
  -v, --verbose    Verbose output
%(failfast)s%(catchbreak)s%(buffer)s  -s directory     Directory to start discovery ('.' default)
  -p pattern       Pattern to match test files ('test*.py' default)
  -t directory     Top level directory of project (default to
                   start directory)

For test discovery all test modules must be importable from the top
level directory of the project.
s1Usage: %(progName)s [options] [test] [...]

Options:
  -h, --help       Show this message
  -v, --verbose    Verbose output
  -q, --quiet      Minimal output
%(failfast)s%(catchbreak)s%(buffer)s
Examples:
  %(progName)s                               - run default set of tests
  %(progName)s MyTestSuite                   - run suite 'MyTestSuite'
  %(progName)s MyTestCase.testSomething      - run MyTestCase.testSomething
  %(progName)s MyTestCase                    - run all 'test*' test methods
                                               in MyTestCase
tTestProgramcBs�eZdZeZd	ZZZZ	dd	d	d	e
jedd	d	d	d�
Z
d	d�Zd�Zd�Zd	d�Zd�ZRS(
sA command-line program that runs a set of tests; this is primarily
       for making test modules conveniently executable.
    t__main__icCs�t|t�rTt|�|_x<|jd�dD]}t|j|�|_q2Wn	||_|dkrutj}n||_	||_
|	|_||_|
|_
||_||_||_tjj|d�|_|j|�|j�dS(Nt.ii(t
isinstancet
basestringt
__import__tmoduletsplittgetattrtNonetsystargvtexittfailfastt
catchbreakt	verbositytbuffertdefaultTestt
testRunnert
testLoadertostpathtbasenametprogNamet	parseArgstrunTests(tselfR	RRRRRRRRRtpart((s%/usr/lib64/python2.7/unittest/main.pyt__init__Hs$									
cCs�|r|GHni|jd6dd6dd6dd6}|jtkrOt|d<n|jtkrkt|d<n|jtkr�t|d<n|j|GHt	j
d�dS(NRtRRRi(RRtFalsetFAILFASTRt
CATCHBREAKRtBUFFEROUTPUTtUSAGER
R(Rtmsgtusage((s%/usr/lib64/python2.7/unittest/main.pyt	usageExitas



c	Cst|�dkr=|dj�dkr=|j|d�dSddl}ddddd	d
g}y}|j|dd|�\}}x�|D]�\}}|dkr�|j�n|dkr�d|_n|dkr�d|_n|dkr	|jdkr	t|_q	n|dkr3|j	dkr3t|_	q3n|d kr�|j
dkr]t|_
q]q�q�Wt|�dkr�|jdkr�d|_nEt|�dkr�||_t
dkr�d|_q�n|jf|_|j�Wn#|jk
r}|j|�nXdS(!Nitdiscoverii����thelptverbosetquietRtcatchRthHvqfcbs-hs-Hs--helps-qs--quietis-vs	--verboses-fs
--failfasts-cs--catchs-bs--bufferR(s-hs-Hs--help(s-qs--quiet(s-vs	--verbose(s-fs
--failfast(s-cs--catch(s-bs--buffer(tlentlowert
_do_discoverytgetoptR(RRRtTrueRRRt	testNamest__name__R	tcreateTeststerror(	RRR2t	long_optstoptionstargstopttvalueR&((s%/usr/lib64/python2.7/unittest/main.pyRosB(
!	cCsL|jdkr*|jj|j�|_n|jj|j|j�|_dS(N(R4RRtloadTestsFromModuleR	ttesttloadTestsFromNames(R((s%/usr/lib64/python2.7/unittest/main.pyR6�sc
s�|dkr�fd�}nd�j�_ddl}|j�}�j|_|jdddddtd	d
dd��jtkr�|jd
ddddtd	ddd�n�jtkr�|jdddddtd	ddd�n�j	tkr(|jdddddtd	ddd�n|jddddddd	d�|jdddd dd!d	d"�|jd#d$dd%ddd	d&�|j
|�\}}t|�d'kr��j�nx-t
d)|�D]\}}t|||�q�W�jdkr|j�_n�jdkr.|j�_n�j	dkrL|j	�_	n|jrad(�_n|j}	|j}
|j}|�}|j|	|
|��_dS(*Ncs�jS(N(R((R(s%/usr/lib64/python2.7/unittest/main.pyt<lambda>�ss%s discoveri����s-vs	--verbosetdestR+tdefaultR*sVerbose outputtactiont
store_trues-fs
--failfastRsStop on first fail or errors-cs--catchRs'Catch ctrl-C and display results so fars-bs--bufferRs%Buffer stdout and stderr during testss-ss--start-directorytstartRs*Directory to start discovery ('.' default)s-ps	--patterntpatternstest*.pys+Pattern to match tests ('test*.py' default)s-ts--top-level-directoryttops<Top level directory of project (defaults to start directory)ii(sstartspatternstop(RRtoptparsetOptionParsertprogt
add_optionR!RRRt
parse_argsR/R(tziptsetattrR+RRERFRGR)R>(
RRtLoaderRHtparserR9R:tnameR<t	start_dirRFt
top_level_dirR((Rs%/usr/lib64/python2.7/unittest/main.pyR1�sX




					cCs�|jrt�n|jdkr1tj|_nt|jttj	f�r�y+|jd|j
d|jd|j�}Wq�t
k
r�|j�}q�Xn	|j}|j|j�|_|jr�tj|jj��ndS(NRRR(RRRRRtTextTestRunnerRttypettypest	ClassTypeRRRt	TypeErrortrunR>tresultRR
t
wasSuccessful(RR((s%/usr/lib64/python2.7/unittest/main.pyR�s	
	
		N(R5t
__module__t__doc__tUSAGE_FROM_MODULER%RRRRRRtdefaultTestLoaderR3RR(RR6R1R(((s%/usr/lib64/python2.7/unittest/main.pyR?s			*	8(R]R
RRVR RRtsignalsRR3t
__unittestR"R#R$t
USAGE_AS_MAINR^tobjectRtmain(((s%/usr/lib64/python2.7/unittest/main.pyt<module>s�