python (3.12.0)

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

͑esddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlZddlZddlZddlmZddlmZddlmZddlmZddlmZddlmZm Z m!Z!ddl"m#Z#dd	l$m%Z%dd
l&m'Z'm(Z(m)Z)ddl*m+Z+m,Z,m-Z-ddl.m/Z/dd
l0m1Z1ddl&m2Z2ddl3m4Z4m5Z5	ddl6Z6ddl7Z7d\Z9Z:e9e:zdk(Z;GddZ<GddZ=GddZ>ddddddddd d!e?ejejfd"eAfd#d$eAfd%eAfd&eAfd'eAfeBd(d)d*feCd+eAfgZDdddddddd,eAfd d-eAfe?ejejfd"eAfd.eAfd$eAfd%eAfd&eAfd'eAfeBd(d)d*feCd+eAfgZEGd/d0ZFGd1d2ZGd3ZHd4ZIGd5d6ejZKGd7d8ejZLeje6d9Gd:d;ejZNGd<d=ejZOGd>d?ejZPe'Gd@dAejZQGdBdCejZRdDZSeTdEk(rejyy#e8$rdxZ6Z7YwxYw)FN)	ExitStack)partial)CO_COROUTINE)product)dedent)AsyncGeneratorTypeFunctionTypeCellType)neg)support)cpython_only	swap_attrmaybe_get_event_loop_policy)EnvironmentVarGuardTESTFNunlink)assert_python_ok)check_warnings)requires_IEEE_754)	MagicMockpatch)g7yACg):@g7yACceZdZdZdZdZy)Squaresc ||_g|_yNmaxsofarselfrs  E/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_builtin.py__init__zSquares.__init__4
c,t|jSrlenrr s r!__len__zSquares.__len__8sc$**o-r$cd|cxkr|jks
ttt|j}||kr)|jj	||z|dz
}||kr)|j|SNr)r
IndexErrorr'rappendr ins   r!__getitem__zSquares.__getitem__:slA  
"2 
"2

O1fJJac"
FA1fzz!}r$N__name__
__module____qualname__r"r)r2r$r!rr2s.r$rceZdZdZdZdZy)
StrSquaresc ||_g|_yrrrs  r!r"zStrSquares.__init__Dr#r$c,t|jSrr&r(s r!r)zStrSquares.__len__Hs4::r$cd|cxkr|jks
ttt|j}||kr2|jj	t||z|dz
}||kr2|j|Sr+)rr-r'rr.strr/s   r!r2zStrSquares.__getitem__KstA  !

O1fJJc!A#h'
FA1fzz!}r$Nr3r7r$r!r9r9Bsr$r9ceZdZdZy)	BitBucketcyrr7)r lines  r!writezBitBucket.writeUsr$N)r4r5r6rBr7r$r!r?r?Ts
r$r?)0r)1r,)9	)10
)99c)100d)314:) 314rN)z314 rN)  		  314  		  rNz  1x)  1  r,z  1   z  		  s\u0663\u0661\u0664 zraw-unicode-escaperNirOrPrQceZdZdZy)TestFailingBoolctrRuntimeErrorr(s r!__bool__zTestFailingBool.__bool__r$N)r4r5r6rYr7r$r!rUrUr$rUceZdZdZy)TestFailingIterctrrWr(s r!__iter__zTestFailingIter.__iter__rZr$Nr4r5r6r_r7r$r!r]r]r[r$r]c0t|tdkDS)Nd)ordargs r!filter_charrfss8c#hr$c0tt|dzSNr,)chrrcrds r!map_charrjss3xz?r$cXeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZej ej$xsej&d
dZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$ejJdd Z&d!Z'd"Z(d#Z)d$Z*d%Z+d&Z,d'Z-d(Z.d)Z/d*Z0d+Z1d,Z2d-Z3d.Z4d/Z5d0Z6d1Z7ej e8jrjtd2d3Z;ejxd4Z=d5Z>d6Z?d7Z@d8ZAd9ZBeCjjd:xr eCjjd;ZGeHd<d<k7ZIej eGxreId=d>ZJd?ZKd@ZLdAZMeNej eOdBejdCZQdDZReSdEZTeSdFZUGdGdHeVZWdIZXdJZYdKZZdLZ[dMZ\dNZ]dOZ^dPZ_dQZ`dRZadSZbejdTZcdUZddVZedWZfdXZgdYZhdZZiy[)\BuiltinTestc|}tj||}tj|}|jt	|t	||jt||tj|}	t
|tj||}tj|}|jt||ddy#t$rYywxYwrh)pickledumpsloadsassertEqualtypelistnext
StopIteration)r itseqprotoitorgrbs      r!check_iter_picklezBuiltinTest.check_iter_picklesLLU#
\\!_ed2h/b3'\\!_	H
LLU#
\\!_b3qr7+			sC	C$#C$c
,tdtdtdtdtdd|jttd|jttdd	d
d|jttd|jttdd|jt5|jttdddd
diddddd|jttdy#1swY%xYw)Nsystimestringnamer)rlevelspamspamr,rR__main__)__package____spec__r4)foo)localsfromlistrzstring)
__import__assertRaisesModuleNotFoundError	TypeError
ValueErrorassertWarns
ImportWarningImportErrorr(s r!test_importzBuiltinTest.test_imports568a(-z:F)ZAq!<*j"5)ZUC


m
,	Ek:r.2R\]%'(!

E	E
	
-z<H	E	Es%D

Dc|jtdd|jtdd|jtdd|jttjdz
dkD|jtdd|jtdd|jtdd|jttd|jtd	d|jtd
d|jtt|jttdGddt}|jt|d
y)Nri.r,gQ	@gQ	aTFceZdZdZy)&BuiltinTest.test_abs.<locals>.AbsClasscy)Nr7r(s r!__abs__z.BuiltinTest.test_abs.<locals>.AbsClass.__abs__r$N)r4r5r6rr7r$r!AbsClassr
r$rr)rqabs
assertTruer|maxsizerrobject)r rs  r!test_abszBuiltinTest.test_abssQ#TD)UT*S[[LN+a/0S3'TD)UT*)S#.TA&UQ')S))S$/	v		
XZ"-r$c|jtgdd|jtgdd|jttdt	dg|jttt|jttd|jtt|jttgdg|jtgd|jtdt	gdd	d
g}|jtd|Ddgd}|jtd
|Ddy)NrrT)rNrFrrrHr2<c3&K|]	}|dkDyw*Nr7.0xs  r!	<genexpr>z'BuiltinTest.test_all.<locals>.<genexpr>/QV/)r(rc3&K|]	}|dkDywrr7rs  r!rz'BuiltinTest.test_all.<locals>.<genexpr>rr)rqallrrXrUr]rr Ss  r!test_allzBuiltinTest.test_allsY.\*E2,a1BA-FG,_->?)S"-)S))S)R8R$'a!234e<
H/Q//6/Q//7r$c|jtgdd|jtgdd|jttdt	dg|jttt|jttd|jtt|jttgdg|jtgd|jtdt	gdgd	}|jtd
|Ddgd}|jtd|Ddy)
N)NNNF)NrNTrrHrr,)rrc3&K|]	}|dkDywrr7rs  r!rz'BuiltinTest.test_any.<locals>.<genexpr>rr)rHrc3&K|]	}|dkDywrr7rs  r!rz'BuiltinTest.test_any.<locals>.<genexpr>rr)rqanyrrXrUr]rrs  r!test_anyzBuiltinTest.test_anys/0%8_-t4,dO4Eq-IJ,_->?)S"-)S))S)R8R%(a!234d;/Q//6/Q//7r$cjtddjtddjtddjtgdjtidg}|j|jt|d	i}||d<jt|d
fd}|d|d
|d|d|d|d|d|d|d|djtddd}jt|dy)NrR''rrCr7()[]{}[[...]]
{0: {...}}cNjt|t|yr)rqasciirepr)sr s r!
_check_uniz*BuiltinTest.test_ascii.<locals>._check_unisU1XtAw/r$'"z"'z
	 .…u῿u𒿿uuu𝄡z'\U0001d121'u'"

	 abcd…é𒿿𝄡xxx.z:'\'\x00"\n\r\t abcd\x85\xe9\U00012fff\ud800\U0001d121xxx.')rqrr.)r rrrs`   r!
