python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_bisect.cpython-312.pyc

͑eBddlZddlZddlmZddlmZejddgZejddgZGdd	e	Z
Gd
dZGdd
eejZ
GddeejZGddZGddeejZGddeejZGddZGddZGddZGddZGddeejZGd d!eejZGd"d#ZGd$d%eejZGd&d'eejZed(k(rej8yy))N)
import_helper)UserListbisect_bisect)blocked)freshc(eZdZdZdZdZdZdZy)Rangez:A trivial range()-like object that has an insert() method.c.||_||_d|_yN)startstoplast_insert)selfr
rs   D/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_bisect.py__init__zRange.__init__s
	c4|j|jz
Sr)rr
rs r__len__z
Range.__len__syy4::%%rc|j|jz
}|dkr||z
}||k\rt||j|zS)Nr)rr

IndexError)ridxns   r__getitem__zRange.__getitem__sDII

"71HC!8S/!zzCrc||f|_yr)r)rritems   rinsertzRange.inserts9rN)__name__
__module____qualname____doc__rrrrrrr
r

sD 
& %rr
cbeZdZdZdZdZdZdZddZdZ	dZ
d	Zd
ZdZ
dZd
ZdZy)
TestBisectcg|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgddd
f|jjgddd
f|jjgdddf|jjgdddf|jjgddf|jjdgddf|jjdgddf|jjdgddf|jjddgddf|jjddgddf|jjddgddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjddgddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd	ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgd
ddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgdddf|jjgddd
f|jjgddd
f|jjgdddf|_y)Nr)r'r'r')r'r'r'r'g?)r'r'r(r(r'r(r)g@)
r'r(r(r)r)r)r*r*r*r*g@
)modulebisect_rightbisect_leftprecomputedCasesrs rsetUpzTestBisect.setUp!s	P!

