python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_slice.cpython-311.opt-1.pyc

e$ddlZddlZddlZddlZddlZddlZddlmZmZddl	m
Z
dZdZGdde
ZGdd	ejZed
krejdSdS)N)loadsdumps)supportcht|drtj|Std)z
    Helper function to convert a slice argument to an integer, and raise
    TypeError with a suitable message on failure.

    	__index__zBslice indices must be integers or None or have an __index__ method)hasattroperatorindex	TypeError)args C/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_slice.pyevaluate_slice_indexrs=sK  0~c"""
/00	0c,tj|}|jdnt|j}|dkrt	d|dkrt	d|dkrdnd}|dkr|dz
n|}|j|dkr|n|}n=t|j}|dkrt
||z|nt||}|j|dkr|n|}n=t|j}|dkrt
||z|nt||}|||fS)zA
    Reference implementation for the slice.indices method.

    Nrzlength should not be negativezslice step cannot be zero)	r	r
stepr
ValueErrorstartmaxminstop)slicelengthrlowerupperrrs       r

slice_indicesrsA^F
#
#F
"11(<UZ(H(HDzz8999qyy4555((BBE((FQJJE
{u$U[11.3aiiEFNE***S=N=N
zquue#EJ//,01HHs4&=%(((#dE:J:J$rceZdZdZdZdS)MyIndexablec||_dSNvalue)selfr#s  r
__init__zMyIndexable.__init__Bs



rc|jSr!r"r$s r
rzMyIndexable.__index__Es
zrN)__name__
__module____qualname__r%rrr
rrAs2rrcVeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
S)	SliceTestc|tt|ttdddddS)Nr)assertRaisesrrr's r
test_constructorzSliceTest.test_constructorKs<)U+++)UAq!Q77777rc	j|ttdddddS)Nrr/r0zslice(1, 2, 3))assertEqualreprrr's r
	test_reprzSliceTest.test_reprOs1eAq!nn--/?@@@@@rc
|tttd|t5tdddddS#1swxYwYdS)N)r2rhashr__hash__r's r
	test_hashzSliceTest.test_hashRs)T588444


y
)
)	 	 !HH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 s	"A88A<?A<ctdddtdddtddd}||||d|d|dGddtGfd	d
t}t|t|||fdtd|td|||fdtdd|tdd|||fd
dS)Nrr/r0r1)rr/r0ceZdZdS)SliceTest.test_cmp.<locals>.ExcNr(r)r*r+rr
Excr@bDrrBceZdZfdZdS)"SliceTest.test_cmp.<locals>.BadCmpcr!r+)r$otherrBs  r
__eq__z)SliceTest.test_cmp.<locals>.BadCmp.__eq__fs	rN)r(r)r*rH)rBsr
BadCmprEes.






rrIckSr!r+s1s2sr
<lambda>z$SliceTest.test_cmp.<locals>.<lambda>lrRxrckSr!r+rKsr
rNz$SliceTest.test_cmp.<locals>.<lambda>qrOrckSr!r+rKsr
rNz$SliceTest.test_cmp.<locals>.<lambda>vrOr)rr5assertNotEqual	Exceptionobjectr2)r$s3rIrBrLrMs   @@@r
test_cmpzSliceTest.test_cmpXs+
1a^^
1a^^
1a^^R   B###B%%%B	***B###					)										V			6688__
6688__R   #/////000
1ffhh


1ffhh

R   #/////000
1a
"
"
1a
"
"R   #/////00000rctd}||jd||jd||jdtdd}||jd||jd||jdtddd}||jd||jd||jdGdd}|}t|}||j|udS)Nrr/r0ceZdZdS)(SliceTest.test_members.<locals>.AnyClassNrAr+rr
AnyClassrYrCrrZ)rr5rrr
assertTrue)r$srZobjs    r
test_memberszSliceTest.test_membersxs_!HH$'''###&&&!QKK!$$$###&&&!QNN!$$$######								hjj#JJ#
&&&&&rc	||}n#t$rd}YnwxYw	t||}n#t$rd}YnwxYw||||dkrT|jdkrKt||}t||}|||dSdSdS)N
valueerrorr)indicesrrr5rrange)r$rractualexpecteds     r

check_indiceszSliceTest.check_indicess	"]]6**FF	"	"	"!FFF	"	$$UF33HH	$	$	$#HHH	$***Q;;5:??EMM&112FV}}U+HVX.....;??s''<A
Ac
|tddd|tddddd|tddddd|tddddd|tddd	dd
|tddd	dd|tdd
dd|tdddd|tdddd|tddddd|tddddd|tddddd|tdddd|tdddd|tdddd|tddddd|tddddd|tddddd|tdddtdd|tddddtdddd|tddddd|tt	dddt
jdz
dgdddzddddddd d!d"ddzg}ddd d!d"ddzg}tj|d#D]&}t|}|D]}|	||'|	tdddd$|
t5tdddddn#1swxYwY|
t5tdddd%dddn#1swxYwY|
t5td&ddd%dddn#1swxYwY|
t5tdd'dd%dddn#1swxYwY|
t5tddd(d%dddn#1swxYwY|
t5tdddd)dddn#1swxYwY|tdddd%d*|ttdddd%d*|tdtddd%d*|tddtdd%d*|tdddtd%d*dS)+N
)rrgrr/)rrgr/r)rrgr/r)	rr)rhrrir0)r0rrii)rrri)rrri)rhrrirh)rrhr)rhrkr)rhrhridriii5i@)repeatr9gg$@g?g@)rr9r)r5rralistrbsysmaxsize	itertoolsproductrer2rrr)r$valslengths
slice_argsr\rs      r
test_indiceszSliceTest.test_indicessF	t//77;;[IIItdQ//77;;[IIIqdQ//77;;[IIItdB//77;;[IIItdB//77;;[IIIqdB//77;;[IIItR0044i@@@tS))11"55yAAAtS))11"55yAAAtS"--55b99:FFFtS"--55b99;GGGtS"--55b99;GGGtQ//33Y???tR0044jAAAtR0044jAAAtQ++33B77DDDtQ++33B77DDDtR,,44R88*EEE$""**2..$KK##	
	
	
	
#r""**2..$b!!))"--	
	
	
	
tS!,,44R88+FFFeBii):):3;?):;aSAAAq#vgvsBAq!R3OaBq#v.#+D;;;	.	.Jz"A!
.
.""1f----
.5B??B///

z
*
*	$	$$KK###	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$

z
*
*	'	'!ROO##A&&&	'	'	'	'	'	'	'	'	'	'	'	'	'	'	'


y
)
)	)	)#r1%%a(((	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)


y
)
)	)	)!T1%%a(((	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)


y
)
)	)	)!R%%a(((	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)


y
)
)	)	)!ROO##C(((	)	)	)	)	)	)	)	)	)	)	)	)	)	)	)	
q"a0033Y???{1~~r155==a@@)LLLq+b//155==a@@)LLLq"k!nn55==a@@)LLLq"a00Q@@)LLLLLsl5#W$$W(+W(	%X::X>X>%ZZZ5%[&&[*-[*%\<<]]!%^^^cgGfddt}|}d|dd<|tdddfgdS)NceZdZfdZdS)3SliceTest.test_setslice_without_getslice.<locals>.Xc6||fdSr!)append)r$iktmps   r
__setitem__z?SliceTest.test_setslice_without_getslice.<locals>.X.__setitem__s

Aq6"""""rN)r(r)r*r)rsr
Xr|s.
#
#
#
#
#
#
#rr*rr/)rTr5r)r$rxrs   @r
test_setslice_without_getslicez(SliceTest.test_setslice_without_getslices	#	#	#	#	#	#	#	#	#	#
ACC!A#aR0122222rcddl}tddd}t|jdzD]}t	t||}|||||d|d|t|t|dS)Nrrgr0r)
picklerrbHIGHEST_PROTOCOLrrr5rarRid)r$rr\protocolts     r
test_picklezSliceTest.test_pickles