test_asciizBuiltinTest.test_asciis4rF+q3'rD)rD)rD)	q9-!q<0	03354:68< 88	
|,o>BqM	Or$ctjdz
}|jt|t|j|tjdzyrh)r|rr
isinstanceintrqr rs  r!test_negzBuiltinTest.test_negs>
[[LN
1c*+!S[[]+r$c|jtt|jtd|jtt|jtd|jttd}|jt|Gdd}|jt||}|jt|j
|jt|d|_|jt|d|_|jt||`|jt|Gddt}|}|jt|d|_|jt|Gd	d
|}|}|jt|y)Nrc||zSrr7rys  r!<lambda>z+BuiltinTest.test_callable.<locals>.<lambda>s
a!er$cyrr7r7r$r!fz$BuiltinTest.test_callable.<locals>.fr$ceZdZdZy)%BuiltinTest.test_callable.<locals>.C1cyrr7r(s r!methz*BuiltinTest.test_callable.<locals>.C1.methrr$N)r4r5r6rr7r$r!C1rs r$rcyNrr7r(s r!rz+BuiltinTest.test_callable.<locals>.<lambda>'rr$ceZdZdZy)%BuiltinTest.test_callable.<locals>.C2cyrr7r(s r!__call__z.BuiltinTest.test_callable.<locals>.C2.__call__-rr$N)r4r5r6rr7r$r!C2r,s$r$rceZdZy)%BuiltinTest.test_callable.<locals>.C3Nr4r5r6r7r$r!C3r2r$r)rcallabler'assertFalse__builtins__rrr)r rrcrc2rc3s        r!
test_callablezBuiltinTest.test_callablesY
&#'*+!345,/0$	!	!%D()!%
!%#
!%
J!%	%	%
T%%
T%r$c^|jtdd|jtdd|jtdd|jtdd|jttd	|jttj
t
d
jdd|jtt|jtd
d|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jttd|jttd |jttftd!y)"N rSAAarÿiz
\U0010ffffrzunicode-escape￿𐀀𐀁󿿾󿿿􀀀􀀁􏿾􏿿i)
rqrirrr|
maxunicoder=encoder
OverflowErrorr(s r!test_chrzBuiltinTest.test_chr6sR#&R#&R#&TF+*c51S^^,]11':<LM	O)S)Z,7Z,7Z,7Z,7Z,7Z,7Z,7Z,7Z,7*c2.*c:6=*5sEBr$cD|jttdy)Ncmp)rhasattrbuiltinsr(s r!test_cmpzBuiltinTest.test_cmpLsGHe445r$c
tdddd}t|dzddtdddtd	d
dd
tddddttddd|jtt|jttddd|jttdddd|jttdddddd
tddd|jt
tt
ddd|jtttdddd}d}dd|jddfd d!d"g}|D]^}}g}|jt|d#d|$tj|}|jt|d#d|$|D]5}	i}
t|	|
|
d}|j|t|7y)%Nz	print(1)
rRexecs	print(1)
pass?)sourcefilenamemodeFtmprCeval)dont_inheritr!r r"T)r%r"stextrz
print(42)
<string>badmodesingler)r"r r!uprint("å")
rrza = 1badaJdef f():
        """doc"""
        debug_enabled = False
        if __debug__:
            debug_enabled = True
        try:
            assert False
        except AssertionError:
            return (True, f.__doc__, debug_enabled, __debug__)
        else:
            return (False, f.__doc__, debug_enabled, __debug__)
        cy)docNr7r7r$r!rz#BuiltinTest.test_compile.<locals>.fnrr$r)rTr+TT)r,Fr+FF)rFNFFz<test>)optimize)compile
memoryviewrrrSyntaxErrorrir=__doc__r.astparserrqtuple)r bomcodestrrvaluesoptvalexpectedcodeobjstreecodensrvs            r!test_compilezBuiltinTest.test_compileOsb&)m#R0v&9UU3VL$V<
7#VV4)W-*g}j)T*g}j(TXY)Wfc6%cE		C!2v.+wAVD*gs7|S%H	y!))Y	B.102"(
	6FXHOOGGXvOP99W%DOOGD(FVLM 
6T2RWY  U8_5	
6
	6r$c	d}gd}t||D]\\}}t|}t|d|tj}|j|jtztd|d|^y)	zCMake sure top level non-await codes get the correct coroutine flagsr(r)z
def f():pass
z[x for x in l]z{x for x in l}z(x for x in l)z{x:x for x in l}rflagssource= mode=msgN)rrr-r1PyCF_ALLOW_TOP_LEVEL_AWAITassertNotEqualco_flagsr)r modescode_samplesr"code_sampler cos       r!$test_compile_top_level_await_no_coroz0BuiltinTest.test_compile_top_level_await_no_coros"
")!=	DD+K(F "%"@"@BB

l :L&-fXVD6$B
 
D	Dr$zsocket.accept is brokenc	d}d}gd}t}	t||D]\}}t|}|jtd|d|5t|d|dddt|d|tj	}|j|jtztd|d|td
|d}	t||	}
tj|
|j|	dd
td
|d}	tjt||	|j|	dd
	tj|y#1swYxYw#tj|wxYw)aITest whether code some top level await can be compiled.

        Make sure it compiles only with the PyCF_ALLOW_TOP_LEVEL_AWAIT flag
        set, and make sure the generated code object has the CO_COROUTINE flag
        set in order to execute it with  `await eval(.....)` instead of exec,
        or via a FunctionType.
        c6Kt|D]}|	ywrranger1r0s  r!arangez8BuiltinTest.test_compile_top_level_await.<locals>.arange1X

r@)
z$a = await asyncio.sleep(0, result=1)z2async for i in arange(1):
                   a = 1z8async with asyncio.Lock() as l:
                   a = 1z#a = [x async for x in arange(2)][1]z%a = 1 in {x async for x in arange(2)}z%a = {x:1 async for x in arange(1)}[0]z<a = [x async for x in arange(2) async for x in arange(2)][1]z6a = [x async for x in (x async for x in arange(5))][1]z.a, = [1 for x in {x async for x in arange(1)}]z;a = [await asyncio.sleep(0, x) async for x in arange(2)][1]rCrDrErNrAr)asynciorrTrr,)rrrrr/r-r1rGrqrIrrWr	runr$set_event_loop_policy)r rTrJrKpolicyr"rLr rMglobals_async_fs           r!test_compile_top_level_awaitz(BuiltinTest.test_compile_top_level_awaitss	#

-.	2%,UL%A
3!k,&&#76(&)G'I/FC./V !#&#A#AC
  |!;\'.vhfTF%C!E(/Q&I&r84GI&  #2(/Q&IDX./  #2/
32
))&1///.
))&1s$;EECEE	EE2cd}d}gd}t}	t||D]\}}t|}|jtd|d|5t|d|ddd|jtd|d|5t|d|tj}ddd	tj|y#1swYexYw#1swYxYw#tj|wxYw)	Nc6Kt|D]}|	ywrrQrSs  r!rTzFBuiltinTest.test_compile_top_level_await_invalid_cases.<locals>.arangerUrVr@)zdef f():  await arange(10)
z(def f():  [x async for x in arange(10)]
z.def f():  [await x async for x in arange(10)]
z_def f():
                   async for i in arange(1):
                       a = 1
            zedef f():
                   async with asyncio.Lock() as l:
                       a = 1
            rCrDrErrA)
rrrrr/r-r1rGrWrY)	r rTrJrKrZr"rLr rMs	         r!*test_compile_top_level_await_invalid_casesz6BuiltinTest.test_compile_top_level_await_invalid_casess	#
-.	2%,UL%A
C!k,&&#76(&)G'I/FC./&&#76(&)G'IC  !#&#A#ACBCC

C
))&1//CC
))&1s;:CC%CC
 
CC
	C
C	CC0ctd}t|ddtj}i}t	|||jt
|dty)z
        With the PyCF_ALLOW_TOP_LEVEL_AWAIT flag added in 3.8, we want to
        make sure AsyncGenerators are still properly not marked with the
        CO_COROUTINE flag.
        z~async def ticker():
                for i in range(10):
                    yield i
                    await asyncio.sleep(0)rrrAtickerN)rr-r1rGrrqrrr)r r;rMglobs    r!test_compile_async_generatorz(BuiltinTest.test_compile_async_generatorsX./
T3c.L.L
MRnd8n./1CDr$cdt_ttd|jtt|jtttd}|jt|ttdy)Nr,spam*^attribute name must be string, not 'int'$)r|rfdelattrrrassertRaisesRegexr rFs  r!test_delattrzBuiltinTest.test_delattrsPV)W-)Wc2;y#wQ?r$c^|jttddd}|jdt|jdttGddt
j}|d}|jtt||jdtt|jd	ttGd
dt}|}|jdt|Gddt}|}|jd
t|Gddt}|}|jd
t||jdt|Gddt}|}|jt|gdk(Gddt}t|}|j|t|j|gdk(Gddt}|}|jtt|	t#t$r8}|jtt|j dYd}~nd}~wwxYw|jt#gj%tgy)Nrr,	local_varexitceZdZdZy)!BuiltinTest.test_dir.<locals>.FooN)r4r5r6__dict__r7r$r!FoorpsHr$rsrstrip__mro__ceZdZdZy)rpc.d|_d|_d|_y)NrqrF)rrzr(s r!r"z*BuiltinTest.test_dir.<locals>.Foo.__init__'sr$N)r4r5r6r"r7r$r!rsz!BuiltinTest.test_dir.<locals>.Foo&s
r$rceZdZgZy)rpN)r4r5r6	__slots__r7r$r!rsz!BuiltinTest.test_dir.<locals>.Foo/sIr$__repr__ceZdZddgZdZy)rp	__class__rrcd|_y)Nwow)barr(s r!r"z*BuiltinTest.test_dir.<locals>.Foo.__init__8s	 r$N)r4r5r6r{r"r7r$r!rsz!BuiltinTest.test_dir.<locals>.Foo6s$j1I
!r$rceZdZdZy)rpc
gdS)N)kangaroor7r(s r!__dir__z)BuiltinTest.test_dir.<locals>.Foo.__dir__@s++r$Nr4r5r6rr7r$r!rsz!BuiltinTest.test_dir.<locals>.Foo?s
,r$)rrrceZdZdZy)rpcy)N)brrr7r(s r!rz)BuiltinTest.test_dir.<locals>.Foo.__dir__Gs&r$Nrr7r$r!rsz!BuiltinTest.test_dir.<locals>.FooF
'r$rrrceZdZdZy)rpcy)Nrxr7r(s r!rz)BuiltinTest.test_dir.<locals>.Foo.__dir__Or$Nrr7r$r!rsz!BuiltinTest.test_dir.<locals>.FooNs
r$r)rrdirassertInr|types
ModuleTyper=assertNotInrrassertIsInstancersr-rqr'
__traceback__sortedr)r rmrsrreses      r!test_dirzBuiltinTest.test_dirs)S"b1	

k35)	


fc#h'	%""	J)S!,	


gs3x(CH-	&	

E

c3q6"	&	E

j#a&)	!&	!
ESV,

eSV$	,&	,
EA"667	'&	'#%jc4(./	&	
E)S!,	;	;SQ__!56::	;	


-s2w7s2H88	I9.I44I9c(|jtddd|jtddd|jtddd|jtddd|jttjd	z
d
tjd	zdfdD]B\}}}t||}|j	|d|d|j	|d	|d	D|jtty)
Nrx)r,i)ri)rr)r,rr,rr))
@?)@g?)
r)g?)r)rg)rr)rgп)rqdivmodr|rassertAlmostEqualrr)r numdenom
exp_resultresults     r!test_divmodzBuiltinTest.test_divmod]sA/Q1B2R'2Q3ckk!mQ5GH'E	="C
C'F""6!9jm<""6!9jm<
	=	
)V,r$c|jtdd|jtddddd}ddd}|jtd	|d|jtd	||d|jtd
||d|jtd||dddd}ddd}d}|jt|d
z||d|jtd|d|jtt|jttd|jtt|ddd
zGdd}|jt
tdi|y)N1+1rz 1+1
r,rr,)rrrrrrau"å"år7ceZdZdZy) BuiltinTest.test_eval.<locals>.Xctrrr keys  r!r2z,BuiltinTest.test_eval.<locals>.X.__getitem__  r$Nr4r5r6r2r7r$r!Xr
!r$rr)rqr$rrr/r)r globalsrr4rs     r!	test_evalzBuiltinTest.test_evalosOea(h+"%c7+a0c7F3Q7c7F3S9c7F3S9"%cDj'6:A>h0&9)T*)T2.+tS!Wt^<	!	!	
*dE2qs;r$cGdd}|}t}|jtd||d|jttd|||jtd||td|jtd||||jtd	||||jttd|Gd
d}|}|jttd||Gdd
t}|}|jtd||d|jttd|||jtd||td|jtd||||jtd	|||td||td|tjGdd}|}d|d<d|d<d|d<|j|ddGdd}	|jttdt|	y)NceZdZdZdZdZy)(BuiltinTest.test_general_eval.<locals>.Mz9Test mapping interface versus possible calls from eval().c|dk(rytNrrKeyErrorrs  r!r2z4BuiltinTest.test_general_eval.<locals>.M.__getitem__s#:r$ctdSNxyzrsr(s r!keysz-BuiltinTest.test_general_eval.<locals>.M.keysE{"r$N)r4r5r6r0r2rr7r$r!MrsG

#r$rrrrzdir()rz	globals()zlocals()ceZdZdZy)(BuiltinTest.test_general_eval.<locals>.AzNon-mappingN)r4r5r6r0r7r$r!rrsr$rceZdZdZdZy)(BuiltinTest.test_general_eval.<locals>.Dc:|dk(rytj||Sr)dictr2rs  r!r2z4BuiltinTest.test_general_eval.<locals>.D.__getitem__s#:''c22r$ctdSrrr(s r!rz-BuiltinTest.test_general_eval.<locals>.D.keysrr$Nr4r5r6r2rr7r$r!Drs
3
#r$rz[locals() for i in (2,3)]c eZdZdZiZdZdZy)2BuiltinTest.test_general_eval.<locals>.SpreadSheetz6Sample application showing nested, calculated lookups.c"||j|<yr)_cells)r rformulas   r!__setitem__z>BuiltinTest.test_general_eval.<locals>.SpreadSheet.__setitem__s#*C r$cFt|j|t|Sr)r$rrrs  r!r2z>BuiltinTest.test_general_eval.<locals>.SpreadSheet.__getitem__sDKK,gi>>r$N)r4r5r6r0rrr2r7r$r!SpreadSheetrsDF
+
?r$r5a1za1*6a2za2*7a3ceZdZdZdZy)(BuiltinTest.test_general_eval.<locals>.Cct|rr)r items  r!r2z4BuiltinTest.test_general_eval.<locals>.C.__getitem__stn$r$cyrhr7r(s r!rz-BuiltinTest.test_general_eval.<locals>.C.keysrr$Nrr7r$r!Crs
%
r$r)
rrqr$r	NameErrorrsrrcollectionsUserDict)
r rmgrrrbrssrs
          r!test_general_evalzBuiltinTest.test_general_evals	#	#
CIc1a"-)T315gq!,d5k:k1a0!4j!Q/3)T32		
C)T315	#	#
Cc1a"-)T315gq!,d5k:k1a0!4j!Q/3	

(!Q/
(![-A-A-CD	?	?]444D3'		
	
)T7GIqsCr$ci}td|d|vr|d=|j|dditd|d|vr|d=|j|ddii}i}t5tjddd	
td||dddd|vr|d=d|vr|d=|j||fddid
dify#1swY2xYw)Nzz = 1rryr,zz = 1+1rignorezglobal statementr&)modulezglobal a; a = 1; b = 2rr)rrqrwarningsfilterwarnings)r rls   r!	test_execzBuiltinTest.test_execsWaQ.!S!H%YQ.!S!H%

	1##H.@%
')1a0	1Q.!Q.!!Q3(S!H!56	1	1s&B66B?ctddd}|jtdt|dii|j	t
t|ddiy)Nzprint('Hello World!')rRrzname 'print' is not definedr{)r-rirrrr)r r;s  r!test_exec_globalszBuiltinTest.test_exec_globalssO.F;y*G#TNB+?	A	
)~s&;	=r$c	,GddtGfddt}tttj
r|tj}n|t}tddd}|jt|d|itd	d
d}|jtdt|diit|d|i|jtdt|d|i|i}tddd}|jt||y)
NceZdZy)>BuiltinTest.test_exec_globals_frozen.<locals>.frozendict_errorNrr7r$r!frozendict_errorrr$rceZdZfdZy)8BuiltinTest.test_exec_globals_frozen.<locals>.frozendictcd)Nzfrozendict is readonlyr7)r rvaluers   r!rzDBuiltinTest.test_exec_globals_frozen.<locals>.frozendict.__setitem__s&'?@@r$N)r4r5r6r)rsr!
frozendictrs	
Ar$rz1__builtins__['superglobal']=2; print(superglobal)testrrz
class A: passrRz__build_class__ not foundzx=1)	Exceptionrrrrrrrr-rrrir)r rfrozen_builtinsr;	namespacers     @r!test_exec_globals_frozenz$BuiltinTest.test_exec_globals_frozens	y		A	A
lE$4$45()>)>?O(6OJFTZ[*~&G	IF3y*E#TNB+?	A	
TNO45y*E#TNJL+I	KrN	uff-*i	1r$c
GddtGfddt}tddd}|jt||dditd	dd}|jt|d
|d	diiy)NceZdZy)@BuiltinTest.test_exec_globals_error_on_get.<locals>.setonlyerrorNrr7r$r!setonlyerrorrrr$r
ceZdZfdZy)?BuiltinTest.test_exec_globals_error_on_get.<locals>.setonlydictcrr7)r rr
s  r!r2zKBuiltinTest.test_exec_globals_error_on_get.<locals>.setonlydict.__getitem__s	""r$Nr)r
sr!setonlydictrs
#r$r
globalnamerrr,superglobalr)rrr-rr)r rr;r
s   @r!test_exec_globals_error_on_getz*BuiltinTest.test_exec_globals_error_on_gets	9		#$	#
|VV4,k<2C&D	F}ff5,d);
q7I+JK	Mr$c	Gddt}tddd}t|d|ddii|jtdt|d|iy)	NceZdZy)?BuiltinTest.test_exec_globals_dict_subclass.<locals>.customdictNrr7r$r!
customdictr rr$rrrrrr,z!name 'superglobal' is not defined)rr-rrir)r rr;s   r!test_exec_globals_dict_subclassz+BuiltinTest.test_exec_globals_dict_subclasssY		}ff5TNJ
q/A$BCDy*M#TNJL+I	Kr$ctj}dt_	td|t_y#t$rYwxYw#|t_wxYw)Nr)r|stdoutrr)r 
savestdouts  r!test_exec_redirectedz BuiltinTest.test_exec_redirected*sEZZ

	$I$CJ		$CJs4	AAAA
Acd}dfd}|\}}dt|j|j|j|j	ddtdtd|jdf}t|j|j||j	d	|j
tt|j|j||j
tt|j|jd|j
tt|j|j|jt|}|j
tt|j|j|t|d<t|}|j
tt|j|j|y)
Ncy)Nr7r7r$r!function_without_closuresz@BuiltinTest.test_exec_closure.<locals>.function_without_closures6sr$rc<dddfd}fd}||fS)Nrrrczyrr7)rrrsr!three_freevarszUBuiltinTest.test_exec_closure.<locals>.make_closure_functions.<locals>.three_freevars>s1r$czzyrr7)rrrrsr!
four_freevarszTBuiltinTest.test_exec_closure.<locals>.make_closure_functions.<locals>.four_freevarsCs
1Qr$r7)r$r&rrrrs  @@@r!make_closure_functionsz=BuiltinTest.test_exec_closure.<locals>.make_closure_functions:s)AAA


"=00r$)closurer#Hri	)r__code____globals____closure__rqr
rrrsrr3)r r!r'r$r&
my_closurers      @r!test_exec_closurezBuiltinTest.test_exec_closure5s		1 )?(@%
^
$
$&&"..	0	
#rlHRL.2L2LQ2OP
^
$
$&&	 	
&	
)%..%11			 	
)##&&				
)##&&!--			/*%
)##&&			 
1
:&
)##&&			 r$c|jttddtd|jttdddgdgdddd	gdddgdg|jttd
gdgd|jttdtd
gd|jttdtd
gdd}t|td|j	t
tGddt}|j	tttd|d}|j	t
tt|td|jttddddg|jttddddg|j	t
ttddy)Nc"d|cxkxrdkScS)Nrryr7)rs r!rz)BuiltinTest.test_filter.<locals>.<lambda>ssa3r$zHello Worldelloorldr,hellorrRrFrc|dkDSrr7rs r!rz)BuiltinTest.test_filter.<locals>.<lambda>s
q1ur$)r,rFrr)r,rFrrH)	r,rrF$1@Qc|dzS)Nrr7r5s r!rz)BuiltinTest.test_filter.<locals>.<lambda>s
qsr$)r,rFr8r:r<cyrhr7)rs r!identityz)BuiltinTest.test_filter.<locals>.identitysr$rceZdZdZy)'BuiltinTest.test_filter.<locals>.BadSeqc|dkryt)Nrrrr indexs  r!r2z3BuiltinTest.test_filter.<locals>.BadSeq.__getitem__s7  r$Nrr7r$r!BadSeqrAs
!r$rEc|Srr7r5s r!rz)BuiltinTest.test_filter.<locals>.<lambda>sQr$cyrr7r7r$r!badfuncz(BuiltinTest.test_filter.<locals>.badfuncr$r,rrc|dk\S)Nrr7r5s r!rz)BuiltinTest.test_filter.<locals>.<lambda>s
q!tr$r,rrrrr)	rqrsfilterrrrrrrR)r r?rErHs    r!test_filterzBuiltinTest.test_filtersf%>
NOQUV`QabfTAwQCT1a+PQRUVX_bcadfgThif_6FGH)TfT72;78:[\f]GBK@ACUV	x$)V,	!V	!
	
