a 4dgz;@sddlZddlZddlZddlmZddlmZmZddZGdddZ Gdd d Z Gd d d Z Gd d d Z GdddZ GdddZGdddZddlmZddZGdddeZGdddeZGdddejZdS)N)support) ALWAYS_EQNEVER_EQccs|D] }|VqdSNseqnirr*/usr/local/lib/python3.9/test/seq_tests.pyiterfunc sr c@seZdZddZddZdS)SequencecCs ||_dSrrselfrrrr __init__szSequence.__init__cCs |j|Srr rr rrr __getitem__szSequence.__getitem__N)__name__ __module__ __qualname__rrrrrr r sr c@s$eZdZddZddZddZdS)IterFunccCs||_d|_dSNrrrrrr rszIterFunc.__init__cCs|Srrrrrr __iter__szIterFunc.__iter__cCs2|jt|jkrt|j|j}|jd7_|SNr lenr StopIterationrvrrr __next__ s zIterFunc.__next__Nrrrrrr!rrrr rsrc@seZdZddZddZdS)IterGencCs||_d|_dSrrrrrr r(szIterGen.__init__ccs|jD] }|VqdSrr )rvalrrr r+s zIterGen.__iter__Nrrrrrrrrr r#&sr#c@seZdZddZddZdS) IterNextOnlycCs||_d|_dSrrrrrr r1szIterNextOnly.__init__cCs2|jt|jkrt|j|j}|jd7_|Srrrrrr r!4s zIterNextOnly.__next__N)rrrrr!rrrr r&/sr&c@seZdZddZddZdS) IterNoNextcCs||_d|_dSrrrrrr r<szIterNoNext.__init__cCs|Srrrrrr r?szIterNoNext.__iter__Nr%rrrr r':sr'c@s$eZdZddZddZddZdS) IterGenExccCs||_d|_dSrrrrrr rDszIterGenExc.__init__cCs|Srrrrrr rGszIterGenExc.__iter__cCs dddS)Nrrrrrr r!IszIterGenExc.__next__Nr"rrrr r(Bsr(c@s$eZdZddZddZddZdS) IterFuncStopcCsdSrrrrrr rNszIterFuncStop.__init__cCs|Srrrrrr rPszIterFuncStop.__iter__cCstdSr)rrrrr r!RszIterFuncStop.__next__Nr"rrrr r*Lsr*)chaincCsttddttt|S)NcSs|Srr)xrrr Xzitermulti..)r+mapr r#r r rrr itermultiVsr0c@seZdZddZdS) LyingTupleccs dVdSrrrrrr r[szLyingTuple.__iter__Nrrrrrrrr r1Zsr1c@seZdZddZdS) LyingListccs dVdSrrrrrr r_szLyingList.__iter__Nr2rrrr r3^sr3c@seZdZdZddZddZddZdd Zd d Zd d Z ddZ ddZ ddZ ddZ ddZddZddZddZddZd d!Zd"d#Zd$d%Zd&d'Zd(d)ZdS)* CommonTestNcCsg}dg}ddg}|}||}||}||}||}||} ||} ||} |t|} Gddd} | |}||}|t|t|d}||}|t|t|ddtdd td d d fD]}ttttt fD] }||||||q||t ||||d ddD|d| t |jt || t |jt|| t|jt|q||td|d||tdg|dgdS)Nrrc@s$eZdZddZddZddZdS)z.CommonTest.test_constructors..OtherSeqcSs ||_dSr_OtherSeq__data)rZinitseqrrr rwsz7CommonTest.test_constructors..OtherSeq.__init__cSs t|jSr)rr6rrrr __len__ysz6CommonTest.test_constructors..OtherSeq.__len__cSs |j|Srr5rrrr r{sz:CommonTest.test_constructors..OtherSeq.__getitem__N)rrrrr7rrrrr OtherSeqvsr8zthis is also a sequenceZ123)Zdog333333?iicss|] }|VqdSrr).0crrr r.z/CommonTest.test_constructors..))rr?) type2testtuple assertEqualrranger rr#r0r r* assertRaises TypeErrorr&r'ZeroDivisionErrorr(r1r3)rZl0l1l2uZu0u1u2uuZuu0Zuu1Zuu2r r8sZv0Zvvgrrr test_constructorsfs>         "zCommonTest.test_constructorscCs$||||dgdS)N*)Z assertFalser@Z assertTruerrrr test_truthszCommonTest.test_truthcCs||gd}tt|D](}||||||t||qtt| dD]8}|||t||||t|t||qT|t|jt| d|t|jt||t|jt ddd|}|t|jd|t|jd|t |j|ddg}||dd||dd||dd||dd|t|jd|t|jd dS) Nrrr?r)rr r)) r@rCrrBintrD IndexErrorr ValueErrorslicerE)rrIr arrr test_getitems*zCommonTest.test_getitemcCs0gd}||}||dd|||dd|dg||dd|dg||dd |||d d|g||dd|||dd|gd ||dd|gd ||dd|||ddd|gd ||ddd|ddg||ddd|gd ||ddd|gd||ddd|ddg||ddd|g||ddd|dg||ddd|dg||ddd|ddg||ddd|dg||dd|g||dd|||ddd|ddd||ddd|g||ddd|gd |gd}||tdd d|gd ||dtdd|ddg||ddtj|dgdS)NrRrrr?rWrTr)ir:)rr?r)rSrrr?)rr?rS)rSr)r?rr)rSr?rirSd)r@rBpowsysmaxsize)rlrIr]rrr test_getslices<         &$zCommonTest.test_getslicecCs`|gd}|D]}|||qt|dt|dfD]}|||q<|t|jdS)Nr_r)r@assertInminmax assertNotInrDrE __contains__)rrIr rrr test_containss zCommonTest.test_containscCsx|t|g|t|dg|d|tg|t|g|t|tg|t|tgdSr)rkrr@rhrrrrr test_contains_fakes zCommonTest.test_contains_fakecsbGdddtGfddd}|d|g}|d|||dg}||jddS)Nc@s eZdZdS)z3CommonTest.test_contains_order..DoNotTestEqNrrrrrrr DoNotTestEqsrpcseZdZfddZdS)z4CommonTest.test_contains_order..StopComparescsdSrrrotherrprr __eq__sz;CommonTest.test_contains_order..StopCompares.__eq__Nrrrrtrrsrr StopComparessrvr) Exceptionr@rhrDrl)rrvZ checkfirstZ checklastrrsr test_contains_orders  zCommonTest.test_contains_ordercCs`|t|d|t|gd|t|dgd|t|gdddS)Nrrr_r))rBrr@rrrr test_lenszCommonTest.test_lencCs2|gd}|t|d|t|ddS)Nr_rr?)r@rBrirjrrIrrr test_minmaxszCommonTest.test_minmaxcCs|dg}|ddg}|||||||||||dg|||dg||ddg|||d||d||||d||d||||d||d||||d||d|||||d|||d|||||d|||d||||||d||||d|Gddd|j}|ddg}|||d|||ddS)NrrrTr?r)c@s eZdZdS)z(CommonTest.test_addmul..subclassNrorrrr subclasssr|)r@rBZ assertIsNot)rrJrKr|u3rrr test_addmuls0 " zCommonTest.test_addmulcCs|ddg}||7}|||ddg||ddg7}|||gd||ddg7}|||gd|d }||d 7}|||d dS) Nrrr?r)rrr?r)rSr;)rrr?r)rSr;ZspamZeggsZspameggsr@rBrzrrr test_iadd!s  zCommonTest.test_iaddcCsJ|ddg}|d9}|||gd|d9}|||gdS)Nrrr))rrrrrrrrzrrr test_imul.s zCommonTest.test_imulcCs.Gddd|j}|tt|dddS)Nc@seZdZddZdS)z/CommonTest.test_getitemoverwriteiter..TcSs t|dS)Nz!!!)str)rkeyrrr r8sz;CommonTest.test_getitemoverwriteiter..T.__getitem__N)rrrrrrrr T7sr)rr?r)r@rBnextiter)rrrrr test_getitemoverwriteiter5sz$CommonTest.test_getitemoverwriteitercCstdD]t}tt|}tddD]$}|||||||q"|||d|g|t|t|dqdS)NrSrXr;r)rCrArBr@id)rmrMnrrr test_repeat<s   "zCommonTest.test_repeatcCsLtjdkrH|dg}|d9}|t|jdt|drH|t|jddS)Niri__imul__)rdrer@rD MemoryError__mul__hasattrr)rr,rrr test_bigrepeatDs    zCommonTest.test_bigrepeatcCsD|ddg}||dd||dd||dd||dd|t|jd|t|jd||tdd|dg||tdd |dg||tdd |ddg||tdd|ddg||tdd |g|t|jtddd|t|jd dS) NrUrVrrrWrTrXr)r?r;r,)r@rBrrDrZr\r[rE)rr]rrr test_subscriptLs  ""zCommonTest.test_subscriptcs|gdd}||dd||dd||dd||td||ttgdd||ttgtd||ttgtd|t|jGdddtGfd d d }||j|dS) Nr_r)rr r?c@s eZdZdS)z%CommonTest.test_count..BadExcNrorrrr BadExcisrcseZdZfddZdS)z%CommonTest.test_count..BadCmpcs|dkrdSNr?Frrqrrr rtmsz,CommonTest.test_count..BadCmp.__eq__Nrurrrr BadCmplsr)r@rBcountrrrDrErw)rr]rrrr test_count\szCommonTest.test_countcs|ddg}||dd||dd|t|jd|gd}||dd||dd||ddd||ddd||ddd||dddd|t|jddd||td||ttgdd||ttgtd|t|ttgjt|t|jGd d d t Gfd d d }|gd }||j||gd}||dd||ddd||ddd||ddd||ddd||ddd||dddd||dddd||ddt j dt j d|t|jddt j dt j |t|jddddS)Nrrr?)rWrTrrrr?rWir)rSc@s eZdZdS)z%CommonTest.test_index..BadExcNrorrrr rsrcseZdZfddZdS)z%CommonTest.test_index..BadCmpcs|dkrdSrrrqrrr rtsz,CommonTest.test_index..BadCmp.__eq__Nrurrrr rsrrrrX) r@rBindexrDr[rrrrErwrdre)rrIrr]rrr test_indextsB" zCommonTest.test_indexcCsX|gd}ttjdD]6}tt||}||||t|t|qdS)N)rSr;r) r@rCpickleHIGHEST_PROTOCOLloadsdumpsrBZassertNotEqualr)rZlstprotoZlst2rrr test_pickles  zCommonTest.test_picklecCs$t|t|jt|t|jdSr)rZcheck_free_after_iteratingrr@reversedrrrr test_free_after_iteratingsz$CommonTest.test_free_after_iterating)rrrr@rOrQr^rgrmrnrxryr{r~rrrrrrrrrrrrrr r4bs*.%   /r4)ZunittestrdrtestrZ test.supportrrr r rr#r&r'r(r* itertoolsr+r0rAr1listr3ZTestCaser4rrrr s"