PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB`  qYF@sdZddlZddlZddlZddlmZddlmZdZGddde Z Gd d d ej Z Gd d d e Z dS) z Running testsN)result)registerResultTc@s=eZdZdZddZddZdddZdS) _WritelnDecoratorz@Used to decorate file-like objects with a handy 'writeln' methodcCs ||_dS)N)stream)selfrr%/opt/python35/lib/python3.5/runner.py__init__sz_WritelnDecorator.__init__cCs(|dkrt|t|j|S)Nr __getstate__)rr )AttributeErrorgetattrr)rattrrrr __getattr__s  z_WritelnDecorator.__getattr__NcCs$|r|j||jddS)N )write)rargrrr writelns z_WritelnDecorator.writeln)__name__ __module__ __qualname____doc__r rrrrrr r s   rcseZdZdZddZddZfddZddZfd d Zfd d Z fd dZ fddZ fddZ fddZ fddZddZddZS)TextTestResultzhA test result class that can print formatted text results to a stream. Used by TextTestRunner. =F-csPtt|j|||||_|dk|_|dk|_||_dS)Nr)superrr rshowAlldots descriptions)rrr verbosity) __class__rr r %s  zTextTestResult.__init__cCsB|j}|jr4|r4djt||fSt|SdS)Nr)ZshortDescriptionrjoinstr)rtestZdoc_first_linerrr getDescription,s zTextTestResult.getDescriptioncsYtt|j||jrU|jj|j||jjd|jjdS)Nz ... )rr startTestrrrr%flush)rr$)r!rr r&3s  zTextTestResult.startTestcs\tt|j||jr2|jjdn&|jrX|jjd|jjdS)Nok.) rr addSuccessrrrrrr')rr$)r!rr r*:s   zTextTestResult.addSuccesscs_tt|j|||jr5|jjdn&|jr[|jjd|jjdS)NERRORE) rraddErrorrrrrrr')rr$err)r!rr r-Bs   zTextTestResult.addErrorcs_tt|j|||jr5|jjdn&|jr[|jjd|jjdS)NFAILF) rr addFailurerrrrrr')rr$r.)r!rr r1Js   zTextTestResult.addFailurecshtt|j|||jr>|jjdj|n&|jrd|jjd|jj dS)Nz skipped {0!r}s) rraddSkiprrrformatrrr')rr$reason)r!rr r3Rs   zTextTestResult.addSkipcs_tt|j|||jr5|jjdn&|jr[|jjd|jjdS)Nzexpected failurex) rraddExpectedFailurerrrrrr')rr$r.)r!rr r7Zs   z!TextTestResult.addExpectedFailurecs\tt|j||jr2|jjdn&|jrX|jjd|jjdS)Nzunexpected successu) rraddUnexpectedSuccessrrrrrr')rr$)r!rr r9bs   z#TextTestResult.addUnexpectedSuccesscCsI|js|jr|jj|jd|j|jd|jdS)Nr+r/)rrrrprintErrorListerrorsfailures)rrrr printErrorsjs zTextTestResult.printErrorscCsxxq|D]i\}}|jj|j|jjd||j|f|jj|j|jjd|qWdS)Nz%s: %sz%s)rr separator1r% separator2)rZflavourr;r$r.rrr r:ps #zTextTestResult.printErrorList)rrrrr>r?r r%r&r*r-r1r3r7r9r=r:rr)r!r rs     rc @s[eZdZdZeZdddddddddddZd d Zd d ZdS) TextTestRunnerzA test runner class that displays results in textual form. It prints out the names of tests as they are run, errors as they occur, and a summary of the results at the end of the test run. NTrF tb_localsc Css|dkrtj}t||_||_||_||_||_||_||_ |dk ro||_ dS)zConstruct a TextTestRunner. Subclasses should accept **kwargs to ensure compatibility as the interface changes. N) sysstderrrrrr failfastbufferrAwarnings resultclass) rrrr rDrErGrFrArrr r s         zTextTestRunner.__init__cCs|j|j|j|jS)N)rGrrr )rrrr _makeResultszTextTestRunner._makeResultcCs|j}t||j|_|j|_|j|_tj|jrtj|j|jdkrtjddt ddt j }t |dd}|dk r|z||Wdt |d d}|dk r|Xt j }WdQRX||}|j t |d r9|jj|j|j}|jjd ||d krcd pfd|f|jjd} } } y%tt|j|j|jf} Wntk rYnX| \} } } g} |jsG|jjdt|jt|j}}|r-| jd||rW| jd|n|jjd| rn| jd| | r| jd| | r| jd| | r|jjddj| fn|jjd|S)z&Run the given test case or test suite.defaultalwaysmodulecategorymessagezPlease use assert\w+ instead. startTestRunN stopTestRunr?zRan %d test%s in %.3fsrr2rZFAILEDz failures=%dz errors=%dZOKz skipped=%dzexpected failures=%dzunexpected successes=%dz (%s)z, r)rIrJ)rHrrDrErArFcatch_warnings simplefilterfilterwarningsDeprecationWarningtimer r=hasattrrrr?ZtestsRunmaplenZexpectedFailuresunexpectedSuccessesskippedr Z wasSuccessfulrr<r;appendr")rr$rZ startTimerNrOZstopTimeZ timeTakenrunZ expectedFailsrYrZresultsZinfosZfailedZerroredrrr r\sr               #    #zTextTestRunner.run) rrrrrrGr rHr\rrrr r@xs   r@)rrBrUrFrPrZsignalsrZ __unittestobjectrZ TestResultrr@rrrr s   [