[[
%
%r1a0P!

[[
%
%sAq1P!
[[
%
%sAq1P!
[[
%
%sAq1	P!

[[
%
%1vq!4P!
[[
%
%1vq!4
P!
[[
%
%1vq!4P!
[[
%
%y!Q7P!
[[
%
%y!Q7P!
[[
%
%y!Q7P!
[[
%
%|Q:P!
[[
%
%|Q:P!
[[
%
%|Q:P!
[[
%
%1vq!4P!
[[
%
%1vq!4P!
 [[
%
%1vsA6!P!
"[[
%
%1vq!4#P!
$[[
%
%1vq!4%P!
&[[
%
%|Q:'P!
([[
%
%|Q:)P!
*[[
%
%|S!<+P!
,[[
%
%|Q:-P!
.[[
%
%|Q:/P!
0[[
%
%y!Q71P!
2[[
%
%y!Q73P!
4[[
%
%y#q95P!
6[[
%
%y!Q77P!
8[[
%
%y#q99P!
:[[
%
%y!Q7;P!
<[[
%
%y!Q7=P!
>[[
%
%'Eq!L?P!
@[[
%
%'Eq!LAP!
B[[
%
%'EsANCP!
D[[
%
%'Eq!LEP!
F[[
%
%'EsANGP!
H[[
%
%'Eq!LIP!
J[[
%
%'EsANKP!
L[[
%
%'Eq"MMP!
N[[
%
%'Eq"MOP!
R[[
$
$b!Q/SP!
T[[
$
$qc1a0UP!
V[[
$
$qc1a0WP!
X[[
$
$qc1a0YP!
Z[[
$
$q!fa3[P!
\[[
$
$q!fa3]P!
^[[
$
$q!fa3_P!
`[[
$
$iA6aP!
b[[
$
$iA6cP!
d[[
$
$iA6eP!
f[[
$
$lAq9gP!
h[[
$
$lAq9iP!
j[[
$
$lAq9kP!
l[[
$
$q!fa3mP!
n[[
$
$q!fa3oP!
p[[
$
$q!fc15qP!
r[[
$
$q!fa3sP!
t[[
$
$q!fa3uP!
v[[
$
$lAq9wP!
x[[
$
$lAq9yP!
z[[
$
$lC;{P!
|[[
$
$lAq9}P!
~[[
$
$lAq9P!
@[[
$
$iA6AP!
B[[
$
$iA6CP!
D[[
$
$ia8EP!
F[[
$
$iA6GP!
H[[
$
$ia8IP!
J[[
$
$iA6KP!
L[[
$
$iA6MP!
N[[
$
$&DaKOP!
P[[
$
$&DaKQP!
R[[
$
$&Dc1MSP!
T[[
$
$&DaKUP!
V[[
$
$&Dc1MWP!
X[[
$
$&DaKYP!
Z[[
$
$&Dc1M[P!
\[[
$
$&DaK]P!
^[[
$
$&DaL_P!
rc|jD]B\}}}}|j|||||j|t|||Dyr)r2assertEqualr)rfuncdataelemexpecteds     rtest_precomputedzTestBisect.test_precomputedtsT*.*?*?	C&D$hT$-x8T(4.$7B	CrcL|j}|jt|jgdddd|jt|jgdddd|jt|j
gdddd|jt|jgddddy)Nr+r.r))r/assertRaises
ValueErrorr1r0insort_leftinsort_right)rmods  rtest_negative_lozTestBisect.test_negative_loyskk*cooy!RK*c&6&6	1b!L*cooy!RK*c&6&6	1b!Lrc|j}tj}t|dz
}|j	|j||dz
|dz
|j	|j
||dz
|dz
|j	|j||dz
|dz
||dz
|j	|j
||dz
|dz
||dz
y)Nr'r)r(r-)r/sysmaxsizeranger5r1r0)rrArr7s    rtest_large_rangezTestBisect.test_large_rangeskkKKQqSzqs3QqS9))$!4ac:qsAbD!<acB))$!QrT1=qsCrc|j}tj}td|dz
}|j	|j||dz
|dz
|j	|j
||dz
|dz
|j	|j||dz
|dz
||dz
|j	|j
||dz
|dz
||dz
|dz
}|j|||dz
|dz|j	|j||f|dz
}|j|||dz
|dz|j	|j|dz|fy)	Nrr'r)r(r-d2)
r/rDrEr
r5r1r0r?rr@)rrArr7xs     rtest_large_pyrangezTestBisect.test_large_pyrangesCkkKKQ!}qs3QqS9))$!4ac:qsAbD!<acB))$!QrT1=qsC
GaRR0))Aq62
Gq!b&!b&1))AE1:6rc	8ddlm}t|D]}t|Dcgc]}|d|d}}|j|d|dz}|jj||}|t
|kr|j|||k|dkDr|j||dz
|k|jj||}|t
|kr|j|||k|dkDs|j||dz
|kycc}w)Nr)	randranger(r<r')	randomrOrFsortr/r1len
assertTruer0)rrrOijr7r8ips        rtest_randomzTestBisect.test_randoms$q
	4A05a91IaA&9D9IIKR1%D((t4BCI~R 01AvRT
T 12))$5BCI~tBx0AvRT
d 23
	49sDc
|jD]}\}}}}tdD]f}tt||}tddD]>}tt||}|||||}|j	||cxkxr|knc||j
jur||kr|j	|||k||j
jur||kDr|j	||dz
|k||j
jur||kr|j	|||k||j
jur||kDr|j	||dz
|k|j|t|t||Aiy)Nr*r)r')
r2rFminrRrSr/r1r0r5max)rr6r7r8r9lohirVs        rtest_optionalSlicingzTestBisect.test_optionalSlicingsk*.*?*?	E&D$hAh
ETB'!*EBSY+BdD"b1BOOB"NN3t{{66627R(89t{{66627RT
T(9:t{{777BGtBx8t{{777BGRT
d(:;$$RRR1B)CDE
E	Ercx|j|jj|jjyr)r5r/rr0rs rtest_backcompatibilityz!TestBisect.test_backcompatibility&++T[[-E-EFrcgd}|j|jj|dddd|j|jj|dddd|j|jj	|dddd|jj|ddd|jj
|ddd|jj|ddd|j|gdy)N)r-(rJr'r))arLr\r]r()r-rcrfrfrfrdrerJ)r5r/r1r0rr?r@insort)rr7s  rtest_keyword_argszTestBisect.test_keyword_argss#0042!0JAN11DB11KQO++dbQ1+EqI$"q9  42! :TRA!4?@rc|j}t}tgd|}tt	||}|D]j}|j|j
||||j
|||j|j||||j||ltj}td|}tt	||}|D]j}|j|j
||||j
|||j|j||||j||ly)N)r(r,rYkeyaBcDeEfgHhiIiij)
r/abssortedlistmapr5r1r0strcasefold)rrAkeyfuncarrprecomputed_arrrLs      rtest_lookups_with_key_functionz)TestBisect.test_lookups_with_key_functions=kk'W5s7C01 	AQG43

  aW 5  !4
	,,&G4s7C01 	AQG43

  aW 5  !4
	rcddlm}|j}t}t	tddt	tdddz}||g}|D]3}|j
||||jt|||5g}|D]3}|j||||jt|||5y)	Nr)shufflerlircr(rm)
rPr{r/rprrrFr?r5rqr@)rr{rArvr7targetrLs       rtest_insortzTestBisect.test_insorts"kkE#rN#d5b!+<&==
	AOOFA7O3v7+
		AVQG4v7+
	rcg}ddd}|jj|jjfD]}|jt|||dy)Nr(r')rgbrrm)r/r?r@r=	TypeError)rrLyfs    rtest_insort_keynotNonez!TestBisect.test_insort_keynotNonesR!++))4;;+C+CD	=AiAq<	=rc.Gdd}tdDcgc]
}||}}|jj||d}|jj||d}|j	|d|j	|dycc}w)NceZdZdZdZy).TestBisect.test_lt_returns_non_bool.<locals>.Ac||_yrvalrrs  rrz7TestBisect.test_lt_returns_non_bool.<locals>.A.__init__	rc<|j|jkrdSdS)Nnonemptyrrothers  r__lt__z5TestBisect.test_lt_returns_non_bool.<locals>.A.__lt__s%)XX		%9zArArN)rr r!rrr#rrArs


BrrrI!"rFr/r1r0r5rrrTr7i1i2s      rtest_lt_returns_non_boolz#TestBisect.test_lt_returns_non_bool
s	B	B$Cj)!))
[[
$
$T1R5
1
[[
%
%dAbE
2R R 	*Bc.Gdd}tdDcgc]
}||}}|jj||d}|jj||d}|j	|d|j	|dycc}w)NceZdZdZdZdZy)4TestBisect.test_lt_returns_notimplemented.<locals>.Ac||_yrrrs  rrz=TestBisect.test_lt_returns_notimplemented.<locals>.A.__init__rrctSr)NotImplementedrs  rrz;TestBisect.test_lt_returns_notimplemented.<locals>.A.__lt__s%%rc4|j|jkDSrrrs  r__gt__z;TestBisect.test_lt_returns_notimplemented.<locals>.A.__gt__sxx%))++rN)rr r!rrrr#rrrrs

&
,rrrIre)rrs      rtest_lt_returns_notimplementedz)TestBisect.test_lt_returns_notimplementeds	,	,$Cj)!))
[[
$
$T1R5
1
[[
%
%dAbE
2R R 	*rN)rf)rr r!r3r:rBrGrMrWr^r`riryr~rrrr#rrr%r% sQQ
fC
MD7 4"E$GAB0=!
!rr%ceZdZeZy)TestBisectPythonNrr r!	py_bisectr/r#rrrr&
FrrceZdZeZy)TestBisectCNrr r!c_bisectr/r#rrrr)
Frrc eZdZddZdZdZy)
TestInsortcddlm}ttfD]o}t	|D]D}|d}|dvr|j
j}n|j
j}|||F|jt||qy)Nr)choice
012345678902468)
rPrrrrrFr/r?r@r5rq)rrrinsortedrTdigitrs       rtest_vsBuiltinSortzTestInsort.test_vsBuiltinSort/s!,	9H1X
#|,G#//A00A(E"

#
VH-x8	9rcx|j|jj|jjyr)r5r/rhr@rs rr`z!TestInsort.test_backcompatibility;rarcGddt}|}|jj|d|jj|d|j	ddg|j
y)NceZdZgZdZy))TestInsort.test_listDerived.<locals>.Listc<|jj||yr)r7r)rindexrs   rrz0TestInsort.test_listDerived.<locals>.List.insertAs		  -rN)rr r!r7rr#rrListr?sD
.rrr-r.)rrr/r?r@r5r7)rrlsts   rtest_listDerivedzTestInsort.test_listDerived>sW	.4	.
fR(  a(!R#((+rN)i)rr r!rr`rr#rrrr.s
9G	,rrceZdZeZy)TestInsortPythonNrr#rrrrIrrrceZdZeZy)TestInsortCNrr#rrrrLrrrceZdZdZdZy)LenOnlyz:Dummy sequence class defining __len__ but not __getitem__.cyNr-r#rs rrzLenOnly.__len__SrN)rr r!r"rr#rrrrQ
@rrceZdZdZdZy)GetOnlyz:Dummy sequence class defining __getitem__ but not __len__.cyrr#)rndxs  rrzGetOnly.__getitem__XrrN)rr r!r"rr#rrrrVrrrc*eZdZdZdZeZeZeZeZeZ	y)CmpErrz;Dummy element that always raises an error during comparisonctr)ZeroDivisionErrorrs  rrz
CmpErr.__lt__]srN)
rr r!r"rr__le____ge____eq____ne__r#rrrr[s#A 
F
F
F
F
Frrc*eZdZdZdZdZdZdZy)TestErrorHandlingc|jj|jj|jj|jjfD]}|jt|ddyrr/r1r0r?r@r=rrrs  rtest_non_sequencez#TestErrorHandling.test_non_sequencefsZ++))4;;+C+C++))4;;+C+CE	4AiB3	4rc|jj|jj|jj|jjfD]"}|jt|td$yr)r/r1r0r?r@r=rrrs  r
test_len_onlyzTestErrorHandling.test_len_onlyk\++))4;;+C+C++))4;;+C+CE	;AiGIr:	;rc|jj|jj|jj|jjfD]"}|jt|td$yr)r/r1r0r?r@r=rrrs  r
test_get_onlyzTestErrorHandling.test_get_onlyprrc$tttg}|jj|jj|jj|jj
fD]}|j
t||dyr)rr/r1r0r?r@r=r)rseqrs   rtest_cmp_errzTestErrorHandling.test_cmp_errusmx68,++))4;;+C+C++))4;;+C+CE	=A/C<	=rc|jj|jj|jj|jjfD]}|jt|dyrrrs  rtest_arg_parsingz"TestErrorHandling.test_arg_parsing{sX++))4;;+C+C++))4;;+C+CE	0AiB/	0rN)rr r!rrrrrr#rrrres4
;
;
=0rrceZdZeZy)TestErrorHandlingPythonNrr#rrrrrrrceZdZeZy)TestErrorHandlingCNrr#rrrrrrrceZdZdZdZy)TestDocExamplecvgddffd	}dDcgc]
}||}}j|gdycc}w)N)<FPZFDCBAcFjj||}||Sr)r/r)scorebreakpointsgradesrTrs    rgradez)TestDocExample.test_grades.<locals>.grades#"";6A!9r)rcMrYrrI)FrCrBrr)r5)rrrresults`   rtest_gradeszTestDocExample.test_gradess>%5g	-JJ5%,JJ!DEKs6clgd}|jd|Dcgc]}|d	}}|jj}|j|||dd|j|||dd|j|||dd	|j|||d
dycc}w)N)redr.bluer'yellowrYblackrc|dS)Nr'r#)rs r<lambda>z,TestDocExample.test_colors.<locals>.<lambda>s
!rrmr'rrrr.rrYr)rQr/r1r5)rr7rkeysr1s     rtest_colorszTestDocExample.test_colorssE		n	%"#!##kk--k$23\Bk$23[Ak$23Z@k$23]C$sB1N)rr r!rrr#rrrrsFDrrceZdZeZy)TestDocExamplePythonNrr#rrrrrrrceZdZeZy)TestDocExampleCNrr#rrrrrrr__main__)rDunittesttest.supportrcollectionsrimport_fresh_modulerrobjectr
r%TestCaserrrrrrrrrrrrrrrmainr#rr<module>rsR
& 
.M--hL	,=,,Xi[I%F%,D!D!Lz8#4#4*h//
,,6z8#4#4*h//


006/1B1B*H,=,=
DD&>8+<+<nh&7&7
zHMMOr