PNG  IHDR* pHYs+ IDATx]n#; cdLb Ǚ[at¤_:uP}>!Usă cag޿ ֵNu`ݼTâabO7uL&y^wFٝA"l[|ŲHLN밪4*sG3|Dv}?+y߉{OuOAt4Jj.u]Gz*҉sP'VQKbA1u\`& Af;HWj hsO;ogTu uj7S3/QzUr&wS`M$X_L7r2;aE+ώ%vikDA:dR+%KzƉo>eOth$z%: :{WwaQ:wz%4foɹE[9<]#ERINƻv溂E%P1i01 |Jvҗ&{b?9g=^wζXn/lK::90KwrюO\!ջ3uzuGv^;騢wq<Iatv09:tt~hEG`v;3@MNZD.1]L:{ծI3`L(÷ba")Y.iljCɄae#I"1 `3*Bdz>j<fU40⨬%O$3cGt]j%Fߠ_twJ;ABU8vP3uEԑwQ V:h%))LfraqX-ۿX]v-\9I gl8tzX ]ecm)-cgʒ#Uw=Wlێn(0hPP/ӨtQ“&J35 $=]r1{tLuǮ*i0_;NƝ8;-vݏr8+U-kruȕYr0RnC]*ެ(M:]gE;{]tg(#ZJ9y>utRDRMdr9㪩̞zֹb<ģ&wzJM"iI( .ꮅX)Qw:9,i좜\Ԛi7&N0:asϓc];=ΗOӣ APqz93 y $)A*kVHZwBƺnWNaby>XMN*45~ղM6Nvm;A=jֲ.~1}(9`KJ/V F9[=`~[;sRuk]rєT!)iQO)Y$V ی ۤmzWz5IM Zb )ˆC`6 rRa}qNmUfDsWuˤV{ Pݝ'=Kֳbg,UҘVz2ﴻnjNgBb{? ߮tcsͻQuxVCIY۠:(V뺕 ٥2;t`@Fo{Z9`;]wMzU~%UA蛚dI vGq\r82iu +St`cR.6U/M9IENDB`3 \(@s|dZddlZddlmZddlmZdZddZGd d d eZGd ddeZ Gd d d eZ ddZ GdddeZ dS) TestSuiteN)case)utilTcCst||dd}|dS)NcSsdS)Nrrr&/usr/lib64/python3.6/unittest/suite.py sz!_call_if_exists..)getattr)parentattrfuncrrr_call_if_exists sr c@speZdZdZdZffddZddZddZd d Zd d Z d dZ ddZ ddZ ddZ ddZddZdS) BaseTestSuitezNA simple test suite that doesn't provide class or module shared fixtures. TcCsg|_d|_|j|dS)Nr)_tests_removed_testsaddTests)selftestsrrr__init__szBaseTestSuite.__init__cCsdtj|jt|fS)Nz <%s tests=%s>)rstrclass __class__list)rrrr__repr__szBaseTestSuite.__repr__cCs t||jstSt|t|kS)N) isinstancerNotImplementedr)rotherrrr__eq__s zBaseTestSuite.__eq__cCs t|jS)N)iterr)rrrr__iter__"szBaseTestSuite.__iter__cCs(|j}x|D]}|r ||j7}q W|S)N)rcountTestCases)rZcasestestrrrr%s  zBaseTestSuite.countTestCasescCsLt|stdjt|t|trdSt|ddrNdSt|dd}|dk rt|dz^y |WnNtk r}z2t|trtj|}d|}|j|||WYdd}~XnXWdt|d XdS) NrAr;Fr<rD tearDownClassrFztearDownClass (%s)rG) r rr rHrrCrrrI) rr r.rJrKr[rLrMrNrrrr>s,         $z TestSuite._tearDownPreviousClassN)F) r6r7r8r9r0r5r@rPr?rIrBr>rrrrr\s ! c@sTeZdZdZdZddZddZddZd d Zd d Z d dZ ddZ ddZ dS)rWz Placeholder for a TestCase inside a result. As far as a TestResult is concerned, this looks exactly like a unit test. Used to insert arbitrary errors into a test suite run. NcCs ||_dS)N) description)rr\rrrrsz_ErrorHolder.__init__cCs|jS)N)r\)rrrridsz_ErrorHolder.idcCsdS)Nr)rrrrshortDescription sz_ErrorHolder.shortDescriptioncCs d|jfS)Nz)r\)rrrrr#sz_ErrorHolder.__repr__cCs|jS)N)r])rrrr__str__&sz_ErrorHolder.__str__cCsdS)Nr)rr.rrrr0)sz_ErrorHolder.runcCs |j|S)N)r0)rr.rrrr4.sz_ErrorHolder.__call__cCsdS)Nrr)rrrrr1sz_ErrorHolder.countTestCases) r6r7r8r9ZfailureExceptionrr]r^rr_r0r4rrrrrrWsrWc Cs&y t|Wntk r dSXdS)z?A crude way to tell apart testcases and suites with duck-typingTF)rr")r rrrr=4s  r=c@seZdZdZdZdZdZdS)rCzCUsed by the TestSuite to hold previous class when running in debug.NF)r6r7r8r9rAr<r+rrrrrC=srC) r9rRrrZ __unittestr objectrrrWr=rCrrrrs  L3&