ó Àfc@s:ddlZddlZddlZddlZddlZddlZddlmZmZddl m Z ddlm Z ddl m Z ddlmZmZddlmZmZmZmZmZmZmZmZmZddlmZd e fd „ƒYZd efd „ƒYZd efd„ƒYZ dS(iÿÿÿÿN(tDistutilsErrortDistutilsOptionError(tlog(t TestLoader(tsix(tmaptfilter( tresource_listdirtresource_existstnormalize_patht working_sett_namespace_packagestevaluate_markertadd_activation_listenertrequiret EntryPoint(tCommandtScanningLoadercBseZd„Zdd„ZRS(cCstj|ƒtƒ|_dS(N(Rt__init__tsett_visited(tself((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyRs cCs7||jkrd S|jj|ƒg}|jtj||ƒƒt|dƒrg|j|jƒƒnt|dƒr x“t|j dƒD]|}|j dƒrÂ|dkrÂ|j d|d }n-t |j |dƒr‰|j d|}nq‰|j|j |ƒƒq‰Wnt |ƒd kr+|j|ƒS|d Sd S( sReturn a suite of all tests cases contained in the given module If the module is a package, load tests from all the modules in it. If the module has an ``additional_tests`` function, call it and add the return value to the tests. tadditional_testst__path__ts.pys __init__.pyt.iýÿÿÿs /__init__.pyiiN(RtNonetaddtappendRtloadTestsFromModulethasattrRRt__name__tendswithRtloadTestsFromNametlent suiteClass(Rtmoduletpatterntteststfilet submodule((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyRs$ N(Rt __module__RRR(((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyRs tNonDataPropertycBseZd„Zdd„ZRS(cCs ||_dS(N(tfget(RR+((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR>scCs|dkr|S|j|ƒS(N(RR+(Rtobjtobjtype((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyt__get__As N(RR)RRR.(((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR*=s ttestcBsÂeZdZdZdddgZd „Zd „Zed „ƒZd„Z d„Z e j gd„ƒZ ee j d„ƒƒZed„ƒZd„Zd„Zed„ƒZed„ƒZRS(s.Command to run unit tests after in-place builds#run unit tests after in-place builds test-module=tms$Run 'test_suite' in specified modules test-suite=tss9Run single test, case or suite (e.g. 'module.test_suite')s test-runner=trsTest runner to usecCs(d|_d|_d|_d|_dS(N(Rt test_suitet test_modulet test_loadert test_runner(R((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pytinitialize_optionsSs   cCsÝ|jr'|jr'd}t|ƒ‚n|jdkrj|jdkrW|jj|_qj|jd|_n|jdkr”t|jddƒ|_n|jdkr¯d|_n|jdkrÙt|jddƒ|_ndS(Ns1You may specify a module or a suite, but not boths .test_suiteR5s&setuptools.command.test:ScanningLoaderR6(R3R4RRt distributionR5tgetattrR6(Rtmsg((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pytfinalize_optionsYs cCst|jƒƒS(N(tlistt _test_args(R((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyt test_argslsccsJ|j r!tjdkr!dVn|jr2dVn|jrF|jVndS(Niitdiscovers --verbose(ii(R3tsyst version_infotverbose(R((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR=ps   cCs|jƒ |ƒWdQXdS(sI Backward compatibility for project_on_sys_path context. N(tproject_on_sys_path(Rtfunc((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pytwith_project_on_sys_pathxs c cs¨tjot|jdtƒ}|r¥|jdddƒ|jdƒ|jdƒ}t|j ƒ}|jdd|ƒ|jdƒ|jdddƒ|jdƒn-|jdƒ|jdddƒ|jdƒ|jdƒ}t j }t j j ƒ}zut|jƒ}t j jd|ƒtjƒtd „ƒtd |j|jfƒ|j|gƒ dVWdQXWd|t j (t j jƒt j j|ƒtjƒXdS( Ntuse_2to3tbuild_pytinplaceitegg_infotegg_baset build_exticSs |jƒS(N(tactivate(tdist((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyt£Rs%s==%s(RtPY3R9R8tFalsetreinitialize_commandt run_commandtget_finalized_commandR t build_libR@tpathtmodulestcopyRJtinsertR RR Rtegg_namet egg_versiontpaths_on_pythonpathtcleartupdate( Rt include_distst with_2to3tbpy_cmdt build_pathtei_cmdtold_patht old_modulest project_path((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyRCs8         ccsÂtƒ}tjjd|ƒ}tjjddƒ}zXtjj|ƒ}td||gƒ}tjj|ƒ}|r…|tjdÐs (tfetch_build_eggstinstall_requirest tests_requiretextras_requiretitemst itertoolstchain(RMtir_dttr_dter_d((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyt install_distsÇs c Cs¢|j|jƒ}dj|jƒ}|jrB|jd|ƒdS|jd|ƒttjdƒ|ƒ}|j |ƒ"|j ƒ|j ƒWdQXWdQXdS(Nt sskipping "%s" (dry run)s running "%s"tlocation( R„R8Rlt_argvtdry_runtannounceRtoperatort attrgetterR[RCt run_tests(Rtinstalled_diststcmdRn((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pytrunÕs  c CsEtjrÁt|jdtƒrÁ|jjdƒd}|tkrÁg}|tj kre|j |ƒn|d7}x0tj D]%}|j |ƒry|j |ƒqyqyWt t tj j|ƒƒqÁntjdd|jd|j|jƒd|j|jƒdtƒ}|jjƒsAd|j}|j|tjƒt|ƒ‚ndS(NRFRit testLoadert testRunnertexitsTest failed: %s(RROR9R8RPR3tsplitR R@RVRRvR<Rt __delitem__tunittesttmainRR‡t_resolve_as_epR5R6tresultt wasSuccessfulR‰RtERRORR(RR$t del_modulestnameR/R:((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyRŒäs(    cCsdg|jS(NR•(R>(R((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR‡ÿscCs0|dkrdStjd|ƒ}|jƒƒS(su Load the indicated attribute value, called, as a as if it were specified as an entry point. Nsx=(RRtparsetresolve(tvaltparsed((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR—s (s test-module=R0s$Run 'test_suite' in specified module(s test-suite=R1s9Run single test, case or suite (e.g. 'module.test_suite')(s test-runner=R2sTest runner to use(RR)t__doc__t descriptiont user_optionsR7R;R*R>R=REt contextlibtcontextmanagerRCt staticmethodR[R„RRŒtpropertyR‡R—(((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyR/Gs(     -  (!RhRŠR@R¤RR•tdistutils.errorsRRt distutilsRRtsetuptools.externRtsetuptools.extern.six.movesRRt pkg_resourcesRRR R R R R RRt setuptoolsRRRgR*R/(((s;/usr/lib/python2.7/site-packages/setuptools/command/test.pyts      @)