U e5d2ã@sxddlZddlmZddlmZdZdd„ZGdd „d eƒZGd d „d eƒZGd d „d eƒZ dd„Z Gdd„deƒZ dS)éNé)Úcase)ÚutilTcCst||dd„ƒ}|ƒdS)NcSsdS©N©rrrú&/usr/lib64/python3.8/unittest/suite.pyÚ óz!_call_if_exists..)Úgetattr)ÚparentÚattrÚfuncrrrÚ_call_if_exists src@sjeZdZdZddd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„ZdS)Ú BaseTestSuiteTrcCsg|_d|_| |¡dS©Nr)Ú_testsÚ_removed_testsÚaddTests)ÚselfÚtestsrrrÚ__init__szBaseTestSuite.__init__cCsdt |j¡t|ƒfS)Nz <%s tests=%s>)rÚstrclassÚ __class__Úlist©rrrrÚ__repr__szBaseTestSuite.__repr__cCs t||jƒstSt|ƒt|ƒkSr)Ú isinstancerÚNotImplementedr)rÚotherrrrÚ__eq__s zBaseTestSuite.__eq__cCs t|jƒSr)ÚiterrrrrrÚ__iter__"szBaseTestSuite.__iter__cCs$|j}|D]}|r || ¡7}q |Sr)rÚcountTestCases)rZcasesÚtestrrrr"%s zBaseTestSuite.countTestCasescCsLt|ƒstd t|ƒ¡ƒ‚t|tƒr       þ þzTestSuite._handleModuleFixtureNcCs$|›d|›d�}| ||||¡dS)Nz (ú))Ú_addClassOrModuleLevelException)rr3rVZ method_namer rNÚ errorNamerrrrRász,TestSuite._createClassOrModuleLevelExceptioncCs^t|ƒ}t|ddƒ}|dk r8t|tjƒr8||t|ƒƒn"|sN| |t ¡¡n | ||¡dS)NÚaddSkip) Ú _ErrorHolderr rrZSkipTestr.ZaddErrorr\Úexc_info)rr3Z exceptionrcrNÚerrorrdrrrrbæs z)TestSuite._addClassOrModuleLevelExceptioncCs| |¡}|dkrdS|jr dSztj|}Wntk rDYdSXt|ddƒ}|dk �rt|dƒzNz |ƒWn>t k r°}z t |t ƒr�‚|  ||d|¡W5d}~XYnXW5t|dƒz t ¡Wn4t k �r}z|  ||d|¡W5d}~XYnXXdS)NÚtearDownModulerKrL) rZrAr\r]r^r rrr_rSrRrrH)rr3rYr`rhrXrrrrGòs:      þ  þzTestSuite._handleModuleTearDownc Cst|ddƒ}|j}||krdSt|ddƒr.dSt|ddƒr>dSt|ddƒrNdSt|ddƒ}|dk �rt|dƒzXz |ƒWnHt k rÂ}z*t |t ƒr˜‚t |¡}| ||d|¡W5d}~XYnXW5t|dƒ| ¡t|jƒd k�r|jD]&}t |¡}|j||d d||d �qðXdS) NrFr@FrArIÚ tearDownClassrKrLrrrM) r rrrOrPrQrrrRrSrrH) rr#r3rTrUrirVrWrXrrrrCsB          þ    ýz TestSuite._tearDownPreviousClass)F)N)N) r<r=r>r5r;rErZrDrRrbrGrCrrrrr*\s !($ÿ ÿ  r*c@sPeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dd„Z dS)reNcCs ||_dSr©Ú description)rrkrrrrBsz_ErrorHolder.__init__cCs|jSrrjrrrrÚidEsz_ErrorHolder.idcCsdSrrrrrrÚshortDescriptionHsz_ErrorHolder.shortDescriptioncCs d|jfS)NzrjrrrrrKsz_ErrorHolder.__repr__cCs| ¡Sr)rlrrrrÚ__str__Nsz_ErrorHolder.__str__cCsdSrr©rr3rrrr5Qsz_ErrorHolder.runcCs | |¡Srr7rorrrr:Vsz_ErrorHolder.__call__cCsdSrrrrrrr"Ysz_ErrorHolder.countTestCases) r<r=r>ZfailureExceptionrrlrmrrnr5r:r"rrrrre6s recCs(z t|ƒWntk r"YdSXdS)NTF)r r%)r#rrrrB\s  rBc@seZdZdZdZdZdS)rHNF)r<r=r>rFrAr0rrrrrHesrH) r\ÚrrZ __unittestrÚobjectrr*rerBrHrrrrÚs  L[&