Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
ray / purelib / ray / thirdparty_files / psutil / tests / __pycache__ / runner.cpython-310.pyc
Size: Mime:
o

‚‚õbÄ+ã@sÄdZddlmZddlZddlZddlZddlZddlZddlZddl	Z	zddl
Z
Wney5dZ
YnwzddlZWneyGdZYnwddl
Z
ddlmZddlmZddlmZddlmZddlmZdd	lmZdd
lmZddlmZddlmZd
ZdZe
 ¡p‹dZeo‘eƒZej  ej !e"¡¡Z#e	j$j%Z%d$dd„Z&Gdd„dƒZ'Gdd„de	j(ƒZ)Gdd„de	j*ƒZ+Gdd„de+ƒZ,d%dd„Z-dd„Z.dd „Z/d!d"„Z0e1d#kràe0ƒdSdS)&aA
Unit test runner, providing new features on top of unittest module:
- colourized output
- parallel run (UNIX only)
- print failures/tracebacks on CTRL+C
- re-run failed tests only (make test-failed)

Invocation examples:
- make test
- make test-failed

Parallel:
- make test-parallel
- make test-process ARGS=--parallel
é)Úprint_functionN)Úhilite)Úprint_color)Úterm_supports_colors)Úsuper)Ú
CI_TESTING)Úimport_module_by_path)Ú
print_sysinfo)Ú
reap_children)Úsafe_rmpathéz.failed-tests.txtéFcCsD|dur|dkrtjntj}trt||||ddSt||ddS)NÚred)ÚboldÚfile)r)ÚsysÚstderrÚstdoutÚ
USE_COLORSrÚprint)ÚmsgÚcolorrr©rú:/tmp/pip-target-wec6zj2z/lib/python/psutil/tests/runner.pyÚcprintAs
rc@sVeZdZeZdgZdejvre gd¢¡dd„Z	dd„Z
dd	„Zd
d„Zdd
„Z
dS)Ú
TestLoaderztest_memleaks.pyZWHEELHOUSE_UPLOADER_USERNAME)ztest_osx.pyz
test_linux.pyz
test_posix.pycs‡fdd„t ˆj¡DƒS)Ncs:g|]}| d¡r| d¡r|ˆjvrtj ˆj|¡‘qS)Ztest_ú.py)Ú
startswithÚendswithÚ
skip_filesÚosÚpathÚjoinÚtestdir)Ú.0Úx©ÚselfrrÚ
<listcomp>Rsþþýz,TestLoader._get_testmods.<locals>.<listcomp>)r Úlistdirr#r&rr&rÚ
_get_testmodsQs

ÿzTestLoader._get_testmodsccsP| ¡D] }t|ƒ}t|ƒD]}t||ƒ}t|tƒr$t|tjƒr$|VqqdS)zgIterate over all test files in this directory and return
        all TestCase classes in them.
        N)	r*rÚdirÚgetattrÚ
isinstanceÚtypeÚ
issubclassÚunittestÚTestCase)r'r!ÚmodÚnameÚobjrrrÚ_iter_testmod_classesWs€