*dF;,IJ	)T6'58+DE	
fT623aV<f^\BCaVL)T6"f+=>r$cttjdzD]>}ttd}ttd}|j|t
||@y)Nr,
abcdeabcde)rRrnHIGHEST_PROTOCOLrMrfrzrs)r rxf1f2s    r!test_filter_picklezBuiltinTest.test_filter_picklesO622Q67	8E\2B\2B""2tBx7	8r$cpucd}ttt|}t|D]}tt|}~tjy)Ni@B)rMboolrRgccollect)r 	max_itersr0_s    r!test_filter_dealloczBuiltinTest.test_filter_deallocsE	4y)*y!	 AtQA	 



r$c|jttdtju|j	t
t|j	t
ttd}|j
t
|ttd|j
t
|ttdd|j	tttttj|j	ttddy)Nrrgr,rfu픞)
rgetattrr|rrrriAttributeErrorrirrjs  r!test_getattrzBuiltinTest.test_getattrsX.#**<=)W-)Wc2;y#wQ?y#wQG.'3CNN8KL.'1nEr$c	|jttd|jtt|jtttd}|jt|ttd|j
dttttjGdd}|jtt|dGdd	}|jtt|dy)
Nrrgr,FceZdZdZy)#BuiltinTest.test_hasattr.<locals>.Actr)
SystemExitr whats  r!__getattr__z/BuiltinTest.test_hasattr.<locals>.A.__getattr__rr$Nr4r5r6rhr7r$r!rrcrr$rrceZdZdZy)#BuiltinTest.test_hasattr.<locals>.Bctrrrfs  r!rhz/BuiltinTest.test_hasattr.<locals>.B.__getattr__rr$Nrir7r$r!Brkrr$rm)rrr|rrrirqrirrer)r rFrrms    r!test_hasattrzBuiltinTest.test_hasattrsX./)W-)Wc2;y#wQ?S-@ AB	!	!	
*gqsC8	!	!	
*gqsC8r$ctd|jtdtd|jtdtdtd|jtdtdtdd}t||jttg|jttiGdd}|jt	t|t
Gd	d
t
}|jt|dtdy)Nr,rrfsspamrr,rrcyrr7r7r$r!rz BuiltinTest.test_hash.<locals>.frr$ceZdZdZy) BuiltinTest.test_hash.<locals>.XcddzS)NrrLr7r(s r!__hash__z)BuiltinTest.test_hash.<locals>.X.__hash__s#v
r$Nr4r5r6rur7r$r!rrss
r$rceZdZdZy) BuiltinTest.test_hash.<locals>.Zc|Srr7r(s r!ruz)BuiltinTest.test_hash.<locals>.Z.__hash__r$Nrvr7r$r!Zrx
r$r{r)hashrqrrrrr)r rrr{s    r!	test_hashzBuiltinTest.test_hashsT
a$q'*a$s),VftG}5YQ)T2.)T2.			
d13i#.			
aed2h/r$c|jtdd|jtdd|jttiy)Nr70x10iz-0x10)rqhexrrr(s r!test_hexzBuiltinTest.test_hexs<R&)S7+)S"-r$ctdtdtdtdtdtgdtddddy)Nr,rrfrprr)rfeggsham)idr(s r!test_idzBuiltinTest.test_ids;
4
1
3
6

