a ze|!@s ddlZddlmZddlZejZGdddZGdddeZGdddej Z Gd d d Z Gd d d e ej Z Gd ddZ Gddde ej ZGddde ej ZGddde ej ZGddde ej ZGddde ej ZGdddej ZGdddej ZedkredS)N)supportc@seZdZddZdS)newstylecCs|jSN)indselfrC/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_index.py __index__sznewstyle.__index__N__name__ __module__ __qualname__r rrrr rsrc@seZdZddZdS)TrapIntcCst|Sr)intrrrr r szTrapInt.__index__Nr rrrr r src@sLeZdZddZddZddZddZd d Zd d Zd dZ ddZ dS) BaseTestCasecCst|_t|_dSr)ronrrrr setUpszBaseTestCase.setUpcCs<d|j_d|j_|t|jd|t|jddSN)rrr assertEqualoperatorindexrrrr test_basicszBaseTestCase.test_basiccCsd|j_d|j_t|j|j|j}tddd}|||j|dt|j|j|j}tddd}|||j|ddS)Nr)rrrslicerindices)rZslcZ check_slcrrr test_slices  zBaseTestCase.test_slicecCszd|j_d|j_|dd|d d||jd||jd|dd|dd dS) NiTrFr)rrrrr rrrr test_wrappers#szBaseTestCase.test_wrapperscCsLttd}||tdtd|dd|ttdddS)N r!r)rrr)listrangerrrr)rrrrr test_subclasses-s $zBaseTestCase.test_subclassescCsdd|j_d|j_|ttj|j|ttj|j|tt|jjd|tt|jjddS)Ndumbbadr) rrr assertRaises TypeErrorrrrrrrrr test_error2s zBaseTestCase.test_errorcCsVGdddt}|d}|}t|}||d||d|t|tdS)Nc@seZdZddZdS)z8BaseTestCase.test_int_subclass_with_index..MyIntcSstt|dS)Nr)rstrrrrr r >szBBaseTestCase.test_int_subclass_with_index..MyInt.__index__Nr rrrr MyInt=sr0r#)rr rrrassertIstype)rr0Zmy_intZ direct_indexZoperator_indexrrr test_int_subclass_with_index:s   z)BaseTestCase.test_int_subclass_with_indexcCsGddd}Gdddt}|}|tt|}Wdn1sN0Y||d|}t|}||ddS)Nc@seZdZddZdS)z.BadIntcSsdSNTrrrrr r LszFBaseTestCase.test_index_returns_int_subclass..BadInt.__index__Nr rrrr BadIntKsr6c@seZdZddZdS)z=BaseTestCase.test_index_returns_int_subclass..BadInt2cSsdSr5rrrrr r PszGBaseTestCase.test_index_returns_int_subclass..BadInt2.__index__Nr rrrr BadInt2Osr7rr)rZ assertWarnsDeprecationWarningrrr)rr6r7Zbad_intrrrr test_index_returns_int_subclassJs (  z,BaseTestCase.test_index_returns_int_subclassN) r r rrrrr$r)r.r4r9rrrr rs  rc@sLeZdZddZddZddZddZd d Zd d Zd dZ ddZ dS) SeqTestCasecCs$t|_t|_t|_t|_dSr)rrro2n2rrrr r`szSeqTestCase.setUpcCsHd|j_d|j_||j|j|jd||j|j|jddSrrrrrseqrrrr test_indexfszSeqTestCase.test_indexcCsld|j_d|j_d|j_d|j_||j|j|j|jdd||j|j|j|jdddS)Nrrr )rrr;rr<rr>rrrr rls $zSeqTestCase.test_slicecCs:t|j}t|d|j_|d|j_||j|jd|jdd||jd|j|j||j|jd|jdd||jd|j|j| d|j_t|d |j_||j|jd|j||jd|j|jdd||j|jd|j||jd|j|jdddS)Ng?rr) lenr>rrrrrr;r<)rZseqlenrrr test_slice_bug7532ts  """zSeqTestCase.test_slice_bug7532cCs|d|j_d|j_||j|j|jd||j|j|jd||j|j|jd||j|j|jddS)Nr@rr=rrrr test_repeats zSeqTestCase.test_repeatcCsd|j_d|j_||j|j|jd||j|j|jd||j|j|jd||j|j|jd||j|j|jd||j|j|jddS)Nr r!)rrrrr> __getitem____mul____rmul__rrrr r$szSeqTestCase.test_wrapperscCs||jt|jddS)Nr)rr>rrrrr r)szSeqTestCase.test_subclassescCsld|j_d|j_dd}|t||j||t||j|dd}|t||j||t||j|dS)Nr*r+cSs |j|Srr>xobjrrr z(SeqTestCase.test_error..cSs|j|dSrrGrHrrr rKrL)rrrr,r-)rZindexobjZsliceobjrrr r.szSeqTestCase.test_errorN) r r rrr?rrBrCr$r)r.rrrr r:]s r:c@s$eZdZgdZddZddZdS) ListTestCaserr%(2cCsd|j_d|j_td}||j=||j=d||j<d||j<||tdgd}||jd||gd ||j||gd dS) Nrrz ab!cdefghi!jXYZ abYdefghXj)r!r"r#r1 r% here)r!r"rWr1rUr%rV)r!r"r1rUr%rV)rrrr&r __setitem__ __delitem__)rlstrrr test_setdelitems   zListTestCase.test_setdelitemcCsd|j_d|j_ddg}||j9}||gd||j9}||gddgd}||j}|||||gdddS)Nrr@r"r )r"r r"r )r!r"r#r1rUrV)rrrr__imul__r2)rrZl2rrr test_inplace_repeats    z ListTestCase.test_inplace_repeatN)r r rr>r[r^rrrr rMsrMc@s@eZdZddZddZddZddZd d ZeZd d Z d S)NewSeqcCst||_dSr)r&_list)riterablerrr __init__szNewSeq.__init__cCs t|jSr)reprr`rrrr __repr__szNewSeq.__repr__cCs |j|kSrr`)rotherrrr __eq__sz NewSeq.__eq__cCs t|jSr)rAr`rrrr __len__szNewSeq.__len__cCs||j|Sr) __class__r`rrrrr rEszNewSeq.__mul__cCs |j|Srre)rrrrr rDszNewSeq.__getitem__N) r r rrbrdrgrhrErFrDrrrr r_sr_c@seZdZdZdS) TupleTestCaserNNr r rr>rrrr rksrkc@seZdZedZdS)ByteArrayTestCasethis is a testN)r r r bytearrayr>rrrr rmsrmc@seZdZdZdS) BytesTestCasernNrlrrrr rpsrpc@seZdZdZdS)StringTestCasezthis is a testNrlrrrr rqsrqc@seZdZedZdS)NewSeqTestCaserNN)r r rr_r>rrrr rrsrrc@seZdZddZdS) RangeTestCasecCs>t}d|_|tdd|d|tdd|ddS)Nr!rrOr")rrrr'rDrjrrr test_rangeszRangeTestCase.test_rangeN)r r rrtrrrr rssrsc@s,eZdZddZddZddZddZd S) OverflowTestCasecCsdd|_|j |_dS)Nrd)posnegrrrr rs zOverflowTestCase.setUpcCs,||j|j||j|jdSr)rrwr rxrrrr test_large_longssz!OverflowTestCase.test_large_longscCsGddd}|}|||j|j|||j|j|||j|jtdtdf|||j|jdtdtdfdS)Nc@seZdZddZddZdS)z.OverflowTestCase.test_getitem..GetItemcSsds JddS)NFz__len__ should not be invokedrrrrr rhsz6OverflowTestCase.test_getitem..GetItem.__len__cSs|Srr)rkeyrrr rDsz:OverflowTestCase.test_getitem..GetItem.__getitem__N)r r rrhrDrrrr GetItemsr{rr)rrwrxrmaxsize)rr{rIrrr test_getitemszOverflowTestCase.test_getitemcs,tfddtfdddS)Ncs djSNa)rwrrrr rKrLz7OverflowTestCase.test_sequence_repeat..cs djSr~)rxrrrr rKrL)r, OverflowErrorrrrr test_sequence_repeat sz%OverflowTestCase.test_sequence_repeatN)r r rrryr}rrrrr rusru__main__)ZunittesttestrrZMAX_Py_ssize_tr|rrrZTestCaserr:rMr_rkrmrprqrrrsrur mainrrrr s$ OF"