B ˆ! ßϲTã@sjddlZddlZddlZddlmZddlmZdZGdd„deƒZ Gdd „d ej ƒZ Gd d „d eƒZ dS) éNé)Úresult)ÚregisterResultTc@s&eZdZdd„Zdd„Zddd„ZdS) Ú_WritelnDecoratorcCs ||_dS)N)Ústream)Úselfr©rú2/opt/alt/python37/lib/python3.7/unittest/runner.pyÚ__init__sz_WritelnDecorator.__init__cCs|dkrt|ƒ‚t|j|ƒS)N)rÚ __getstate__)ÚAttributeErrorÚgetattrr)rÚattrrrr Ú __getattr__sz_WritelnDecorator.__getattr__NcCs|r| |¡| d¡dS)NÚ )Úwrite)rÚargrrr Úwritelns z_WritelnDecorator.writeln)N)Ú__name__Ú __module__Ú __qualname__r rrrrrr r srcseZdZdZdZ‡fdd„Zdd„Z‡fdd„Z‡fd d „Z‡fd d „Z ‡fd d„Z ‡fdd„Z ‡fdd„Z ‡fdd„Z dd„Zdd„Z‡ZS)ÚTextTestResultzF======================================================================zF----------------------------------------------------------------------cs8tt|ƒ |||¡||_|dk|_|dk|_||_dS)Nr)Úsuperrr rÚshowAllÚdotsÚ descriptions)rrrÚ verbosity)Ú __class__rr r %s   zTextTestResult.__init__cCs0| ¡}|jr$|r$d t|ƒ|f¡St|ƒSdS)Nr)ZshortDescriptionrÚjoinÚstr)rÚtestZdoc_first_linerrr ÚgetDescription,s zTextTestResult.getDescriptioncsBtt|ƒ |¡|jr>|j | |¡¡|j d¡|j ¡dS)Nz ... )rrÚ startTestrrrr!Úflush)rr )rrr r"3s  zTextTestResult.startTestcsDtt|ƒ |¡|jr$|j d¡n|jr@|j d¡|j ¡dS)NÚokÚ.) rrÚ addSuccessrrrrrr#)rr )rrr r&:s  zTextTestResult.addSuccesscsFtt|ƒ ||¡|jr&|j d¡n|jrB|j d¡|j ¡dS)NÚERRORÚE) rrÚaddErrorrrrrrr#)rr Úerr)rrr r)Bs  zTextTestResult.addErrorcsFtt|ƒ ||¡|jr&|j d¡n|jrB|j d¡|j ¡dS)NÚFAILÚF) rrÚ addFailurerrrrrr#)rr r*)rrr r-Js  zTextTestResult.addFailurecsLtt|ƒ ||¡|jr,|j d |¡¡n|jrH|j d¡|j  ¡dS)Nz skipped {0!r}Ús) rrÚaddSkiprrrÚformatrrr#)rr Úreason)rrr r/Rs  zTextTestResult.addSkipcsFtt|ƒ ||¡|jr&|j d¡n|jrB|j d¡|j ¡dS)Nzexpected failureÚx) rrÚaddExpectedFailurerrrrrr#)rr r*)rrr r3Zs  z!TextTestResult.addExpectedFailurecsDtt|ƒ |¡|jr$|j d¡n|jr@|j d¡|j ¡dS)Nzunexpected successÚu) rrÚaddUnexpectedSuccessrrrrrr#)rr )rrr r5bs  z#TextTestResult.addUnexpectedSuccesscCs6|js |jr|j ¡| d|j¡| d|j¡dS)Nr'r+)rrrrÚprintErrorListÚerrorsÚfailures)rrrr Ú printErrorsjs  zTextTestResult.printErrorscCs\xV|D]N\}}|j |j¡|j d|| |¡f¡|j |j¡|j d|¡qWdS)Nz%s: %sz%s)rrÚ separator1r!Ú separator2)rZflavourr7r r*rrr r6ps zTextTestResult.printErrorList)rrrr:r;r r!r"r&r)r-r/r3r5r9r6Ú __classcell__rr)rr rs        rc@s0eZdZeZd ddœdd„Zdd „Zd d „ZdS) ÚTextTestRunnerNTrF)Ú tb_localsc CsN|dkrtj}t|ƒ|_||_||_||_||_||_||_ |dk rJ||_ dS)N) ÚsysÚstderrrrrrÚfailfastÚbufferr>ÚwarningsÚ resultclass) rrrrrArBrDrCr>rrr r €s zTextTestRunner.__init__cCs| |j|j|j¡S)N)rDrrr)rrrr Ú _makeResult”szTextTestRunner._makeResultc Cs2| ¡}t|ƒ|j|_|j|_|j|_t ¡†|jr^t |j¡|jdkr^tjdt ddt   ¡}t |ddƒ}|dk r€|ƒz ||ƒWdt |ddƒ}|dk r¨|ƒXt   ¡}WdQRX||}|  ¡t|dƒrä|j |j¡|j}|j d||d koþd pd |f¡|j ¡d } } } ytt|j|j|jfƒ} Wntk rTYn X| \} } } g} | ¡sº|j d ¡t|jƒt|jƒ}}|r¤|  d|¡|rÆ|  d|¡n |j d¡| rÚ|  d| ¡| rî|  d| ¡| r|  d| ¡| r"|j dd | ¡f¡n |j d¡|S)N)ÚdefaultÚalwaysÚmodulezPlease use assert\w+ instead.)ÚcategoryÚmessageÚ startTestRunÚ stopTestRunr;zRan %d test%s in %.3fsrr.ÚrZFAILEDz failures=%dz errors=%dZOKz skipped=%dzexpected failures=%dzunexpected successes=%dz (%s)z, r)rErrArBr>rCÚcatch_warningsÚ simplefilterÚfilterwarningsÚDeprecationWarningÚtimeZ perf_counterr r9Úhasattrrrr;ZtestsRunÚmapÚlenZexpectedFailuresÚunexpectedSuccessesÚskippedr Z wasSuccessfulrr8r7Úappendr)rr rZ startTimerKrLZstopTimeZ timeTakenÚrunZ expectedFailsrVrWÚresultsZinfosZfailedZerroredrrr rY—sr              zTextTestRunner.run)NTrFFNN)rrrrrDr rErYrrrr r=xs r=) r?rRrCrMrZsignalsrZ __unittestÚobjectrZ TestResultrr=rrrr Ús  [