9

9

Aq+,r$cD|jtt|jttdddddgdg}|D]^}t|}|jt	|d|jt	|d|jt
t|`y)Nr)rD2rDr12)rriterrqrtru)r listsrr0s    r!	test_iterzBuiltinTest.test_iters)T*)T2r2c3Z.	6AQAT!Wc*T!Wc*mT15		6r$cGdd}Gdd|}Gdd}|}|}|}|jt|||jt|||jt|||jt|||jtd||jtt|d|jtty)NceZdZy)&BuiltinTest.test_isinstance.<locals>.CNrr7r$r!rrrr$rceZdZy)&BuiltinTest.test_isinstance.<locals>.DNrr7r$r!rrrr$rceZdZy)&BuiltinTest.test_isinstance.<locals>.ENrr7r$r!Errr$rr)rrrrr rrrrrbrs       r!test_isinstancezBuiltinTest.test_isinstances						
C
C
C
1a()
1a()Jq!,,-Jq!,,-Jua001)ZE:)Z0r$cGdd}Gdd|}Gdd}|}|}|}|jt|||jt|||jt|||jttd||jtt|d|jtty)NceZdZy)&BuiltinTest.test_issubclass.<locals>.CNrr7r$r!rr
rr$rceZdZy)&BuiltinTest.test_issubclass.<locals>.DNrr7r$r!rrrr$rceZdZy)&BuiltinTest.test_issubclass.<locals>.ENrr7r$r!rrrr$rr)r
issubclassrrrs       r!test_issubclasszBuiltinTest.test_issubclasss						
C
C
C
1a()
1a()Jq!,,-)Z:)ZE:)Z0r$c|jtdd|jtdd|jtdd|jtgdd|jtid|jtddd	dGd
d}|jtt|Gdd
}|jtt|Gdd}|jtt|Gdd}|jtt|Gdd}|jt
t|Gdd}|jtt|Gddt}|jtt|y)N123rr7rrLrr,rrceZdZdZy)$BuiltinTest.test_len.<locals>.BadSeqctrrr(s r!r)z,BuiltinTest.test_len.<locals>.BadSeq.__len__%rr$Nr4r5r6r)r7r$r!rEr$rr$rEceZdZdZy)(BuiltinTest.test_len.<locals>.InvalidLencyrr7r(s r!r)z0BuiltinTest.test_len.<locals>.InvalidLen.__len__)sr$Nrr7r$r!
InvalidLenr(r|r$rceZdZdZy)&BuiltinTest.test_len.<locals>.FloatLency)Ng@r7r(s r!r)z.BuiltinTest.test_len.<locals>.FloatLen.__len__-r$Nrr7r$r!FloatLenr,
r$rceZdZdZy))BuiltinTest.test_len.<locals>.NegativeLency)Nir7r(s r!r)z1BuiltinTest.test_len.<locals>.NegativeLen.__len__1rr$Nrr7r$r!NegativeLenr0rr$rceZdZdZy)%BuiltinTest.test_len.<locals>.HugeLenc(tjdzSrhr|rr(s r!r)z-BuiltinTest.test_len.<locals>.HugeLen.__len__5s{{Q&r$Nrr7r$r!HugeLenr4rr$rceZdZdZy)-BuiltinTest.test_len.<locals>.HugeNegativeLenc*tjdz
S)NrHrr(s r!r)z5BuiltinTest.test_len.<locals>.HugeNegativeLen.__len__9s|B&r$Nrr7r$r!HugeNegativeLenr8rr$rceZdZy))BuiltinTest.test_len.<locals>.NoLenMethodNrr7r$r!NoLenMethodr<rr$r)rqr'rrrrr)r rErrrrrrs        r!test_lenzBuiltinTest.test_lens^UQ'R!$\*A.\*A.R!$!!_-q1	!	!	
*c684			
)S*,7			
)S(*5			
*c;=9	'	'	
-gi8	'	'	
*c?+<='&')S+-8r$c|jttdtddgd	ddlm|jttfdd	dgd
dggdd
gddgg|jttdgdgdgdd}|jtt|gdgd|jtt|gdgdgd|jtt|gdgdgdgd|jttttdgdd}|jtt|tdtdddg|jtt|jttdd Gd!d"}|jtttd#|d$}|jttt|td%y#t$rdYwxYw)&Nc||zSrr7r5s r!rz&BuiltinTest.test_map.<locals>.<lambda>As
qsr$r,r)r,rrFr)sqrtct|dS)N?)powr5s r!rz"BuiltinTest.test_map.<locals>.sqrtGs1c{"r$c.tt|Sr)rsmap)rrs r!rz&BuiltinTest.test_map.<locals>.<lambda>JstCaL1r$r7r<rF@@g"@rc||zSrr7rs  r!rz&BuiltinTest.test_map.<locals>.<lambda>Ns
!A#r$)r,rr)rFr,r)rHrrc"d}|D]}||z}	|Srr7)vaccur0s   r!plusz"BuiltinTest.test_map.<locals>.plusRsD'tax'Kr$)r,rrx)rrFr)rrrF)r,r,r)r
rFrH)
rr,rrFr7r8r9r:r;r<c*||S||St||Sr)rrs  r!Maxz!BuiltinTest.test_map.<locals>.Maxfs"yyq!9r$rrc|Srr7r5s r!rz&BuiltinTest.test_map.<locals>.<lambda>qsAr$rceZdZdZy)$BuiltinTest.test_map.<locals>.BadSeqc3Ktwrrr(s r!r_z-BuiltinTest.test_map.<locals>.BadSeq.__iter__ss  s	Nr`r7r$r!rErrs
r$rEc|Srr7r5s r!rz&BuiltinTest.test_map.<locals>.<lambda>vs!r$ctrrWr5s r!rHz%BuiltinTest.test_map.<locals>.badfuncwsr$r)
rqrsrrRmathrrrrrrrrX)r rrrErHrs     @r!test_mapzBuiltinTest.test_map?s]E!AJ/0	
	#!	
1RGb!W3EFG3Z#s$	
	
%w89	

		
T9%&	
	
T9i01	
	
T9i;<!	
	
S'"+&'0	
		
S'!*gaj12
F	
	
)S))S+r:			
*dCVX,FG	,c'58.DEg	#
#	#sH22IIcttjdzD]>}ttd}ttd}|j|t
||@y)Nr,zIs this the real life?)rRrnrQrrjrzrs)r rxm1m2s    r!test_map_picklezBuiltinTest.test_map_pickle{sQ622Q67	8EX78BX78B""2tBx7	8r$c|jtdd|jtdddd|jtdd|jtgdd|jtdddd|jtdddd|jtd	ddd|jtd
5tddd|j	ttd|jt
d5td
dddGdd}|j	t
t|dD](}	t
|t|j|*|jtdtd|jtdtd|jtddtd|jtd
dd|jtddd|jtddd|jtd
dtd|jtddtd|jtdddtdDcgc]}tjd}}td|D}|j}|jt||tt!||dy#1swY@xYw#1swYxYw#t$rYwxYwcc}w)N1231233r,rrr,rrr,rrrrrz'max expected at least 1 argument, got 0rz"max\(\) iterable argument is emptyr7ceZdZdZy)$BuiltinTest.test_max.<locals>.BadSeqctrrrCs  r!r2z0BuiltinTest.test_max.<locals>.BadSeq.__getitem__rr$Nrr7r$r!rErrr$rE)zmax(key=int)zmax(default=None)zmax(1, 2, default=None)zmax(default=None, key=int)zmax(1, key=int)zmax(1, 2, keystone=int)zmax(1, 2, key=int, abc=int)zmax(1, 2, key=1)r,rrJdefaultrrrLrc3JK|]}|tjdfywrNrandom	randrangerelems  r!rz'BuiltinTest.test_max.<locals>.<genexpr> BTT6++B/0B!#r)rqrrirrrrrfailrrRrrrr2rreversedr rEstmtr0datarrs       r!test_maxzBuiltinTest.test_maxsX,Q1q)/0!4/0!4Q3-QQ+S!Q+

#
#5
	
E			
)S"-

#
#1
	
G		
	!	!	
*c684		 D
 T79%		$	 "	
Ts+Q/U,a0Qs+Q/R.5T40!4UD115R4a8VQC8!<V.2/4Sz:!  %::BTBBTq)A6r:	<e				,

$;s0L'"L4&M6M'L14L>	M
Mc|jtdd|jtdddd|jtdd|jtgdd|jtdddd|jtdddd|jtd	ddd	|jtd
5tddd|j	ttd|jt
d5td
dddGdd}|j	t
t|dD](}	t
|t|j|*|jtdtd|jtdtd|jtddtd|jtd
dd|jtddd|jtddd|jtd
dtd|jtddtd|jtdddtdDcgc]}tjd}}td|D}|j}|jt||t||dy#1swY7xYw#1swYxYw#t$rYwxYwcc}w)NrrDr,rrrrrrz'min expected at least 1 argument, got 0rz"min\(\) iterable argument is emptyr7ceZdZdZy)$BuiltinTest.test_min.<locals>.BadSeqctrrrCs  r!r2z0BuiltinTest.test_min.<locals>.BadSeq.__getitem__rr$Nrr7r$r!rErrr$rE)zmin(key=int)zmin(default=None)zmin(1, 2, default=None)zmin(default=None, key=int)zmin(1, key=int)zmin(1, 2, keystone=int)zmin(1, 2, key=int, abc=int)zmin(1, 2, key=1)rrrJrrrLrc3JK|]}|tjdfywrrrs  r!rz'BuiltinTest.test_min.<locals>.<genexpr>rrr)rqminrirrrrrrrrRrrrr2rrs       r!test_minzBuiltinTest.test_minsX,Q1q)/0!4/0!4Q3+QQ+S!Q-

#
#5
	
E			
)S"-

#
#1
	
G		
	!	!	
*c684		 D
 T79%		$	 "	
Ts+Q/U,a0Qs+Q/R.5T40!4UD115R4a8VQC8!<V.2/4Sz:!  %::BTBBTq)!,Q/	1e				,

$;s0L"L+&L86ML(+L58	MMcttd}|jt|d|jt|d|j	t
t||j	t
t||jt|ddGddt}t|}|jt|dd|j	t
t|d}|}|jt|d|j	t
t||jt|ddy)Nrrr,rceZdZdZdZy)#BuiltinTest.test_next.<locals>.Iterc|Srr7r(s r!r_z,BuiltinTest.test_next.<locals>.Iter.__iter__rzr$ctr)rur(s r!__next__z,BuiltinTest.test_next.<locals>.Iter.__next__
s##r$N)r4r5r6r_rr7r$r!Iterrs