ÿ€üþz TestLoader._iter_testmod_classescCs,t ¡}| ¡D]}t|ƒ}| |¡q|S©N)r0Ú	TestSuiter5ÚloadTestsFromTestCaseÚaddTest)r'Úsuiter4ÚtestrrrÚallcs
zTestLoader.allcCsrt ¡}tj t¡s|Sttdƒ}| ¡ ¡}Wdƒn1s"wY|D]
}tj	 
|¡}| |¡q)|S)NÚrt)r0r7r r!ÚisfileÚFAILED_TESTS_FNAMEÚopenÚreadÚsplitÚdefaultTestLoaderÚloadTestsFromNamer9)r'r:ÚfÚnamesÚnr;rrrÚlast_failedjsÿzTestLoader.last_failedcCs.| d¡rtj tj |¡¡d}tj |¡S)Nrr)rr r!ÚsplitextÚbasenamer0rCrD)r'r3rrrÚ	from_namevs
zTestLoader.from_nameN)Ú__name__Ú
__module__Ú__qualname__ÚHEREr#rr ÚenvironÚextendr*r5r<rHrKrrrrrJs
rcs<eZdZdd„Zdd„Zdd„Zdd„Z‡fd	d
„Z‡ZS)ÚColouredResultcCstj ||¡tddƒdS)NÚOKÚgreen)r0Ú
TestResultÚ
addSuccessr)r'r;rrrrV~szColouredResult.addSuccesscCs"tj |||¡tdddddS)NÚERRORrT©r)r0rUÚaddErrorr©r'r;ÚerrrrrrY‚szColouredResult.addErrorcCstj |||¡tddƒdS)NÚFAILr)r0rUÚ
addFailurerrZrrrr]†szColouredResult.addFailurecCs&tj |||¡td| ¡dƒdS)Nzskipped: %sZbrown)r0rUÚaddSkiprÚstrip)r'r;Úreasonrrrr^ŠszColouredResult.addSkipcs$t|d|dkd}tƒ ||¡dS)NrrWrX)rrÚprintErrorList)r'ÚflavourÚerrors©Ú	__class__rrraŽszColouredResult.printErrorList)	rLrMrNrVrYr]r^raÚ
__classcell__rrrdrrR|srRcsfeZdZdZer
enejZ‡fdd„Z	‡fdd„Z
dd„Zdd	„Z‡fd
d„Z
dd
„Zdd„Z‡ZS)ÚColouredTextRunnerz”
    A coloured text runner which also prints failed tests on KeyboardInterrupt
    and save failed tests in a file so that they can be re-run.
    cstƒj|i|¤Žtƒ|_dSr6)rÚ__init__ÚsetÚ
failed_tnames)r'ÚargsÚkwargsrdrrrhšszColouredTextRunner.__init__cstƒ ¡|_|jSr6)rÚ_makeResultÚresultr&rdrrrmžszColouredTextRunner._makeResultcCsT|jr(ttdƒ}|jD]	}| |d¡qWdƒdS1s!wYdSdS)NÚwtÚ
)rjr@r?Úwrite)r'rEÚtnamerrrÚ_write_last_failed¤s
ÿ"ÿÿz%ColouredTextRunner._write_last_failedcCs:| ¡s|j|jD]}|d ¡}|j |¡q
dSdS)Nr)Ú
wasSuccessfulrcÚfailuresÚidrjÚadd)r'rnÚtrrrrrÚ_save_resultªsýzColouredTextRunner._save_resultc	sLztƒ |¡}Wnttfy|jj}| ¡t d¡‚w| 	|¡|S)Nr
)
rÚrunÚKeyboardInterruptÚ
SystemExitÚrunnerrnÚprintErrorsrÚexitry©r'r:rnrdrrÚ_run°s
ý
zColouredTextRunner._runcCsL|rtddddttƒt d¡dStdddd| ¡t d¡dS)	NÚSUCCESSrTTrXrZFAILEDrr
)rrr?rrrs)r'ÚsuccessrrrÚ_exit»szColouredTextRunner._exitcCs| |¡}| | ¡¡dSr6)rr„rtr€rrrrzÅs
zColouredTextRunner.run)rLrMrNÚ__doc__rrRr0ÚTextTestResultZresultclassrhrmrsryrr„rzrfrrrdrrg“s
rgc@s,eZdZedd„ƒZedd„ƒZdd„ZdS)ÚParallelRunnercs0‡fdd„}tj‰|tj_t t¡}t ||¡S)Ncsˆ||ƒ}t |j¡|Sr6)ÚatexitÚregisterÚclose)ÚfdÚmodeÚkwdsÚstream©Zorig_fdopenrrÚfdopenÎs
z+ParallelRunner._parallelize.<locals>.fdopen)r rÚconcurrencytestZfork_for_testsÚNWORKERSZConcurrentTestSuite)r:rZforkerrrrÚ_parallelizeÌs

