a ze!@sDddlZddlZddlZddlZddlZddlmZGdddZGdddZGdddZ Gd d d Z Gd d d Z Gd ddZ GdddZ Gdddeje ZGdddeZGdddeZGdddeZGdddeZGdddeje ZGdddeZGdd d eZGd!d"d"eZed#kr@edS)$N)supportc@seZdZddZddZdS)GcCs ||_dSNseqnselfrr G/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_enumerate.py__init__ sz G.__init__cCs |j|Srrrir r r __getitem__ sz G.__getitem__N)__name__ __module__ __qualname__r rr r r r r src@s$eZdZddZddZddZdS)IcCs||_d|_dSNrrr rr r r r sz I.__init__cCs|Srr rr r r __iter__sz I.__iter__cCs2|jt|jkrt|j|j}|jd7_|SNr lenr StopIterationrvr r r __next__s z I.__next__Nrrrr rrr r r r rsrc@seZdZddZddZdS)IgcCs||_d|_dSrrrr r r r sz Ig.__init__ccs|jD] }|VqdSrr)rvalr r r r"s z Ig.__iter__Nrrrr rr r r r r sr c@seZdZddZddZdS)XcCs||_d|_dSrrrr r r r (sz X.__init__cCs2|jt|jkrt|j|j}|jd7_|Srrrr r r r+s z X.__next__N)rrrr rr r r r r#&sr#c@s$eZdZddZddZddZdS)EcCs||_d|_dSrrrr r r r 3sz E.__init__cCs|Srr rr r r r6sz E.__iter__cCs dddS)Nrr rr r r r8sz E.__next__Nrr r r r r$1sr$c@seZdZddZddZdS)NcCs||_d|_dSrrrr r r r =sz N.__init__cCs|Srr rr r r r@sz N.__iter__Nr"r r r r r&;sr&c@seZdZddZdS) PickleTestc CsttjdD]}t||}t|}|t|t||t||t|}z t|Wn(t y| |ddYqYn0t||}t|}|t||ddqdSr) rangepickleHIGHEST_PROTOCOLdumpsloads assertEqualtypelistnextrZ assertFalse)rZitorgseqprotoditr r r check_pickleEs        zPickleTest.check_pickleN)rrrr5r r r r r'Csr'c@seZdZeZdgdZZddZddZddZ d d Z d d Z d dZ ddZ ddZddZejddZejddZdS)EnumerateTestCaseabc))ra)rb)ccCs\|t||j|j||j}|t|||t||j|j|jjdSr)r-r.enumr1iterr/res__doc__rer r r test_basicfunction[s  z$EnumerateTestCase.test_basicfunctioncCs|||j|jdSr)r5r<r1r>rr r r test_picklebszEnumerateTestCase.test_picklecCs>|t|t|j|j|td}|tt|dSN) r-r/r<rr1r> assertRaisesrr0r@r r r test_getitemseqnesz"EnumerateTestCase.test_getitemseqncCs>|t|t|j|j|td}|tt|dSrD) r-r/r<rr1r>rFrr0r@r r r test_iteratorseqnjsz#EnumerateTestCase.test_iteratorseqncCs>|t|t|j|j|td}|tt|dSrD) r-r/r<r r1r>rFrr0r@r r r test_iteratorgeneratorosz(EnumerateTestCase.test_iteratorgeneratorcCs|t|jt|jdSr)rF TypeErrorr<r#r1rr r r test_noniterabletsz"EnumerateTestCase.test_noniterablecCs|t|jt|jdSr)rFrJr<r&r1rr r r test_illformediterablewsz(EnumerateTestCase.test_illformediterablecCs|tt|t|jdSr)rFZeroDivisionErrorr/r<r$r1rr r r test_exception_propagationzsz,EnumerateTestCase.test_exception_propagationcCsH|t|j|t|jd|t|jdd|t|jddddS)Nrr7r8r:r%)rFrJr<rr r r test_argumentcheck}sz$EnumerateTestCase.test_argumentcheckc CsZ|tttttt|jt|j|ttttt|jtdt|jdSr) r-rsetmapidr/ enumerater1minrr r r test_tuple_reuses*z"EnumerateTestCase.test_tuple_reusecCs,|gg}t|tt|dSr)r<gcZcollectZ assertTrueZ is_trackedr0)rr4r r r test_enumerate_result_gcs z*EnumerateTestCase.test_enumerate_result_gcN)rrrrSr<r1r>rBrCrGrHrIrKrLrNrOrZ cpython_onlyrUrWr r r r r6Vs r6c@s eZdZdS)MyEnumN)rrrr r r r rXsrXc@seZdZeZdS)SubclassTestCaseN)rrrrXr<r r r r rYsrYc@seZdZdgZZdS) TestEmptyrEN)rrrr1r>r r r r rZsrZc@s*eZdZedddZeeedeZdS)TestBig i Nr:N)rrrr(r1r/zipr>r r r r r[s r[c@s^eZdZddZddZddZddZd d Ze e e d d d dZ ddZ ddZdS) TestReversedcCsxGddd}dtdttd|tdddtdfD]&}|t|dddtt|q:|jt tgdd dS) Nc@seZdZddZddZdS)z#TestReversed.test_simple..AcSs|dkrt|StdSN)strrr r r r rsz/TestReversed.test_simple..A.__getitem__cSsdSr_r rr r r __len__sz+TestReversed.test_simple..A.__len__N)rrrrrbr r r r Asrcr7r`rZabcde)r8) r(tuplerSdictfromkeysr-r/reversedrFrJ)rrcdatar r r test_simples $zTestReversed.test_simplecCs(td}|tt|tt|dSr)r(r-r.rir=)rxr r r test_range_optimizationsz$TestReversed.test_range_optimizationcCsdtdtdtdfD]@}|tt|t|t|}t||t|dqGddd}t|}|t tj|dS)NZhellor`rc@s eZdZdZddZddZdS)z.TestReversed.test_len..SeqWithWeirdLenFcSs|jsd|_dStdS)NTr\)calledrMrr r r rbsz6TestReversed.test_len..SeqWithWeirdLen.__len__cSs|Srr rindexr r r rsz:TestReversed.test_len..SeqWithWeirdLen.__getitem__N)rrrrnrbrr r r r SeqWithWeirdLensrq) rfr/r(r-operator length_hintrirrFrM)rsrrqr r r test_lens zTestReversed.test_lencCs&Gddd}|}t|}||_dS)Nc@seZdZddZddZdS)z!TestReversed.test_gc..SeqcSsdS)Nr\r rr r r rbsz)TestReversed.test_gc..Seq.__len__cSs|Srr ror r r rsz-TestReversed.test_gc..Seq.__getitem__N)rrrrbrr r r r Seqsrw)riru)rrwrtrur r r test_gcszTestReversed.test_gccCs |tt|ttgddS)Nextra)rFrJrirr r r test_argss zTestReversed.test_args getrefcountztest needs sys.getrefcount()c Csldd}t}|_t|}tdD].}z t|WntyHYq&0|dq&||t|dS)NcSsdSrr r r r r fsz'TestReversed.test_bug1229429..fr\z'non-callable __reversed__ didn't raise!) object __reversed__sysr{r(rirJZfailr-)rr|rurcr r r r test_bug1229429s      zTestReversed.test_bug1229429cCspGdddt}|}|tt|Gdddt}|}|tt|Gdddt}|}|tt|dS)Nc@seZdZddZdS)z+TestReversed.test_objmethods..NoLencSsdSrr r r r r rz7TestReversed.test_objmethods..NoLen.__getitem__N)rrrrr r r r NoLensrc@seZdZddZdS)z/TestReversed.test_objmethods..NoGetItemcSsdSNr:r rr r r rbrz7TestReversed.test_objmethods..NoGetItem.__len__N)rrrrbr r r r NoGetItemsrc@s eZdZddZddZdZdS)z-TestReversed.test_objmethods..BlockedcSsdSrr r r r r rrz9TestReversed.test_objmethods..Blocked.__getitem__cSsdSrr rr r r rbrz5TestReversed.test_objmethods..Blocked.__len__N)rrrrrbr~r r r r Blockedsr)r}rFrJri)rrnlrZngirr9r r r test_objmethodsszTestReversed.test_objmethodscCsHdtdttdtdddfD]"}|t|t|dddq dS)Nr7r`rrdre)r(rfrSr5rir/)rrjr r r rCs$zTestReversed.test_pickleN)rrrrkrmrvrxrzunittestZ skipUnlesshasattrrrrrCr r r r r^s  r^c@seZdZddZdS)EnumerateStartTestCasecCs:||j}|t|||t||j|jdSr)r<r1r-r=r/r>r@r r r rBs z)EnumerateStartTestCase.test_basicfunctionN)rrrrBr r r r rsrc@s"eZdZddZdgdZZdS) TestStartcCs t|ddS)N start)rSr r r r rzTestStart.r7))rr8) r9) r;N)rrrr<r1r>r r r r r src@sBeZdZddZdejddfejddfejdd fgZZd S) TestLongStartcCst|tjddS)Nrr)rSrmaxsizer r r r rrzTestLongStart.r7rr8r:r9r%r;N)rrrr<rrr1r>r r r r rs r__main__)rrrrr)rVtestrrrr r#r$r&r'ZTestCaser6rSrXrYrZr[r^rrrrmainr r r r s.     @^