$r$rc3Kdywrhr7r7r$r!genz"BuiltinTest.test_next.<locals>.gensGs)rrRrqrtrrur)r rvrr
s    r!	test_nextzBuiltinTest.test_nexts
%(^b1%b1%-r2-r2b"r*	$6	$$&\b"r*-r2	Ub1%-r2b"r*r$c|jtdd|jtdd|jttdy)NrL0o144iz-0o144r7)rqoctrrr(s r!test_octzBuiltinTest.test_octs<S7+TH-)S"-r$cVttdd}|jtt|5|j	d|j	d|j	d|j	d|j	d|j	d	dddy#1swYyxYw)
Nwutf-8encoding1+1
z+The quick brown fox jumps over the lazy dogz.
z
Dear John
,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX,YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY)openr
addCleanuprrBr fps  r!write_testfilezBuiltinTest.write_testfiles~
&#
0'
	 HHWHHBCHHUOHH]#HHYHHY
	 	 	 sA'BB(cj|jttd}|5|j|j	dd|j|j	d|j|j	dd|j|j	dd|j|jd	d
|j|jddddd|j
ttd
|j
ttdy#1swY@xYw)Nrrrrz-The quick brown fox jumps over the lazy dog.
DearrLz John
rrrzabsab)rrrrqreadlinereadrrrs  r!	test_openzBuiltinTest.test_open+s
&7
+
	7R[[^W5R[[],\]R[[^V4R[[-y9RWWS\95RWWT]I6
	7	
*dH5*dI6	7	7sCD))D2zutf-8 mode is enabledcttj}	dD]&}|tjvstj|=(|jt	j
}t
j5t
jdtttd}ddd5|j|j|dddtjjtjj|y#1swYnxYw#1swYSxYw#tjjtjj|wxYw)N)LC_ALLLANGLC_CTYPErr)rosenvironrlocalegetencodingrcatch_warningssimplefilterEncodingWarningrrrqrclearupdate)r old_environrcurrent_locale_encodingrs     r!test_open_default_encodingz&BuiltinTest.test_open_default_encoding:s2::&	+6
("**$

3
(
!&,&8&8&:#((*
'%%h@&#&
'
G  .EF
G
JJJJk*
'
'
G
G
JJJJk*sAD.AD.>+D)
D.3D"D.DD."D+'D..?E-cttd}|5|jtj|jdddy#1swYyxYw)Nrr)r__file__rr'get_inheritablefileno)r fileobjs  r!test_open_non_inheritablez%BuiltinTest.test_open_non_inheritablePsJx'2
	CR//0@AB	C	C	Cs3AAc|jtdd|jtdd|jtdd|jtdd|jtd	d
|jtdd|jtdd|jtd
d|jtdd|jtdd
|jtttjtj|jttd|jttdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtd d!|jtd"dy)#NrSrrrrr€rr Arrrrrrrrrrrrrr	rrr
r
rr)rqrcrir|rrrr(s r!test_ordzBuiltinTest.test_ordVsS2&S2&S2&Vc*Vc*TB'TB'TB'Ws+Ws+S013>>B)S"-S]+X6\*J7\*J7\*J7\*J7\*J7\*J7\*J7\*J7\*J7r$c
:	|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd	|jtd
dd|jtd
dd
|jtd
dd|jtd
dd
|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddd|jtddddD]{}dD]t}dD]m}t|ts t|tst|tr|jtt|||Q|jt|||dov}|jtddd|jtddd|jtdd
dd|jttddd|jtt|jtdd d|jtdd!d"|jtd#dd$%d&ttd'}|j|d# d(ttd# }|j|dd(ttd)}|j|dd*d|j|d*d+dy),Nrr,rrHirrr@rrrrrrg@g0AgAgr )rr)rH$@)rg@@g8@rry?gUUUUUU?y?LXz?)exp)baserFr7r)rGrFmod)rGr)rIr)rFrG)	rqrrrfloatrrrr)r rrrytwopowfifth_powermod10s       r!test_powzBuiltinTest.test_powqsQq1%Qq1%Qq1%Qq1%Qq1%QrD)QrI.QrN3RA&RB'RA&RB's2ay"-s2ay"-s2ay"-s2ay"-s2ay"-s2bz51s2bz;7s2bz+<=s3qz2.s3qz3/s3qz2.s3qz3/	CA
C%CA!!U+!!U+!!U+)))S!QB..s1a|TB
C
C	C	
s2s|R0s2s|-FG	
RQ+*c1a3)S)	
QA*!+R0!3R81%A+cq)Q,$q!a(11-q1r$c|jttd}tj}tj
}	|t_t
t_|jtd|jtd|jtdd|t_tjj|jttt
t_tjdt_|jttddtjd	t_|jtd	tjt_|jttt`|jt td
t`|jt td
|t_|t_|jy#|t_|t_|jwxYw)Nrrrz,The quick brown fox jumps over the lazy dog.ztesting
z	Dear JohnzNULLrz    'whitespace'prompt)rrrr|stdinrr?rqinputcloserrioStringIOrEOFErrorrX)r r	savestdinrs    r!
test_inputzBuiltinTest.test_inputsp
&7
+II	ZZ
	CI"CJUWe,UW&TUU;/=$CJIIOOj%0"CJH-CIiB7$67CIUW&89
CIh.
lE8<	lE8<!CI#CJHHJ"CI#CJHHJs
F.H(Ic|jtdd|jtdd|jtdd|jtgd|jtidg}|j||jt|d	i}||d<|jt|d
y)NrRrrrCr7rrrrr)rqrr.)r rs  r!	test_reprzBuiltinTest.test_reprsb6*a#&b4(b4(b4(	a),!a,/r$c
|jtdd|jttdt|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtd	d	|jtd
d|jtdd|jtdd|jtd
d|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtdd|jtddd|jttddt|jttddt|jttddt|jtdd|jtdd|jtdd|jtd d|jtdd|jtd!d!|jtd"d"|jttdt|jttd"dt|jttd"dt|jttd"dt|jtdd#d|jttGd$d%}Gd&d'}|jt|d(|jttdd)d*|jtt||}d+|_|jtt||jtt|dy),NrrrEgeAg@xDrg$geg@x皙?g?g333333$@geAgg333333$geg?g#@g33dAgg#g33drDrrr,g@rg@gigrqrC)numberndigitsceZdZdZy))BuiltinTest.test_round.<locals>.TestRoundcy)Nr7r(s r!	__round__z3BuiltinTest.test_round.<locals>.TestRound.__round__rr$N)r4r5r6rdr7r$r!	TestRoundrarr$receZdZy)+BuiltinTest.test_round.<locals>.TestNoRoundNrr7r$r!TestNoRoundrgrr$rhrcrrc|Srr7)argss r!rz(BuiltinTest.test_round.<locals>.<lambda>'sDr$)rqroundrrrrKrrrd)r rerhts    r!
test_roundzBuiltinTest.test_roundssS)eCj)3/sS)td+|,l;td+td+uu-}-}=uu-sS)sS)td+|,l;td+uu-}-}=sS)sT*{+\:td+te,|,m<tR%0eD"o.6eD!n-u5eD!n-u5	
sQ'sQ'tb)tb)	
q1%q1%rB'eAh-eBm,c2eBl+S1eBl+S1	
dB7?)U+					
y{+R0)UAq!4)UKM:M()UA.)UAq1r$Linuxalpha7y1CzItest will fail;  failure is probably due to a buggy system round functionc|jtdd|jtdd|jtdd|jtdd|jtddy)Ng7y1Cg7y1Crpg7y1Cg7y1C)rqrkr(s r!test_round_largezBuiltinTest.test_round_large5sh
	
v/td+v/v/v/r$c	 ddtjdtjddfD]^}|j	t|dt||j	t
t|dt
t|`y)Nrg
ףp=J@z1234.56i@rL)decimalDecimal	fractionsFractionrqrkrrrs  r!test_bug_27936zBuiltinTest.test_bug_27936@sv//),$$VS13	CA
U1d^U1X6T%4.14a>B	Cr$c`ttdd|jtjd|j	t
t|j	t
tt|j	t
ttdd}|j
t
|ttddy)Nrfr,rg)setattrr|rqrfrrrirjs  r!test_setattrzBuiltinTest.test_setattrIsuVQ1%)W-)Wc2)Wc6:;y#wQGr$cT|jtgd|jtttddd|jtt	ttddd|jttdd|jtt	tdd|jtdgdgdggggd	|jttdd
d|jttdd
d|jttdd
d|jttddd|jtdtdDd|jtdtdDdd|jtdtdDdd|j
tgdd|jtdtdDd|jtdtdDd
d|jtdtdDdd |jtd!dgd"|jtdd!gd"|jttd#gd$|jttd#gd#d%|jttgd#d%|jtjttd&td&g|jtjtd'd'g|jtt|jttd(|jttgd)|jttgd)d*|jttd+d,gd-td+td.g}|jtt|td-|jttdgdgdgg|jttddig|jttddigdzddi|jttgd*|jttgd-|jttgtGd/d0}|jtt|g}td1tdD||j|gy)2NrrrqrHir,rr,rrri)startil(ll(c3,K|]}|dzdk7ywrrNr7rr0s  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>as;AQUaZ;rc3,K|]}|dzdk7ywrr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>b<Qa!eqj<rilc3,K|]}|dzdk7ywrr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>drrllFc3&K|]	}|dzywrNr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>hs6qQU6rg6@c3&K|]	}|dzywrr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>i7a!e7rg@c3&K|]	}|dzywrr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>jrrgB@g@rg?gz0.0z-0.0infgrrrRrcr$bceZdZdZy)$BuiltinTest.test_sum.<locals>.BadSeqctrrrCs  r!r2z0BuiltinTest.test_sum.<locals>.BadSeq.__getitem__rr$Nrr7r$r!rErrr$rEc3"K|]}|g	ywrr7rs  r!rz'BuiltinTest.test_sum.<locals>.<genexpr>s$QaS$s
)rqsumrsrRrrassertIsrrrisinfrKrr	bytearrayr)r r6rEemptys    r!test_sumzBuiltinTest.test_sumTs/R!$T%!*-.3T$uQqz"234b9WR[)3/T'"+./5qcA3_b19=U2Y-t4U2Yd3T:U2Y0(;U2Y0(;;r;;Q?<%)<gF 	"<%)<gF 	"

c"ene,6E"I66=7U2Y7>G7U2Y7A7Kc1X,aX,c4&k*E2c4&$/0&9c"dm,f5

3eeEl'C#DEF

3u~#678)S))S"-)S/:)S/2>)S4,<D/9T?3)S&)C.A)SA3aS/:)SAa5'2)SAa5'!)aU;)S"b1)S"c2)S"ik:	!	!	
*c684$%)$e,#r$z<sum accuracy not guaranteed on machines with double roundingc||jtdgdzd|jtgddy)Nr]rHr)rg\nTrg\nr)rqrr(s r!test_sum_accuracyzBuiltinTest.test_sum_accuracys4
	
cURZ#.893?r$c|jtdtd|jtdtdy)NrRrr7)rqrrrHr(s r!	test_typezBuiltinTest.test_types2bDK0DHd2h/r$ctSr)varsr7r$r!get_vars_f0zBuiltinTest.get_vars_f0s	v
r$cFtjd}d}tS)Nr,r)rlrrrs  r!get_vars_f2zBuiltinTest.get_vars_f2s!