"b!f59::	.	.HeAx(())AQ"""QYYr]]AIIbMM:::1r!uu----		.	.rc2tdd}tj|}|||tddd}tj|}|||tddgddgddg}tj|}|||||j|j||j|j||j|jdSNrrgr/r0r1r9)rcopyassertIsrrrr$r\cs   r
	test_copyzSliceTest.test_copys!RLLIaLL

a!ROOIaLL

a
1a&1a&1a&))IaLL

a

agqw'''

afaf%%%

afaf%%%%%rc^tdd}tj|}|||tddd}tj|}|||tddgddgddg}tj|}||||||||j|j||j|j||j|jdSr)rrdeepcopyr5assertIsNotrrrrs   r

test_deepcopyzSliceTest.test_deepcopy	s!RLLM!A!ROOM!A
1a&1a&1a&))M!AA!'***((((((((rcGdd}|}t||_tj|}d}t	j||dS)NceZdZdS)#SliceTest.test_cycle.<locals>.myobjNrAr+rr
myobjrsrr)rr\weakrefrefr
gc_collectassertIsNone)r$rows    r

test_cyclezSliceTest.test_cyclessEGGAhhKNN!!##rN)r(r)r*r3r7r<rVr^reryrrrrrr+rr
r-r-Is888AAA   111@'''./// CMCMCMJ333...&&&")))$rr-__main__)rtr	rrunittestrrrrrtestrrrrTrTestCaser-r(mainr+rr
<module>rs



000!!!L&YYYYY!YYYvzHMOOOOOr