zParallelRunner._parallelizecCsŠt ¡}t ¡}|D]6}| ¡dkrq
t|tjƒr |jdj}nt|tjƒr)|}ntd|ƒ‚t|ddƒr;| 	|¡q
| 	|¡q
||fS)Nrzcan't recognize type %rZ
_serialrunF)
r0r7ÚcountTestCasesr-Z_testsrer1Ú	TypeErrorr,r9)r:ÚserialÚparallelr;Z
test_classrrrÚ_split_suiteÚszParallelRunner._split_suitecCsV| |¡\}}| |¡}tdtdddt ¡}| |¡}t ¡|}t ¡ ¡}tj	|dd\}}	|	r?td|	dƒt
ƒt ¡}| |¡}
t ¡|}| ¡s\| ¡d	kr\| 
¡tt|j|j|jfƒ\}}
}tt|
j|
j|
jfƒ\}}}tt d
|j||
|||
j||||f
¡ƒtd|j|
j||tfƒ| ¡o£|
 ¡}| |¡dS)Nz(starting parallel tests using %s workersrTTrXr
)Útimeoutzalive processes %srra=
            +----------+----------+----------+----------+----------+----------+
            |          |    total | failures |   errors |  skipped |     time |
            +----------+----------+----------+----------+----------+----------+
            | parallel |      %3s |      %3s |      %3s |      %3s |    %.2fs |
            +----------+----------+----------+----------+----------+----------+
            | serial   |      %3s |      %3s |      %3s |      %3s |    %.2fs |
            +----------+----------+----------+----------+----------+----------+
            z&Ran %s tests in %.3fs using %s workers)r˜r“rr’ÚtimerÚpsutilÚProcessÚchildrenZ
wait_procsr
rtr”r~ÚmapÚlenrurcÚskippedrÚtextwrapÚdedentZtestsRunr„)r'r:Z	ser_suiteZ	par_suiterxÚparZpar_elapsedZorphansÚgoneÚaliveZserZser_elapsedZ	par_failsZpar_errsZ	par_skipsZ	ser_failsZser_errsZ	ser_skipsÚokrrrrzîsH
ÿ

þþÿø
ÿzParallelRunner.runN)rLrMrNÚstaticmethodr“r˜rzrrrrr‡Ês

r‡cCsTdd„}|r%tjr|dƒntdur|dƒntdkr |dƒnttdSttdS)NcSst|ddƒdS)Nz Running serial tests instead.r)r)rrrrÚwarn szget_runner.<locals>.warnz$Can't run parallel tests on Windows.z(concurrencytest module is not installed.r
zOnly 1 CPU available.)Ú	verbosity)r›ÚWINDOWSr‘r’r‡Ú	VERBOSITYrg)r—r¨rrrÚ
get_runners




r¬cCs*trtƒtƒ |¡}tƒ}| |¡dSr6)rr	rrKr¬rz)r3r:r}rrrÚ
run_from_name/s
r­cCst d¡dS)NT)r›Z
_set_debugrrrrÚsetup7sr®cCsÈtƒd}tj|dd}|jddddd|jd	ddd
d| ¡\}}|js+ttƒtƒ}|rGt	|ƒdkr?| 
¡t d¡S| 
|d¡}n|jrO| ¡}n| ¡}trXtƒt|jƒ}| |¡dS)
Nz*python3 -m psutil.tests [opts] [test-name]zrun unit tests)ÚusageÚdescriptionz
--last-failedÚ
store_trueFzonly run last failed tests)ÚactionÚdefaultÚhelpz
--parallelzrun tests in parallelr
r)r®ÚoptparseÚOptionParserÚ
add_optionÚ
parse_argsrHrr?rrŸÚprint_usagerrrKr<rr	r¬r—rz)r¯ÚparserÚoptsrkÚloaderr:r}rrrÚmain;s6þþ


r½Ú__main__)FN)F)2r…Ú
__future__rrˆrµr rr¡ršr0ÚctypesÚImportErrorr‘r›Zpsutil._commonrrrZpsutil._compatrZpsutil.testsrrr	r
rr«r?Ú	cpu_countr’rr!ÚabspathÚdirnameÚ__file__rOrCr8rrr†rRZTextTestRunnerrgr‡r¬r­r®r½rLrrrrÚ<module>s^ÿÿ
	27
U"
ÿ