v
r$c$eZdZdZeeZy)BuiltinTest.C_get_varsc
ddiS)Nrrr7r(s r!getDictzBuiltinTest.C_get_vars.getDicts7Nr$)fgetN)r4r5r6rpropertyrrr7r$r!
C_get_varsrs	)r$rc2|jtttt|jtttttt|j|ji|j|j
ddd|jttdd|jttd|jt|jddiy)Nr,rrrr)
rqsetrrr|rrrrrr(s r!	test_varszBuiltinTest.test_varssTVc#%j1T#YSX7))+R0))+11-=>)T2r2)T2.doo/03q':r$cg}|j|5|D]}|j|	ddd|S#1swY|SxYw)z=Collect `iterable` into a list, catching an expected `error`.N)rr.)r iterableerroritemsrs     r!
iter_errorzBuiltinTest.iter_errorsN


u
%	# 
#T"
#	#	#s	8Ac
d}d}gd}|jtt|||gd}|jtt|||d}|jtt|||Gdd}|jtt||||jttg|jttgg|jttdGdd}|jtt|||jt
t|t
Gd	d
}|jtt|tdtttdGd
d}|jttt||y)Nr~rrr)r,r)rr)rrrrrrxceZdZdZy)BuiltinTest.test_zip.<locals>.Ic,|dks|dkDrt|dzS)Nrrrr-r r0s  r!r2z+BuiltinTest.test_zip.<locals>.I.__getitem__sq5AE#31ur$Nrr7r$r!Irs
r$rceZdZy)BuiltinTest.test_zip.<locals>.GNrr7r$r!Grrr$rceZdZdZy)4BuiltinTest.test_zip.<locals>.SequenceWithoutALengthc|dk(rt|SNrrrs  r!r2z@BuiltinTest.test_zip.<locals>.SequenceWithoutALength.__getitem__6$$Hr$Nrr7r$r!SequenceWithoutALengthr
r$rrBrceZdZdZy)$BuiltinTest.test_zip.<locals>.BadSeqc|dk(rt|Srrrs  r!r2z0BuiltinTest.test_zip.<locals>.BadSeq.__getitem__rr$Nrr7r$r!rErrr$rE)
rqrsziprrrXr]rR	enumerater)r rrrlrrrrEs        r!test_zipzBuiltinTest.test_zipst$c!Qi!,c!Qi!,c!Qi!,			
c!QSk*A.ceb)c2h,)S$/		)S!QS1,Q0AB
			
+-uU|<=58$%	

			
*dC&(,CDr$cd}d}gd}ttjdzD]!}t||}|j	|||#y)Nr~rrr,rRrnrQrrzr rrrlrxz1s      r!test_zip_picklezBuiltinTest.test_zip_picklesM$622Q67	1EQB""2q%0	1r$cd}d}gd}ttjdzD]#}t||d}|j	|||%y)Nr~rrr,Tstrictrrs      r!test_zip_pickle_strictz"BuiltinTest.test_zip_pickle_strictsP$622Q67	1EQ$'B""2q%0	1r$c\d}d}gd}ttjdzD]}t||d}tjtj
||}|j
|j|t||j
|j|t|y)Nr~rrr,Tr)	rRrnrQrrprorqrr)r rrrlrxrz2s       r!test_zip_pickle_strict_failz'BuiltinTest.test_zip_pickle_strict_fails$622Q67	AEQ$'Bfll2u56BT__R<a@T__R<a@		Ar$ctGfdd}|jt5}t|ddd|jjy#1swY&xYw)NceZdZfdZy)6BuiltinTest.test_zip_bad_iterable.<locals>.BadIterablecrr7)r 	exceptions r!r_z?BuiltinTest.test_zip_bad_iterable.<locals>.BadIterable.__iter__sr$Nr`)rsr!BadIterablers
 r$r)rrrrr)r rcmrs   @r!test_zip_bad_iterablez!BuiltinTest.test_zip_bad_iterablesYK		 	 

y
)	R
		


bllI.		sA##A,c
>|jttdddd|jtttddd|jtttddd|jtttddddy)Nr~abcTr))r,r)rr)rrrLrJ)rqr3rrrr(s r!test_zip_strictzBuiltinTest.test_zip_strictss9eDAB7	9*elE$?	A*efeD9	;*effeDA	Cr$c
ttd}dg}ttd}|jttt|||d|j
t|d|j
t|dy)NrrTrrr,)rrRrrrsrrqrt)r rrrys    r!test_zip_strict_iteratorsz%BuiltinTest.test_zip_strict_iteratorsskqN
CqN*dq!Qt4	7a!$a!$r$c
Gddt
G
fdd}|jtd|dd
}|j|d	g|jtd|d
ddt}|j|dg|jtd|d
d
d
}|j|ddg|jtd|ddt}|j|ddg|jt|ddd
}|j|dg|jt|d
ddt}|j|dg|jt|d
d
d
}|j|ddg|jt|dddt}	|j|	ddgy)NceZdZy)9BuiltinTest.test_zip_strict_error_handling.<locals>.ErrorNrr7r$r!Errorr rr$rc$eZdZdZdZfdZy)8BuiltinTest.test_zip_strict_error_handling.<locals>.Iterc||_yrsizer rs  r!r"zABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__init__$	 	r$c|Srr7r(s r!r_zABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__iter__&rzr$ch|xjdzc_|jdkr|jSNr,rr)r rs r!rzABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__next__(s*		Q	99q=Kyy r$Nr4r5r6r"r_r)rsr!rr#s
!

!r$rABr,Trrrrrrr,rABCrmrrmrrrrmr,rrr,rrrmrrr,rm)rrrrqr)r rl1l2l3l4l5l6l7l8rs          @r!test_zip_strict_error_handlingz*BuiltinTest.test_zip_strict_error_handlings	I			!		!__StAwt<e
DhZ(
__StAwDA:
Nm_-
__StAwdCU
Km];<
__StAwt<j
Ih12
__Sa$t<e
DhZ(
__Sa#d;Z
HhZ(
__Sa%=u
Eh12
__Sa$t<j
Ih12r$cGdd}|jtd|ddt}|j|dg|jtd|dd	dt}|j|d
g|jtd|dddt}|j|d
dg|jtd|d
dt}|j|ddg|jt|dddt}|j|dg|jt|dd	dt}|j|dg|jt|dddt}|j|ddg|jt|d
ddt}	|j|	ddgy)NceZdZdZdZdZy)FBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iterc||_yrrrs  r!r"zOBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__init__Brr$c|Srr7r(s r!r_zOBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__iter__Drzr$cn|xjdzc_|jdkrt|jSr)rrur(s r!rzOBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__next__Fs*		Q	99q=''yy r$Nrr7r$r!rr
As
!

!r$rrr,Trrrrrrrrrrrrrrr)rrrrq)
r rrrrrrrrrs
          r!,test_zip_strict_error_handling_stopiterationz8BuiltinTest.test_zip_strict_error_handling_stopiteration?s		!		!__StAwt<j
IhZ(
__StAwDA:
Nm_-
__StAwdCZ
Pm];<
__StAwt<j
Ih12
__Sa$t<j
IhZ(
__Sa#d;Z
HhZ(
__Sa%=z
Jh12
__Sa$t<j
Ih12r$ctgg}tj|jtjt|yr)rrXrYr
is_trackedrt)r rvs  r!test_zip_result_gczBuiltinTest.test_zip_result_gc]s3
"Y


	


d2h/0r$c8jtdddd}fd}||fd}|d|d|d	|d
|d|d|t|dGd
d}jtt|djtttdjtttttjd}j
|jdjttj
djttj
tjttj
dGdd}jt|djt|ddjt|ddGdd}Gddt}t||fD]}	|	}
jt|
t|
jt|
dt|
jtdtj|	jz5t|
ddddGddt}jtd|ddy#1swYxYw)NrrRrcGddt}Gdd|}Gddt}Gdd|}Gd	d
|}||||fS)NceZdZdZdZy)7BuiltinTest.test_format.<locals>.classes_new.<locals>.Ac||_yrr5rs  r!r"z@BuiltinTest.test_format.<locals>.classes_new.<locals>.A.__init__r	DFr$c2t|j|zSrr=rr format_specs  r!
__format__zBBuiltinTest.test_format.<locals>.classes_new.<locals>.A.__format__ttvv;44r$Nr4r5r6r"rr7r$r!rrq5r$rceZdZy)BBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromANrr7r$r!DerivedFromAr!vsr$r"ceZdZy)<BuiltinTest.test_format.<locals>.classes_new.<locals>.SimpleNrr7r$r!Simpler$yrr$r%ceZdZdZdZy)GBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimplec||_yrr5rs  r!r"zPBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple.__init__{rr$c2t|j|zSrrrs  r!rzRBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple.__format__}rr$Nrr7r$r!DerivedFromSimpler'zrr$r*ceZdZy)HBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple2Nrr7r$r!DerivedFromSimple2r,rr$r-)r)rr"r%r*r-s     r!classes_newz,BuiltinTest.test_format.<locals>.classes_newpsL
5F
5

q

'&
5F
5

>%6=l$57IIIr$cjt|dddjt|dddjt|dddjt|d	d
dy)Nrspec3specr4specrr5abcrHabcdef10abcdef)rqformat)rr"r*r-r s    r!
class_testz+BuiltinTest.test_format.<locals>.class_testsvVAaD&17;VLOV<gFV$5a$8%@&IV$6r$:HE'
)r$cjt|dt|jt|t|yNrR)rqr6r=)rr s r!empty_format_specz2BuiltinTest.test_format.<locals>.empty_format_specs8
VE2.E
;VE]CJ7r$l.@rg]]^Ug]]^g;q7r*g;q7rceZdZdZy)0BuiltinTest.test_format.<locals>.BadFormatResultcy)Nrr7rs  r!rz;BuiltinTest.test_format.<locals>.BadFormatResult.__format__rr$Nr4r5r6rr7r$r!BadFormatResultr<rr$r?rz<object object atceZdZdZy)"BuiltinTest.test_format.<locals>.Actd|Sr9)r6)r fmt_strs  r!rz-BuiltinTest.test_format.<locals>.A.__format__sb'**r$Nr>r7r$r!rrAs
+r$rrceZdZy)"BuiltinTest.test_format.<locals>.BNrr7r$r!rmrErr$rmceZdZy)"BuiltinTest.test_format.<locals>.CNrr7r$r!rrGrr$rz\b%s\bceZdZy)/BuiltinTest.test_format.<locals>.DerivedFromStrNrr7r$r!DerivedFromStrrIrr$rJrrGz
         0)
rqr6rrrrr
startswithr=rireescaper4)r r.r7r:r?rrrmrclsobjrJs`           r!test_formatzBuiltinTest.test_formatisq	
2,	J$	)	KM"	8	&!#*%+&+&,'&!$			
)V_->C	
)VVXq9)VVXvx@
H#%89:	
)VX%8%8!<)VX%8%8&(C)VX%8%8$?
	+	+	
b)R"-S)2.				Aq>	!C%CVC[#c(3VC_c#h7''	(1BIIcll4K(KM
!sC 
!
!		!	(S'>$#78,G
!
!s
LL	c|jtdd|jtdd|jtdd|jtddzd	|jtddzdz
d
|jtddzd|jtddzdz
dy)
Nr0b0r,0b1rz-0b1rrD0b100000000000000000000000000000000000000000000000000000000000000000C0b11111111111111111111111111111111111111111111111111111111111111111zE-0b100000000000000000000000000000000000000000000000000000000000000000zD-0b11111111111111111111111111111111111111111111111111111111111111111)rqbinr(s r!test_binzBuiltinTest.test_binsQ'Q'R&)QU%56QU1W7q"uX(9:q"uQwZ*:;r$ctd}|jt|jdd|jt|jddy)Nsabc1r,s1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111)rrr	translaterrs  r!test_bytearray_translatez$BuiltinTest.test_bytearray_translates<f*akk4;)Q[[(A>r$czt}ttd}|jt|j
|y)Nr)rrrrrextend)r arraybad_iters   r!test_bytearray_extend_errorz'BuiltinTest.test_bytearray_extend_errors*sC=*ellH=r$cdttfD]U}t|}|j|||j	t
|dd|j	t
|ddWy)Nr,rr)EllipsisNotImplementedrrrrr)r consttps   r!test_construct_singletonsz%BuiltinTest.test_construct_singletonss\8^3	7EeBMM"$&iQ2iqA6		7r$c@|jttt|jt5|j	tddd|jt5|jtdddy#1swY>xYw#1swYyxYwr)rDeprecationWarningrWrcrrr(s r!test_warning_notimplementedz'BuiltinTest.test_warning_notimplementeds	
+T>B


0
1	,OON+	,


0
1	1/0	1	1	,	,	1	1sB(BBBN)jr4r5r6rzrrrrrrrrrr>rNunittestskipIfr
is_emscriptenis_wasir]r`rdrkrrrrrrr	rrrr/rNrTrequires_resourcer\r`rnr~rrrrrrrrrrrrrr"r|rB	utf8_moder2requires_subprocessr8r@rOrYr[rmplatformsystemrKmachinelinux_alpharksystem_round_bugrrrxr{rrHAVE_DOUBLE_ROUNDINGr
rrstaticmethodrrrrrrrrrrrrrrrrrPrWr[r`rfrir7r$r!rlrls4,"I$..
8
8!OF,
 &DC,6.6`D*X__0!82	82t#2LE @K8Z-$<.CDJ70=1@M&	K	$K \?28Wu%&	F9&0*.
-61$1" 9D:Fx8=<~=1~+6.

 
7X__SYY((*AB+C+*!W  "C#C
86<2|!J0H2b#8??$//8:#8##%009V}.X__[5%534040CH4$lX__)WY@Y@0*V*
;*EX11A
/C%3B3<
	1	1cHJ<?
>
71r$rlceZdZdZdZdZdZdZdZe	jejjddZe	jejjdd	Ze	jejjdd
ZdZe	jejjddZd
ZdZy)TestBreakpointcFt|_|j|jj|jj	t|_|jd=|jj	ttdtjy)NPYTHONBREAKPOINTbreakpointhook)
r	resourcesrrT
enter_contextrenvrr|__breakpointhook__r(s r!setUpzTestBreakpoint.setUpsp#,,->>//0C0EFHH'($$c+S-C-CD	Fr$cxtd5}tdddjy#1swYxYwN
pdb.set_trace)r
breakpointassert_called_oncer mocks  r!test_breakpointzTestBreakpoint.test_breakpoints2
?
#	tL	!		s09cbt}|t_t|j	yrrr|r|rassert_called_once_withr my_breakpointhooks  r!'test_breakpoint_with_breakpointhook_setz6TestBreakpoint.test_breakpoint_with_breakpointhook_sets#%K.113r$c(t}|t_t|j	tj
t_t
d5}t|j	ddd|j	y#1swYxYwr)rr|r|rrrr)r rrs   r!)test_breakpoint_with_breakpointhook_resetz8TestBreakpoint.test_breakpoint_with_breakpointhook_resetso%K.113 33
?
#	+tL((*	+	113	+	+sBBczt}|t_tddddd|j	dddddy)Nr,rrrrfourfiverrs  r!&test_breakpoint_with_args_and_keywordsz5TestBreakpoint.test_breakpoint_with_args_and_keywordss;%K.1a+11!Q1Jr$c	`d}|t_|jttdddddy)Ncyrr7r7r$r!rzMTestBreakpoint.test_breakpoint_with_passthru_error.<locals>.my_breakpointhook$rIr$r,rrrrr)r|r|rrrrs  r!#test_breakpoint_with_passthru_errorz2TestBreakpoint.test_breakpoint_with_passthru_error#s,	.)ZAqqqIr$z-E was givencd|jd<td5}td|jddddy#1swYyxYw)Nrr{zbuiltins.int7rrrrrs  r!test_envar_good_path_builtinz+TestBreakpoint.test_envar_good_path_builtin)sE',#$
>
"	.dsO((-	.	.	.sAA
cd|jd<td5}t|jdddy#1swYyxYwNzsys.exitr{rrs  r!test_envar_good_path_otherz)TestBreakpoint.test_envar_good_path_other0sA'1#$
:
	+$L((*	+	+	+	?Acd|jd<td5}t|jdddy#1swYyxYw)NrCr{r)rrrassert_not_calledrs  r!test_envar_good_path_noop_0z*TestBreakpoint.test_envar_good_path_noop_07sA'*#$
?
#	%tL""$	%	%	%rcd|jd<td5}t|jdddy#1swYyxYw)NrRr{rrrs  r!!test_envar_good_path_empty_stringz0TestBreakpoint.test_envar_good_path_empty_string>sA')#$
?
#	+tL((*	+	+	+rcdD]}|j|5||jd<|jjt	d}|jjtd}t
|jt|jd|d|j|jt|jdddy#1swYxYw)	N).z..z.foozfoo.z.intzint.z.foo.barz	..foo.barz/./
nosuchbuiltinznosuchmodule.nosuchcallable)envarr{rT)quietz*Ignoring unimportable $PYTHONBREAKPOINT: "r)
subTestrr}r~rrrrqr=messagecategoryRuntimeWarningr)r rrrs    r!test_envar_unimportablez&TestBreakpoint.test_envar_unimportableEs	)EE*	
)/4+,~~33E/4JKNN00d1KL  		N@qIK  ^<&&(	
)	
)
	)	
)	
)sB<CC(	cd|jd<td5}tt_t|j
dddy#1swYyxYwr)rrrr|r|rrrs  r!#test_envar_ignored_when_hook_is_setz2TestBreakpoint.test_envar_ignored_when_hook_is_setXsI'1#$
:
	%$!$CL""$	%	%	%s*AAcxt`|jt5t	dddy#1swYyxYwr)r|r|rrXrr(s r!$test_runtime_error_when_hook_is_lostz3TestBreakpoint.test_runtime_error_when_hook_is_lost_s0


|
,	L			s09N)r4r5r6rrrrrrrjrkr|rBignore_environmentrrrrrrrr7r$r!ryrysF"
4
4KJX__SYY11>B.C.X__SYY11>B+C+X__SYY11>B%C%+X__SYY11>B)C)$%r$ryz,the pty and signal modules must be availablecReZdZdZedZdZdZddZdZ	dZ
d	Zd
ZdZ
y)
PtyTestszhTests that use a pseudo terminal to guarantee stdin and stdout are
    terminals in the test environmentcyrr7)signumframes  r!
handle_sighupzPtyTests.handle_sighupjs
	
r$ctjtj|j}	|j||tjtj|S#tjtj|wxYwr)signalSIGHUPr
_run_child)r childterminal_input
old_sighups    r!	run_childzPtyTests.run_childqsT]]6==$2D2DE
	5??5.9MM&--4FMM&--4sA&&&Bctj\}}	tj\}}|dk(r]	tjdtj|t|d5}||dddtjdtj|tj||t|d5}	g}
	|	j!j#}|dk(rn|
j%|6	dddt'
dk7r}t)}		tj*|d}
|
sn|j-|
,tj||j/d	d
}|j1dt'|
|fztj|t3j4|d|
S#tt
f$rP}tj|tj||jdj|d}~wwxYw#1swYxYw#tjYxYw#tjdwxYw#1swYhxYw#t$rY2wxYw)
Nzpty.fork() raised {}rrrrrrRirrz9got %d lines in pipe but expected 2, child output was:
%s)exitcode)r'pipeptyforkOSErrorr_rTskipTestr6ralarmr	traceback	print_exc_exitrBr rtr.r'rr!r]decoderrwait_process)r rrrrpidfdrwpiperpipelinesrAchild_outputchunks              r!rzPtyTests._run_childxswwy1	hhjGC!8

Q!S\!U%L!	
^$!g
&	#%E~~'--/2:T"
	#u:?%;LGGB-E##E*
HHRL'..wALIIRU\23
4
	S1-u(	HHQKHHQKMM077:;		!!
&##%	#	#"seG6H5,	H(5H5
:I+'I8H%AH  H%(H2-H55III(+I58	JJNctjjrtjjs|j	dfd}|j||dz}|j
|dddh|ddk7r|j	dt|d}r|jd	}n)|jtjj}|j||y)
Nzstdin and stdout must be ttyscrztjtjj	dt_tjtj
j	dt_t
dtjjxrtj
j|t
tt|y)Nsurrogateescape)rerrorsreplaceztty =file)
rU
TextIOWrapperr|rRdetachrprintisattyrrS)rrQstdio_encodings r!rz'PtyTests.check_input_tty.<locals>.childs,,SYY-=-=-?6D4EG	 --cjj.?.?.A7E5>@

'399++-E#**2C2C2EER%f
&U3r$s
rz
tty = Trueztty = Falsez%standard IO in should have been a ttyr,r)r|rRrrrrrr$rrrq)r rQrrrrinput_resultr8s ` `    r!check_input_ttyzPtyTests.check_input_ttysyy!):):)<MM9:
	4unw&>?

eAh} =>8|#MMABE!H~%,,^=NOH%,,SYY-?-?@Hx0r$c(|jddy)NrQsquux)rr(s r!test_input_ttyzPtyTests.test_input_ttys	
Xw/r$cLdtjvr|jdyy)Nr zthe readline module is loaded)r|modulesrr(s r!skip_if_readlinezPtyTests.skip_if_readlines"$MM9:%r$cJ|j|jdddy)Npromptéquuxrrrr(s r!test_input_tty_non_asciiz!PtyTests.test_input_tty_non_ascii Zg>r$cJ|j|jdddy)Nrrrrr(s r!'test_input_tty_non_ascii_unicode_errorsz0PtyTests.test_input_tty_non_ascii_unicode_errorsrr$cVd}|j|d}d}|j||y)Nctdtjj|t	j
t_tdtdttjj|y)Nzstdin.isatty():rrQz	captured:)
rr|rRrrUrVrrSrgetvalue)rs r!rz3PtyTests.test_input_no_stdout_fileno.<locals>.childsN#SYY%5%5%7eDCJ(O+uSZZ%8%8%:;%Hr$squux
)zstdin.isatty(): Truezcaptured: 'prompt')rassertSequenceEqual)r rrr8s    r!test_input_no_stdout_filenoz$PtyTests.test_input_no_stdout_filenos3	I
ui0
	
  1r$r)r4r5r6r0rwrrrrrrrrrr7r$r!rresD)

5>@140
;?
?

2r$rc$eZdZdZdZdZdZy)
TestSortedcttd}|dd}tj||j	|t||j
|||jtj||j	|t|d|j
||tj||j	|t|d|j
||y)NrLc|Srr7r5s r!rz'TestSorted.test_basic.<locals>.<lambda>	s1"r$rT)reverse)rsrRrshufflerqrrHr)r rcopys   r!
test_basiczTestSorted.test_basicsE#JAwtvd|,D$'tvd=>D$'tvdD9:D$'r$ctg|jt5tgdddtgd|jt5tgddddy#1swYAxYw#1swYyxYw)N)rr)rrrr(s r!test_bad_argumentszTestSorted.test_bad_arguments	srr



y
)	 B	 	rt


y
)	2t				 	 		s
A.
A:.A7:Bc	vd}tttg}|D],}|jt	|t	||.djt
|}ttttttjg}|D],}|jt	|t	||.y)NabracadabrarR)
rsr3r=rqrjoinr	frozensetrfromkeys)r rrTs    r!test_inputtypeszTestSorted.test_inputtypes	suc"	6AVAYqt5	6
GGCFOc9dE4==A	6AVAYqt5	6r$c`dj}|jtt|ddy)Nz,The quick Brown fox Jumped over The lazy Dogcyrr7rs  r!rz.TestSorted.test_baddecorator.<locals>.<lambda>"	rr$)splitrrr)r rs  r!test_baddecoratorzTestSorted.test_baddecorator 	s&=CCE)VT4Gr$N)r4r5r6rrr	r
r7r$r!rrs
(	6Hr$rceZdZdZy)ShutdownTestcd}td|d\}}}|jddg|jjy)Nafif 1:
            import builtins
            import sys

            class C:
                def __del__(self):
                    print("before")
                    # Check that builtins still exist
                    len(())
                    print("after")

            c = C()
            # Make this module survive until builtins and sys are cleaned
            builtins.here = sys.modules[__name__]
            sys.here = sys.modules[__name__]
            # Create a reference loop so that this module needs to go
            # through a GC phase.
            here = sys.modules[__name__]
            z-cr)PYTHONIOENCODINGbeforeafter)rrqr
splitlines)r r;rcouterrs     r!test_cleanupzShutdownTest.test_cleanup'	sG2(d9@BC(G,cjjl.E.E.GHr$N)r4r5r6rr7r$r!rr%	sIr$rcneZdZejdkrdZndZdddeegeddZ	d	Z
d
ZdZdZ
y)

ImmortalTestsri?lNTFric|j|5|jtj||jdddy#1swYyxYwr)rrqr|getrefcountIMMORTAL_REFCOUNTr immortals  r!assert_immortalzImmortalTests.assert_immortalQ	sF
\\(
#	PS__X68N8NO	P	P	Ps0AAcH|jD]}|j|yr)	IMMORTALSr rs  r!test_immortalszImmortalTests.test_immortalsU	s#	+H  *	+r$cxt|jdz}|jD]}|j|yNr)rsr"r r refsrs   r!$test_list_repeat_respect_immortalityz2ImmortalTests.test_list_repeat_respect_immortalityY	s6DNN#b(	+H  *	+r$cxt|jdz}|jD]}|j|yr%)r3r"r r&s   r!%test_tuple_repeat_respect_immortalityz3ImmortalTests.test_tuple_repeat_respect_immortality^	s6T^^$r)	+H  *	+r$)r4r5r6r|rrrbrcrRr"r r#r(r*r7r$r!rrG	sL{{g))tUHnNuR~NIP++
+r$rcBeZdZdZdZdZdZdZdZdZ	dZ
d	Zy
)TestTypectddi}|j|jd|j|jd|j|jt|j|j
tf|j|jt|}|jt|||j|j|Gdd}td|tfddi}|j|jd|j|jd|j|jt|j|j
|tf|j|jt|jd|j|jd|j|d	}|j|d	|jt|||j|j||j|jd
|j|jd|j|j!dd
dy)Nrr7ceZdZdZy)!TestType.test_new_type.<locals>.Bcd|zS)Nzham%dr7r(s r!rz%TestType.test_new_type.<locals>.B.hamq	s~%r$N)r4r5r6rr7r$r!rmr/p	s
&r$rmrrfcd|zS)Nzspam%sr7r(s r!rz(TestType.test_new_type.<locals>.<lambda>s	s
hor$rrham42spam42rlittles*)rrrqr4r6r5	__bases__rr__base__r~rrrrrrrfto_bytes)r rrrmrs     r!
test_new_typezTestType.test_new_typee	sb"S)-x0vi0

ajj&)
C

d1gq!

akk1%	&	&
q#h)E FGS)-x0q#h/

ajj#&

fajj)

+
bEB

d1gq!

akk1%'*8,Ax0+>r$c|jt5tddidddd|jt5tddidddy#1swY6xYw#1swYyxYw)Nrr7rr5r)rrrrr(s r!test_type_nokwargszTestType.test_type_nokwargs	sg


y
)	#b""	#


y
)	#br"	#	#	#	#	#	#sAA'A$'A0cdD]}|j|5t|di}|j|j||j|j||j|j
tddd|j
t5tddiddd|j
t5tddiddd|j
t5tddidddtddi}dD]|}|j|5||_|j|j||j|jd|j|j
tddd~tddi}|j
t5d|_ddd|j|jd|j
t5d|_ddd|j|jd|j
t5d|_ddd|j|jdy#1swYoxYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw)N)rÄ🐍zB.A42rRrr7zABuABr=r)
rrrrqr4r6r5rrUnicodeEncodeErrorr)r rrrs    r!test_type_namezTestType.test_type_name	sh>	9D4(
9r2&  T2  6  x8	
9
9	9

z
*	#2r"	#


1
2	%R$	%


y
)	r2	
b">	9D4(
9!
  T2  5  x8	
9
9	9
b"


z
*	"!AJ	"S)


1
2	$#AJ	$S)


y
)	AJ	S);
9
9
	#	#	%	%		

9
9	"	"	$	$		saA&I(I5J3J-A J9J):J5;K(I2	5I?JJJ&	)J25J>K
ctddddi}|j|jd|j|jd|j|jt|jt5tddddiddd|j|jdd|_|j|jd|j|jd|jt5d|_ddd|j|jdy#1swYxYw#1swY2xYw)Nrr7r6zB.CBzD.E)rrrqr4r6r5rr)r rs  r!test_type_qualnamezTestType.test_type_qualname	sb>512S)/x0


y
)	2b>401	2/S)/


y
)	"!AN	"/	2	2	"	"s=D2D>2D;>EcFd}|j\}|j|tjd|_|j	|jd|jt5|`ddd|j	|jdy#1swY&xYw)Nc0dx}fGfdd
}|S)rceZdZWZy)(TestType.test_type_typeparams.<locals>.AN)r4r5r6__type_params__).type_paramssr!rrH	sr$rr7)r
.generic_baserJs  @r!z<generic parameters of A>z@TestType.test_type_typeparams.<locals>.<generic parameters of A>	s			r$whatever)rIrtypingTypeVarrqrr)r rrs   r!test_type_typeparamszTestType.test_type_typeparams	s	


a0&**J7


y
)	"!	"**J7	"	"s/BB cdD]-}tddd|i}|j|j|/|jt5tddddidddtddi}|j|jddD]%}||_|j|j|'y#1swY]xYw)N)rr=r>xyxrNrr7r0xy)rr=r>rQrSrRrN)rrrqr0rr@)r r+rs   r!
test_type_doczTestType.test_type_doc	sF	-CS"y#./AQYY,	-

1
2	3b9j12	3
b"D)R	-CAIQYY,	-	3	3sB44B=c,|jt5tddd|jt5tddddd|jt5tddidddd|jt5tddiddd|jt5tdgiddd|jt5tddtjiddd|jt5tddiddd|jt5tdt
fiddd|jt5tdttfidddy#1swYxYw#1swYixYw#1swYJxYw#1swY+xYw#1swY
xYw#1swYxYw#1swYxYw#1swYxYw#1swYyxYw)Nrr7r:r)rrrrrMappingProxyTyperWrr=r(s r!
test_bad_argszTestType.test_bad_args	s


y
)	F	


y
)	bM	


y
)	"b"b!	"


y
)	#br"	#


y
)	b"	


y
)	6b%0045	6


y
)	#gr"	#


y
)	#tgr"	#


y
)	&sCj"%	&	&!					"	"	#	#			6	6	#	#	#	#	&	&sjF%
F2(F?GG+!G&)G2G>H
%F/2F<?G	GG#&G/2G;>H
Hc|jt5tddddiddd|jt5tdtfddiddd|jt5tddddiddd|jt5tddddiddd|jt5tddddiddd|jt5tdddd	d
ddd|jt5tddddiddd|jt5tddddidddGd
d}|jt5td|fddiddd|jt5td|fddidddy#1swYxYw#1swYxYw#1swYmxYw#1swYMxYw#1swY-xYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swYyxYw)Nrr7r{rRrrRr?rQr)r{r)rrrr)__weakref__rYceZdZy)"TestType.test_bad_slots.<locals>.BNrr7r$r!rmr[	rr$rmrrrY)rrrrrr)r rms  r!test_bad_slotszTestType.test_bad_slots	s)


y
)	/b;-.	/


y
)	2sf{C01	2


y
)	-b;+,	-


y
)	/b;-.	/


y
)	3b;12	3


z
*	6b!45	6


y
)	Cb;(@AB	C


y
)	Ib;(FGH	I		


y
)	7qd[*56	7


y
)	:qd[-89	:	:+	/	/	2	2	-	-	/	/	3	3	6	6	C	C	I	I
	7	7	:	:swGG#5G0"G=H
<H*H$H0H<<IG #G-0G:=H
HH!$H-0H9<IIctjddg}|jdt|j	}tdd|}|j
t|jj	ddddgy)N)rr,)rrrrr7r)rOrderedDictmove_to_endrsrrrrqrr)r odr8rs    r!test_namespace_orderzTestType.test_namespace_order	so

$
$h%9
:
s
#b"ajj..01"15(7KLr$N)r4r5r6r8r;rArDrOrTrWr\rar7r$r!r,r,d	s1?<#*B0 	8-&(:2Mr$r,cHddlm}|j|t|S)Nr)DocTestSuite)doctestrcaddTestr)loadertestspatternrcs    r!
load_testsri	
s$	MM,x()Lr$r)Vr1rWrrrtrvrXrUr)rr'rnrqrrLr|rrrMrjr
contextlibr	functoolsrinspectr	itertoolsrtextwraprrr	r
operatorrrrtest.supportr
rrtest.support.os_helperrrrtest.support.script_helperrtest.support.warnings_helperrr
unittest.mockrrrrrrrrvrr9r?rrrr=ritest_conv_no_signtest_conv_signrUr]rfrjTestCaserlry
skipUnlessrrrrr,rir4mainr7r$r!<module>rzs		
	

	

  <<OOHH77**1A) $

	$	
ckk	CKK(		Z 	Z	j	Z 	
$%9	:C@	UZ '.			
+	
ckk	CKK(		*	Z 	Z	j	Z 	
$%9	:C@	UZ ',b1(##b1J;kX&&k\SHIR2x  R2JR2h(H""(HVI8$$ID+H%%++8bMx  bMJ
zHMMOMOC&s8I,,	I98I9