Plan 9 from Bell Labs’s /usr/web/sources/contrib/jas/root/sys/lib/python2.7/lib2to3/tests/test_fixers.pyc

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


��Qc@s!dZddlZddlZddlmZddlmZddlmZm	Z	m
Z
mZddlm
Z
de
jfd��YZd	efd
��YZdefd��YZd
efd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd ��YZd!efd"��YZd#efd$��YZd%efd&��YZd'efd(��YZd)efd*��YZ d+efd,��YZ!d-efd.��YZ"d/efd0��YZ#d1fd2��YZ$d3ee$fd4��YZ%d5ee$fd6��YZ&d7ee$fd8��YZ'd9efd:��YZ(d;efd<��YZ)d=efd>��YZ*d?efd@��YZ+dAefdB��YZ,dCefdD��YZ-dEefdF��YZ.dGefdH��YZ/dIefdJ��YZ0dKefdL��YZ1dMefdN��YZ2dOefdP��YZ3dQefdR��YZ4dSefdT��YZ5dUefdV��YZ6dWefdX��YZ7dYefdZ��YZ8d[efd\��YZ9d]efd^��YZ:d_efd`��YZ;daefdb��YZ<dcefdd��YZ=deefdf��YZ>dgefdh��YZ?diefdj��YZ@dkefdl��YZAdmefdn��YZBdoefdp��YZCdqefdr��YZDdS(ss" Test suite for the fixer modules i�N(tchain(t
itemgetter(tpygramtpytreetrefactort
fixer_util(tsupportt
FixerTestCasecBsYeZdddd�Zd�Zed�Zed�Zd�Zed�Z	d�Z
RS(	tlib2to3cCs{|dkr|jg}ntj|||�|_g|_d|_x/t|jj|jj	�D]}|j|_
qaWdS(Nu<string>(tNonetfixerRtget_refactorerRt	fixer_logtfilenameRt	pre_ordert
post_ordertlog(tselftfix_listt	fixer_pkgtoptionsR
((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytsetUps		cCsPtj|�}tj|�}|jj||j�}|j|t|��|S(N(RtreformatRtrefactor_stringR
tassertEqualtunicode(Rtbeforetafterttree((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt_checks
cCsB|j||�}|j|j�|s>|j|jg�ndS(N(Rt
assertTruetwas_changedRR(RRRtignore_warningsR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytcheck$scCsN|j||�}|j|dj|j�k�|sJ|j|j�ndS(Nt(RRtjoinRR(RRRtmessaget	unchangedR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytwarns*scCs|j|||dt�dS(NR%(R&tTrue(RRR$((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytwarns_unchanged0scCs0|j||�|s,|j|jg�ndS(N(RRR(RRR ((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR%3sc	Gs�|jg}|j|�tjd|�}|j�\}}d|j}|rm|djjj|�rmdS|r�|djjj|�r�|r�dS|jddj	g||D]}|jj^q��|f�dS(NRtfix_i�s5Fixer run order (%s) is incorrect; %s should be last.s, (
R
textendRRt
get_fixerst	__class__t
__module__tendswithtfailR#(Rtnamestfixestrtpretposttntx((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytassert_runs_after8s

&	N(t__name__R-R	RRtFalseR!R&R(R%R7(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRs		tTest_necBs)eZdZd�Zd�Zd�ZRS(tnecCs d}d}|j||�dS(Nsif x <> y:
            passsif x != y:
            pass(R!(Rtbta((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_basicJscCs d}d}|j||�dS(Nsif x<>y:
            passsif x!=y:
            pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_no_spacesRscCs d}d}|j||�dS(Nsif x<>y<>z:
            passsif x!=y!=z:
            pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_chainedZs(R8R-R
R>R?R@(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR:Gs		tTest_has_keycBsqeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
RS(thas_keycCs d}d}|j||�dS(Ns$x = d.has_key("x") or d.has_key("y")sx = "x" in d or "y" in d(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_1escCs d}d}|j||�dS(Nsx = a.b.c.d.has_key("x") ** 3sx = ("x" in a.b.c.d) ** 3(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_2jscCs d}d}|j||�dS(Ns!x = a.b.has_key(1 + 2).__repr__()sx = (1 + 2 in a.b).__repr__()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_3oscCs d}d}|j||�dS(Ns,x = a.b.has_key(1 + 2).__repr__() ** -3 ** 4s(x = (1 + 2 in a.b).__repr__() ** -3 ** 4(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_4tscCs d}d}|j||�dS(Nsx = a.has_key(f or g)sx = (f or g) in a(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_5yscCs d}d}|j||�dS(Nsx = a + b.has_key(c)sx = a + (c in b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_6~scCs d}d}|j||�dS(Nsx = a.has_key(lambda: 12)sx = (lambda: 12) in a(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_7�scCs d}d}|j||�dS(Nsx = a.has_key(a for a in b)sx = (a for a in b) in a(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_8�scCs d}d}|j||�dS(Nsif not a.has_key(b): passsif b not in a: pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_9�scCs d}d}|j||�dS(Ns$if not a.has_key(b).__repr__(): passs if not (b in a).__repr__(): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_10�scCs d}d}|j||�dS(Nsif not a.has_key(b) ** 2: passsif not (b in a) ** 2: pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_11�s(R8R-R
RCRDRERFRGRHRIRJRKRLRM(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRAbs										t
Test_applycBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(tapplycCs d}d}|j||�dS(Nsx = apply(f, g + h)s
x = f(*g + h)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Nsy = apply(f, g, h)sy = f(*g, **h)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Ns z = apply(fs[0], g or h, h or g)sz = fs[0](*g or h, **h or g)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Nsapply(f, (x, y) + t)sf(*(x, y) + t)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRF�scCs d}d}|j||�dS(Nsapply(f, args,)sf(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRG�scCs d}d}|j||�dS(Nsapply(f, args, kwds,)sf(*args, **kwds)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRH�scCs d}d}|j||�dS(Nsx = apply(f+g, args)sx = (f+g)(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_complex_1�scCs d}d}|j||�dS(Nsx = apply(f*g, args)sx = (f*g)(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_complex_2�scCs d}d}|j||�dS(Nsx = apply(f**g, args)sx = (f**g)(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_complex_3�scCs d}d}|j||�dS(Nsx = apply(f.g, args)sx = f.g(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_dotted_name�scCs d}d}|j||�dS(Nsx = apply(f[x], args)sx = f[x](*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_subscript�scCs d}d}|j||�dS(Nsx = apply(f(), args)sx = f()(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_call�scCs d}d}|j||�dS(Ns"x = apply(a.b.c.d.e.f, args, kwds)sx = a.b.c.d.e.f(*args, **kwds)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_extreme�scCs d}d}|j||�dS(Ns1apply(   # foo
          f, # bar
          args)sf(*args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_weird_comments�scCsd}|j|�dS(Nsapply()(R%(Rts((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_1�scCsd}|j|�dS(Nsapply(f)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_2�scCsd}|j|�dS(Ns	apply(f,)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_3�scCsd}|j|�dS(Nsapply(f, args, kwds, extras)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_4�scCsd}|j|�dS(Nsapply(f, *args, **kwds)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_5�scCsd}|j|�dS(Nsapply(f, *args)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_6scCsd}|j|�dS(Ns#apply(func=f, args=args, kwds=kwds)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_7scCsd}|j|�dS(Nsapply(f, args=args, kwds=kwds)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_8scCsd}|j|�dS(Nsapply(f, args, kwds=kwds)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_9scCs d}d}|j||�dS(Nsapply(  f,  args,   kwds)sf(*args, **kwds)(R!(RR=R<((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_space_1scCs d}d}|j||�dS(Nsapply(  f  ,args,kwds   )sf(*args, **kwds)(R!(RR=R<((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_space_2s(R8R-R
RCRDRERFRGRHRPRQRRRSRTRURVRWRYRZR[R\R]R^R_R`RaRbRc(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRN�s4																									tTest_interncBs)eZdZd�Zd�Zd�ZRS(tinterncCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsx =   intern(  a  )s"import sys
x =   sys.intern(  a  )s%y = intern("b" # test
              )s4import sys
y = sys.intern("b" # test
              )sz = intern(a+b+c.d,   )s&import sys
z = sys.intern(a+b+c.d,   )(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Ns
x = intern(a)simport sys
x = sys.intern(a)sz = intern(a+b+c.d,)s#import sys
z = sys.intern(a+b+c.d,)s"intern("y%s" % 5).replace("y", "")s1import sys
sys.intern("y%s" % 5).replace("y", "")(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest/scCscd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nsintern(a=1)sintern(f, g)s
intern(*h)sintern(**i)sintern()(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged>s



(R8R-R
RfRgRh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRds		tTest_reducecBs2eZdZd�Zd�Zd�Zd�ZRS(treducecCs d}d}|j||�dS(Nsreduce(a, b, c)s,from functools import reduce
reduce(a, b, c)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_simple_callQscCs d}d}|j||�dS(Nsdef x(arg): reduce(sum, [])s8from functools import reduce
def x(arg): reduce(sum, [])(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_bug_7253VscCs d}d}|j||�dS(Nsreduce(lambda x, y: x + y, seq)s<from functools import reduce
reduce(lambda x, y: x + y, seq)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_call_with_lambda\scCscd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Ns	reduce(a)sreduce(a, b=42)sreduce(a, b, c, d)sreduce(**c)sreduce()(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRhas



(R8R-R
RkRlRmRh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRiNs
			t
Test_printcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�ZRS(tprintcCs d}d}|j||�dS(Nsprint 1,   1+1,   1+1+1sprint(1,   1+1,   1+1+1)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRftscCs*d}|j|�d}|j|�dS(Nsprint()s	print('')(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_idempotencyys
cCsOtj|jj_d}|j|�d}|j|�d}|j|�dS(Nsprint(1, 1+1, 1+1+1)sprint()s	print('')(Rt!python_grammar_no_print_statementRtdrivertgrammarR%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt"test_idempotency_print_as_function�s

cCs d}d}|j||�dS(Nsprint 1, 1+1, 1+1+1sprint(1, 1+1, 1+1+1)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Ns
print 1, 2sprint(1, 2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(NRosprint()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Nsprint whatever; printsprint(whatever); print()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRF�scCs d}d}|j||�dS(Nsprint; print whatever;sprint(); print(whatever);(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRG�scCs d}d}|j||�dS(Nsprint (a, b, c)sprint((a, b, c))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_tuple�scCs d}d}|j||�dS(Nsprint 1, 2, 3,sprint(1, 2, 3, end=' ')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_trailing_comma_1�scCs d}d}|j||�dS(Nsprint 1, 2,sprint(1, 2, end=' ')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_trailing_comma_2�scCs d}d}|j||�dS(Nsprint 1,sprint(1, end=' ')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_trailing_comma_3�scCs d}d}|j||�dS(Nsprint >>sys.stderr, 1, 2, 3sprint(1, 2, 3, file=sys.stderr)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt!test_vargs_without_trailing_comma�scCs d}d}|j||�dS(Nsprint >>sys.stderr, 1, 2,s%print(1, 2, end=' ', file=sys.stderr)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_with_trailing_comma�scCs d}d}|j||�dS(Nsprint >>sys.stderr, 1+1sprint(1+1, file=sys.stderr)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_no_trailing_comma�scCs d}d}|j||�dS(Nsprint >>  sys.stderrsprint(file=sys.stderr)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_spaces_before_file�scCs3d}|j|�d}d}|j||�dS(Ns<from __future__ import print_function
print('Hai!', end=' ')sprint 'Hello, world!'sprint('Hello, world!')(R%R!(RRXR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_with_future_print_function�s

(R8R-R
RfRpRtRCRDRERFRGRuRvRwRxRyRzR{R|R}(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRnqs$																t	Test_execcBsheZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZRS(texeccCs d}d}|j||�dS(Ns  exec code in ns1,   ns2s  exec(code, ns1,   ns2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�scCs d}d}|j||�dS(Ns	exec codes
exec(code)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR>�scCs d}d}|j||�dS(Nsexec code in nssexec(code, ns)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_with_globals�scCs d}d}|j||�dS(Nsexec code in ns1, ns2sexec(code, ns1, ns2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_with_globals_locals�scCs d}d}|j||�dS(Nsexec (a.b()) in nssexec((a.b()), ns)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRP�scCs d}d}|j||�dS(Nsexec a.b() + c in nssexec(a.b() + c, ns)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRQ�scCsd}|j|�dS(Ns
exec(code)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRY�scCsd}|j|�dS(Nsexec (code)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRZscCsd}|j|�dS(Nsexec(code, ns)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR[scCsd}|j|�dS(Nsexec(code, ns1, ns2)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR\
s(
R8R-R
RfR>R�R�RPRQRYRZR[R\(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR~�s									t	Test_reprcBsMeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(treprcCs d}d}|j||�dS(Ns
x =   `1 + 2`sx =   repr(1 + 2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRfscCs d}d}|j||�dS(Nsx = `1 + 2`sx = repr(1 + 2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_simple_1scCs d}d}|j||�dS(Nsy = `x`sy = repr(x)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_simple_2scCs d}d}|j||�dS(Nsz = `y`.__repr__()sz = repr(y).__repr__()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_complex scCs d}d}|j||�dS(Ns
x = `1, 2, 3`sx = repr((1, 2, 3))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRu%scCs d}d}|j||�dS(Ns
x = `1 + `2``sx = repr(1 + repr(2))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_nested*scCs d}d}|j||�dS(Nsx = `1, 2 + `3, 4``sx = repr((1, 2 + repr((3, 4))))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_nested_tuples/s(
R8R-R
RfR�R�R�RuR�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s						tTest_exceptcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�ZRS(texceptcCs d}d}|j||�dS(Nsq
            try:
                pass
            except (RuntimeError, ImportError),    e:
                passss
            try:
                pass
            except (RuntimeError, ImportError) as    e:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf7scCs d}d}|j||�dS(NsV
            try:
                pass
            except Foo, e:
                passsX
            try:
                pass
            except Foo as e:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_simpleDscCs d}d}|j||�dS(NsU
            try:
                pass
            except Foo,e:
                passsX
            try:
                pass
            except Foo as e:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt"test_simple_no_space_before_targetQscCs d}d}|j||�dS(Ns�
            def foo():
                try:
                    pass
                except Exception, (f, e):
                    pass
                except ImportError, e:
                    passs
            def foo():
                try:
                    pass
                except Exception as xxx_todo_changeme:
                    (f, e) = xxx_todo_changeme.args
                    pass
                except ImportError as e:
                    pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_tuple_unpack^s
cCs d}d}|j||�dS(Nsn
            try:
                pass
            except (RuntimeError, ImportError), e:
                passsp
            try:
                pass
            except (RuntimeError, ImportError) as e:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multi_classsscCs d}d}|j||�dS(Nsa
            try:
                pass
            except Exception, [a, b]:
                passs�
            try:
                pass
            except Exception as xxx_todo_changeme:
                [a, b] = xxx_todo_changeme.args
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_list_unpack�scCs d}d}|j||�dS(Ns_
            try:
                pass
            except Exception, d[5]:
                passs�
            try:
                pass
            except Exception as xxx_todo_changeme:
                d[5] = xxx_todo_changeme
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_weird_target_1�scCs d}d}|j||�dS(Ns`
            try:
                pass
            except Exception, a.foo:
                passs�
            try:
                pass
            except Exception as xxx_todo_changeme:
                a.foo = xxx_todo_changeme
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_weird_target_2�scCs d}d}|j||�dS(Nsb
            try:
                pass
            except Exception, a().foo:
                passs�
            try:
                pass
            except Exception as xxx_todo_changeme:
                a().foo = xxx_todo_changeme
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_weird_target_3�scCs d}d}|j||�dS(Ns�
            try:
                pass
            except Exception, a:
                pass
            except:
                passs�
            try:
                pass
            except Exception as a:
                pass
            except:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_except�scCs d}d}|j||�dS(Ns�
            try:
                pass
            except Exception, a:
                pass
            except:
                pass
            else:
                pass
            finally:
                passs�
            try:
                pass
            except Exception as a:
                pass
            except:
                pass
            else:
                pass
            finally:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt!test_bare_except_and_else_finally�scCs d}d}|j||�dS(Ns�
            try:
                pass
            except TypeError, b:
                pass
            except Exception, a:
                pass
            except:
                passs�
            try:
                pass
            except TypeError as b:
                pass
            except Exception as a:
                pass
            except:
                pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt+test_multi_fixed_excepts_before_bare_except�s	
cCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(	Nsd
            try: raise TypeError
            except TypeError, e:
                pass
            sf
            try: raise TypeError
            except TypeError as e:
                pass
            sd
            try:
                raise TypeError
            except TypeError, e: pass
            sf
            try:
                raise TypeError
            except TypeError as e: pass
            sT
            try: raise TypeError
            except TypeError, e: pass
            sV
            try: raise TypeError
            except TypeError as e: pass
            s�
            try: raise TypeError
            except TypeError, e: pass
            else: function()
            finally: done()
            s�
            try: raise TypeError
            except TypeError as e: pass
            else: function()
            finally: done()
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_one_line_suites�scCsd}|j|�dS(NsO
            try:
                pass
            except:
                pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRY/scCsd}|j|�dS(NsY
            try:
                pass
            except Exception:
                pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRZ7scCsd}|j|�dS(Nsg
            try:
                pass
            except (Exception, SystemExit):
                pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR[?s(R8R-R
RfR�R�R�R�R�R�R�R�R�R�R�R�RYRZR[(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�4s"	
	
	
										0		t
Test_raisecBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�ZRS(traisecCs d}d}|j||�dS(Nsraise Exception, 5sraise Exception(5)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR>JscCs<d}d}|j||�d}d}|j||�dS(Nsraise Exception,5sraise Exception(5)sraise   Exception,    5sraise   Exception(5)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRfOscCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsraise Exception, 5 # foosraise Exception(5) # foosraise E, (5, 6) % (a, b) # foosraise E((5, 6) % (a, b)) # foos:def foo():
                    raise Exception, 5, 6 # foosIdef foo():
                    raise Exception(5).with_traceback(6) # foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_with_commentsXscCs d}d}|j||�dS(Nsraise Exception(5), None, tbs%raise Exception(5).with_traceback(tb)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_None_valuegscCs d}d}|j||�dS(Nsraise Exception, (5, 6, 7)sraise Exception(5, 6, 7)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_tuple_valuelscCs d}d}|j||�dS(Nsraise E, (5, 6) % (a, b)sraise E((5, 6) % (a, b))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_tuple_detectionqscCs d}d}|j||�dS(Nsraise (((E1, E2), E3), E4), Vsraise E1(V)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_tuple_exc_1vscCs d}d}|j||�dS(Nsraise (E1, (E2, E3), E4), Vsraise E1(V)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_tuple_exc_2{scCsd}|j|d�dS(Nsraise 'foo's+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_string_exc�scCsd}|j|d�dS(Nsraise "foo", 5s+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_string_exc_val�scCsd}|j|d�dS(Nsraise "foo", 5, 6s+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_string_exc_val_tb�scCs d}d}|j||�dS(Ns4def foo():
                    raise Exception, 5, 6sCdef foo():
                    raise Exception(5).with_traceback(6)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_1�scCs d}d}|j||�dS(Nshdef foo():
                    a = 5
                    raise Exception, 5, 6
                    b = 6swdef foo():
                    a = 5
                    raise Exception(5).with_traceback(6)
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_2�scCs d}d}|j||�dS(Ns2def foo():
                    raise Exception,5,6sCdef foo():
                    raise Exception(5).with_traceback(6)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_3�scCs d}d}|j||�dS(Nsfdef foo():
                    a = 5
                    raise Exception,5,6
                    b = 6swdef foo():
                    a = 5
                    raise Exception(5).with_traceback(6)
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_4�scCs d}d}|j||�dS(Ns<def foo():
                    raise Exception, (5, 6, 7), 6sIdef foo():
                    raise Exception(5, 6, 7).with_traceback(6)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_5�scCs d}d}|j||�dS(Nspdef foo():
                    a = 5
                    raise Exception, (5, 6, 7), 6
                    b = 6s}def foo():
                    a = 5
                    raise Exception(5, 6, 7).with_traceback(6)
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_6�s(R8R-R
R>RfR�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�Gs$																	t
Test_throwcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�ZRS(tthrowcCs d}d}|j||�dS(Nsg.throw(Exception, 5)sg.throw(Exception(5))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Nsg.throw(Exception,5)sg.throw(Exception(5))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Nsg.throw(Exception, (5, 6, 7))sg.throw(Exception(5, 6, 7))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Ns5 + g.throw(Exception, 5)s5 + g.throw(Exception(5))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRF�scCsd}|j|d�dS(Nsg.throw("foo")s+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_warn_1�scCsd}|j|d�dS(Nsg.throw("foo", 5)s+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_warn_2�scCsd}|j|d�dS(Nsg.throw("foo", 5, 6)s+Python 3 does not support string exceptions(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_warn_3�scCsd}|j|�dS(Nsg.throw(Exception)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_untouched_1�scCsd}|j|�dS(Nsg.throw(Exception(5, 6))(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_untouched_2�scCsd}|j|�dS(Ns5 + g.throw(Exception(5, 6))(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_untouched_3�scCs d}d}|j||�dS(Ns7def foo():
                    g.throw(Exception, 5, 6)sFdef foo():
                    g.throw(Exception(5).with_traceback(6))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Nskdef foo():
                    a = 5
                    g.throw(Exception, 5, 6)
                    b = 6szdef foo():
                    a = 5
                    g.throw(Exception(5).with_traceback(6))
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�scCs d}d}|j||�dS(Ns5def foo():
                    g.throw(Exception,5,6)sFdef foo():
                    g.throw(Exception(5).with_traceback(6))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�
scCs d}d}|j||�dS(Nsidef foo():
                    a = 5
                    g.throw(Exception,5,6)
                    b = 6szdef foo():
                    a = 5
                    g.throw(Exception(5).with_traceback(6))
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�scCs d}d}|j||�dS(Ns?def foo():
                    g.throw(Exception, (5, 6, 7), 6)sLdef foo():
                    g.throw(Exception(5, 6, 7).with_traceback(6))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�scCs d}d}|j||�dS(Nssdef foo():
                    a = 5
                    g.throw(Exception, (5, 6, 7), 6)
                    b = 6s�def foo():
                    a = 5
                    g.throw(Exception(5, 6, 7).with_traceback(6))
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�&scCs d}d}|j||�dS(Ns;def foo():
                    a + g.throw(Exception, 5, 6)sJdef foo():
                    a + g.throw(Exception(5).with_traceback(6))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_71scCs d}d}|j||�dS(Nsodef foo():
                    a = 5
                    a + g.throw(Exception, 5, 6)
                    b = 6s~def foo():
                    a = 5
                    a + g.throw(Exception(5).with_traceback(6))
                    b = 6(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_tb_88s(R8R-R
RCRDRERFR�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s&																	t	Test_longcBs;eZdZd�Zd�Zd�Zd�Zd�ZRS(tlongcCs d}d}|j||�dS(Nsx = long(x)s
x = int(x)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRCFscCs d}d}|j||�dS(Nsy = isinstance(x, long)sy = isinstance(x, int)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRDKscCs d}d}|j||�dS(Nsz = type(x) in (int, long)sz = type(x) in (int, int)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyREPscCs�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nslong = Trues
s.long = Truesdef long(): passsclass long(): passsdef f(long): passsdef f(g, long): passsdef f(x, long=True): pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRhUs





cCs d}d}|j||�dS(Nsx =   long(  x  )sx =   int(  x  )(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRfks(R8R-R
RCRDRERhRf(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�Cs				t
Test_execfilecBs eZdZd�Zd�ZRS(texecfilecCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�d}d}|j||�dS(
Nsexecfile("fn")s.exec(compile(open("fn").read(), "fn", 'exec'))sexecfile("fn", glob)s4exec(compile(open("fn").read(), "fn", 'exec'), glob)sexecfile("fn", glob, loc)s9exec(compile(open("fn").read(), "fn", 'exec'), glob, loc)sexecfile("fn", globals=glob)s<exec(compile(open("fn").read(), "fn", 'exec'), globals=glob)sexecfile("fn", locals=loc)s:exec(compile(open("fn").read(), "fn", 'exec'), locals=loc)s(execfile("fn", globals=glob, locals=loc)sHexec(compile(open("fn").read(), "fn", 'exec'), globals=glob, locals=loc)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_conversionts$cCs<d}d}|j||�d}d}|j||�dS(Nsexecfile( "fn" )s0exec(compile(open( "fn" ).read(), "fn", 'exec'))sexecfile("fn",  globals = glob)s?exec(compile(open("fn").read(), "fn", 'exec'),  globals = glob)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_spacing�s(R8R-R
R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�qs	tTest_isinstancecBs)eZdZd�Zd�Zd�ZRS(t
isinstancecCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(	Nsisinstance(x, (int, int, int))sisinstance(x, int)s,isinstance(x, (int, float, int, int, float))sisinstance(x, (int, float))s1isinstance(x, (int, float, int, int, float, str))s isinstance(x, (int, float, str))s4isinstance(foo() + bar(), (x(), y(), x(), int, int))s/isinstance(foo() + bar(), (x(), y(), x(), int))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_remove_multiple_items�scCs d}d}|j||�dS(Ns4if    isinstance(  foo(), (  bar, bar, baz )) : passs/if    isinstance(  foo(), (  bar, baz )) : pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�scCs|jd�dS(Nsisinstance(x, (str, int))(R%(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s(R8R-R
R�RfRh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s		t	Test_dictcBsIeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Zd �Zd!�Zd"�Zd#�ZRS($tdictcCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�d}d}|j||�dS(Nsif   d. keys  (  )  : passs if   list(d. keys  (  ))  : passsif   d. items  (  )  : passs!if   list(d. items  (  ))  : passsif   d. iterkeys  ( )  : passsif   iter(d. keys  ( ))  : passs"[i for i in    d.  iterkeys(  )  ]s[i for i in    d.  keys(  )  ]sif   d. viewkeys  ( )  : passsif   d. keys  ( )  : passs"[i for i in    d.  viewkeys(  )  ](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�s$cCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d}|j||�dS(
Nsd.keys() # fooslist(d.keys()) # foosd.items()  # fooslist(d.items())  # foosd.iterkeys()  # foositer(d.keys())  # foos/[i for i in d.iterkeys() # foo
               ]s+[i for i in d.keys() # foo
               ]sd.viewitems()  # foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_trailing_comment�s$cCs]xVtjD]K}d|}|j|�d|}|j|�d|}|j|�q
WdS(Nss = %s(d.keys())ss = %s(d.values())ss = %s(d.items())(Rtconsuming_callsR%(RtwrapperRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s




cCs<d}d}|j||�d}d}|j||�dS(Nsd.keys()slist(d.keys())sa[0].foo().keys()slist(a[0].foo().keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_01�scCs d}d}|j||�dS(Ns	d.items()slist(d.items())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_02scCs d}d}|j||�dS(Ns
d.values()slist(d.values())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_03scCs d}d}|j||�dS(Nsd.iterkeys()siter(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_04
scCs d}d}|j||�dS(Ns
d.iteritems()siter(d.items())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_05scCs d}d}|j||�dS(Nsd.itervalues()siter(d.values())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_06scCsd}|j|�dS(Nslist(d.keys())(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_07scCsd}|j|�dS(Nssorted(d.keys())(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_08scCs d}d}|j||�dS(Nsiter(d.keys())siter(list(d.keys()))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_09!scCs d}d}|j||�dS(Ns
foo(d.keys())sfoo(list(d.keys()))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRL&scCs d}d}|j||�dS(Nsfor i in d.keys(): print is for i in list(d.keys()): print i(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRM+scCs d}d}|j||�dS(Nsfor i in d.iterkeys(): print isfor i in d.keys(): print i(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_120scCs d}d}|j||�dS(Ns[i for i in d.keys()]s for i in list(d.keys())](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_135scCs d}d}|j||�dS(Ns[i for i in d.iterkeys()]s[i for i in d.keys()](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_14:scCs d}d}|j||�dS(Ns(i for i in d.keys())s(i for i in list(d.keys()))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_15?scCs d}d}|j||�dS(Ns(i for i in d.iterkeys())s(i for i in d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_16DscCs d}d}|j||�dS(Nsiter(d.iterkeys())siter(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_17IscCs d}d}|j||�dS(Nslist(d.iterkeys())slist(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_18NscCs d}d}|j||�dS(Nssorted(d.iterkeys())ssorted(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_19SscCs d}d}|j||�dS(Nsfoo(d.iterkeys())sfoo(iter(d.keys()))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_20XscCs d}d}|j||�dS(Nsprint h.iterkeys().next()sprint iter(h.keys()).next()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_21]scCs d}d}|j||�dS(Nsprint h.keys()[0]sprint list(h.keys())[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_22bscCs d}d}|j||�dS(Nsprint list(h.iterkeys().next())s!print list(iter(h.keys()).next())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_23gscCs d}d}|j||�dS(Nsfor x in h.keys()[0]: print xs#for x in list(h.keys())[0]: print x(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_24lscCs d}d}|j||�dS(Nsd.viewkeys()sd.keys()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_25qscCs d}d}|j||�dS(Ns
d.viewitems()s	d.items()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_26vscCs d}d}|j||�dS(Nsd.viewvalues()s
d.values()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_27{scCs d}d}|j||�dS(Ns[i for i in d.viewkeys()]s[i for i in d.keys()](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Ns(i for i in d.viewkeys())s(i for i in d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Nsiter(d.viewkeys())siter(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Nslist(d.viewkeys())slist(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Nssorted(d.viewkeys())ssorted(d.keys())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s(!R8R-R
RfR�RhR�R�R�R�R�R�R�R�R�RLRMR�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��sH																																			tTest_xrangecBs_eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�ZRS(
txrangecCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsx =    xrange(  10  )sx =    range(  10  )sx = xrange(  1  ,  10   )sx = range(  1  ,  10   )sx = xrange(  0  ,  10 ,  2 )sx = range(  0  ,  10 ,  2 )(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�scCs d}d}|j||�dS(Nsx = xrange(10)s
x = range(10)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_single_arg�scCs d}d}|j||�dS(Nsx = xrange(1, 10)sx = range(1, 10)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_two_args�scCs d}d}|j||�dS(Nsx = xrange(0, 10, 2)sx = range(0, 10, 2)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_three_args�scCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�dS(Nsx = range(10, 3, 9)sx = list(range(10, 3, 9))sx = foo(range(10, 3, 9))sx = foo(list(range(10, 3, 9)))sx = range(10, 3, 9) + [4]sx = list(range(10, 3, 9)) + [4]sx = range(10)[::-1]sx = list(range(10))[::-1]sx = range(10)  [3]sx = list(range(10))  [3](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_wrap_in_list�scCs<d}d}|j||�d}d}|j||�dS(Nsfor i in xrange(10):
    j=isfor i in range(10):
    j=is[i for i in xrange(10)]s[i for i in range(10)](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_xrange_in_for�scCs|jd�|jd�dS(Nsfor i in range(10): passs[i for i in range(10)](R%(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_range_in_for�s
cCs|jd�dS(Nsx in range(10, 3, 9)(R%(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_in_contains_test�scCs)x"tjD]}|jd|�q
WdS(Nsa = %s(range(10))(RR�R%(Rtcall((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_in_consuming_context�s(R8R-R
RfR�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s	
								tTest_xrange_with_reducecBseZd�Zd�ZRS(cCs tt|�jddg�dS(NR�Rj(tsuperR�R(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�scCs d}d}|j||�dS(Nsreduce(x, xrange(5))s0from functools import reduce
reduce(x, range(5))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_double_transform�s(R8R-RR�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s	tTest_raw_inputcBsVeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
RS(	t	raw_inputcCs<d}d}|j||�d}d}|j||�dS(Nsx =    raw_input(   )sx =    input(   )sx = raw_input(   ''   )sx = input(   ''   )(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�scCs d}d}|j||�dS(Nsx = raw_input()sx = input()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Nsx = raw_input('')s
x = input('')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Nsx = raw_input('prompt')sx = input('prompt')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyREscCs d}d}|j||�dS(Nsx = raw_input(foo(a) + 6)sx = input(foo(a) + 6)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRFscCs d}d}|j||�dS(Nsx = raw_input(invite).split()sx = input(invite).split()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRGscCs d}d}|j||�dS(Ns x = raw_input(invite) . split ()sx = input(invite) . split ()(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRHscCs d}d}|j||�dS(Nsx = int(raw_input())sx = int(input())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRJs(R8R-R
RfRCRDRERFRGRHRJ(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s								tTest_funcattrscBs;eZdZdddddddgZd�Zd	�ZRS(
t	funcattrstclosuretdoctnametdefaultstcodetglobalsR�cCs`xY|jD]N}d|}d|}|j||�d|}d|}|j||�q
WdS(Ns	a.func_%ssa.__%s__sself.foo.func_%s.foo_barsself.foo.__%s__.foo_bar(tattrsR!(RtattrR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRg s



cCs]xV|jD]K}d|}|j|�d|}|j|�d|}|j|�q
WdS(Nsfoo(func_%s + 5)s
f(foo.__%s__)sf(foo.__%s__.foo)(R�R%(RR�RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh*s




(R8R-R
R�RgRh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s	
tTest_xreadlinescBs)eZdZd�Zd�Zd�ZRS(t
xreadlinescCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsfor x in f.xreadlines(): passsfor x in f: passs!for x in foo().xreadlines(): passsfor x in foo(): passs'for x in (5 + foo()).xreadlines(): passsfor x in (5 + foo()): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRU8scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsfoo(f.xreadlines + 5)sfoo(f.__iter__ + 5)sfoo(f().xreadlines + 5)sfoo(f().__iter__ + 5)sfoo((5 + f()).xreadlines + 5)sfoo((5 + f()).__iter__ + 5)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_attr_refEscCsPd}|j|�d}|j|�d}|j|�d}|j|�dS(Nsfor x in f.xreadlines(5): passs for x in f.xreadlines(k=5): passs$for x in f.xreadlines(*k, **v): passsfoo(xreadlines)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRhRs


(R8R-R
RUR�Rh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�5s	
	
tImportsFixerTestscBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCslxe|jj�D]T\}}d|}d|}|j||�d|}d|}|j||�qWdS(Ns	import %ssimport foo, %s, bar(tmodulestitemsR!(RtoldtnewR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_modulebs



cCs�x�|jj�D]x\}}d|}d|}|j||�d|}d|}|j||�d|}d|}|j||�qWdS(Nsfrom %s import foosfrom %s import foo, barsfrom %s import (yes, no)(R�R�R!(RR�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_fromls





cCslxe|jj�D]T\}}d|}d|}|j||�d|}d|}|j||�qWdS(Nsimport %s as foo_bar(R�R�R!(RR�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_module_aszs



cCsHxA|jj�D]0\}}d|}d|}|j||�qWdS(Nsfrom %s import foo as bar(R�R�R!(RR�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_from_as�s

cCsHxA|jj�D]0\}}d|}d|}|j||�qWdS(Nsfrom %s import *(R�R�R!(RR�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_star�s

cCsx�jj�D]�}}d||f}d||f}|j||�d||f}d||f}|j||�d|f}|j|�d|||f}d|||f}|j||�d||f}d||f}|j||�qWdS(NsG
                import %s
                foo(%s.bar)
                sJ
                from %s import x
                %s = 23
                sJ
                def f():
                    %s.method()
                sJ
                import %s
                %s.bar(%s.foo)
                s@
                import %s
                x.%s
                (R�R�R!R%(RR�R�R<R=RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_module_usage�s

(R8R-R�R�R�R�R�R(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�`s	
		
		tTest_importscBs0eZdZddlmZd�Zd�ZRS(timportsi(tMAPPINGcCs d}d}|j||�dS(Nsimport urlparse, cStringIOsimport urllib.parse, io(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multiple_imports�scCs d}d}|j||�dS(Nsv
            import copy_reg as bar, HTMLParser as foo, urlparse
            s = urlparse.spam(bar.foo())
            s~
            import copyreg as bar, html.parser as foo, urllib.parse
            s = urllib.parse.spam(bar.foo())
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multiple_imports_as�s(R8R-R
tfixes.fix_importsRR�RR(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s	t
Test_imports2cBseZdZddlmZRS(timports2i(R(R8R-R
tfixes.fix_imports2RR�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�stTest_imports_fixer_ordercBseZd�Zd�ZRS(cCsqtt|�jddg�ddlm}|j�|_ddlm}xd	D]}|||j|<qRWdS(
NRRi(Rtdbhashtdumbdbmtdbmtgdbm(RRR
R(R�R
RR	RtcopyR�R(Rtmapping2tmapping1tkey((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s
cCs+x$dD]}||_|jd�qWdS(NRRtimport(simportssimports2(R
R7(Rtfix((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt$test_after_local_imports_refactoring�s
	(R8R-RR(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR
�s	tTest_urllibcBs]eZdZddlmZd�Zd�Zd�Zd�Z	d�Z
d�Zd	�ZRS(
turllibi(RcCs`xY|jj�D]H\}}d|}ddjttd�|��}|j||�qWdS(Ns	import %ss, i(R�R�R#tmapRR!(RR�tchangesR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s
"c
Cslxe|jj�D]T\}}g}x�|D]�\}}xb|D]Z}|j|�d||f}d||f}|j||�d|}	|j|	�q<Wd|dj|�f}d|dj|�f}|j||�ddj|�}	|j|	�q)Wd|dj|�f}djg|D]%\}}d|dj|�f^q&�}|j||�qWdS(Nsfrom %s import %ssfrom foo import %ss, s
(R�R�tappendR!R%R#(
RR�Rtall_membersR�tmemberstmemberR<R=RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s&


	2cCs2x+|jD] }d|}|j|d�q
WdS(Nsimport %s as foos#This module is now multiple modules(R�R((RR�RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s
cCs�x�|jj�D]�\}}x�|D]�\}}xt|D]l}d||f}d||f}|j||�d|||f}d|||f}|j||�q6Wq#WqWdS(Nsfrom %s import %s as foo_barsfrom %s import %s as blah, %s(R�R�R!(RR�RR�RRR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s
cCs2x+|jD] }d|}|j|d�q
WdS(Nsfrom %s import *sCannot handle star imports(R�R((RR�RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR� s
cCs<d}d}|j||�d}d}|j||�dS(Ns6
def foo():
    from urllib import urlencode, urlopen
sZ
def foo():
    from urllib.parse import urlencode
    from urllib.request import urlopen
sB
def foo():
    other()
    from urllib import urlencode, urlopen
sf
def foo():
    other()
    from urllib.parse import urlencode
    from urllib.request import urlopen
(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_indented%sc	Cs�x�jj�D]�\}}x�|D]�\}}x�|D]�}djg|j|D]\}}|^qP�}d|||f}	d|||f}
|j|	|
�d|||||f}	d|||||f}
|j|	|
�q6Wq#WqWdS(Ns, s^
                        import %s
                        foo(%s.%s)
                        s`
                        import %s
                        %s.%s(%s.%s)
                        (R�R�R#R!(RR�RR�RRR5tmemst
new_importR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR@s
	&(
R8R-R
tfixes.fix_urllibRR�R�R�R�R�R�RR(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s						t
Test_inputcBsMeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(tinputcCs<d}d}|j||�d}d}|j||�dS(Nsx =   input(   )sx =   eval(input(   ))sx = input(   ''   )sx = eval(input(   ''   ))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf]scCs d}d}|j||�dS(Nsx = input()  #  foosx = eval(input())  #  foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�fscCs=d}|j|�d}|j|�d}|j|�dS(Nsx = eval(input())sx = eval(input(''))sx = eval(input(foo(5) + 9))(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRpks

cCs d}d}|j||�dS(Nsx = input()sx = eval(input())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRCuscCs d}d}|j||�dS(Ns
x = input('')sx = eval(input(''))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRDzscCs d}d}|j||�dS(Nsx = input('prompt')sx = eval(input('prompt'))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyREscCs d}d}|j||�dS(Nsx = input(foo(5) + 9)sx = eval(input(foo(5) + 9))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRF�s(
R8R-R
RfR�RpRCRDRERF(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR"Zs				
			tTest_tuple_paramscBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(ttuple_paramscCsd}|j|�dS(Nsdef foo(): pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRY�scCsd}|j|�dS(Nsdef foo(a, b, c): pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRZ�scCsd}|j|�dS(Nsdef foo(a=3, b=4, c=5): pass(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR[�scCs d}d}|j||�dS(Ns8
            def foo(((a, b), c)):
                x = 5sn
            def foo(xxx_todo_changeme):
                ((a, b), c) = xxx_todo_changeme
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Ns;
            def foo(((a, b), c), d):
                x = 5sq
            def foo(xxx_todo_changeme, d):
                ((a, b), c) = xxx_todo_changeme
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Ns@
            def foo(((a, b), c), d) -> e:
                x = 5sv
            def foo(xxx_todo_changeme, d) -> e:
                ((a, b), c) = xxx_todo_changeme
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Ns/
            def foo(((a, b), c)): x = 5; y = 7sV
            def foo(xxx_todo_changeme): ((a, b), c) = xxx_todo_changeme; x = 5; y = 7(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_semicolon�scCs d}d}|j||�dS(NsE
            def foo(((a, b), c), d, e=5) -> z:
                x = 5s{
            def foo(xxx_todo_changeme, d, e=5) -> z:
                ((a, b), c) = xxx_todo_changeme
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_keywords�scCs d}d}|j||�dS(NsR
            def foo(((a, b), c), d, *vargs, **kwargs) -> z:
                x = 5s�
            def foo(xxx_todo_changeme, d, *vargs, **kwargs) -> z:
                ((a, b), c) = xxx_todo_changeme
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_varargs�scCs d}d}|j||�dS(NsH
            def foo(((a, b), c), (d, e, f)) -> z:
                x = 5s�
            def foo(xxx_todo_changeme, xxx_todo_changeme1) -> z:
                ((a, b), c) = xxx_todo_changeme
                (d, e, f) = xxx_todo_changeme1
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multi_1�scCs d}d}|j||�dS(NsQ
            def foo(x, ((a, b), c), d, (e, f, g), y) -> z:
                x = 5s�
            def foo(x, xxx_todo_changeme, d, xxx_todo_changeme1, y) -> z:
                ((a, b), c) = xxx_todo_changeme
                (e, f, g) = xxx_todo_changeme1
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multi_2�scCs d}d}|j||�dS(Nsj
            def foo(((a, b), c), (d, e, f)) -> z:
                "foo foo foo foo"
                x = 5s�
            def foo(xxx_todo_changeme, xxx_todo_changeme1) -> z:
                "foo foo foo foo"
                ((a, b), c) = xxx_todo_changeme
                (d, e, f) = xxx_todo_changeme1
                x = 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_docstring�scCsd}|j|�dS(Nslambda x: x + 5(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_no_change�scCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(Nslambda (x): x + 5slambda x: x + 5slambda(x): x + 5slambda ((((x)))): x + 5slambda((((x)))): x + 5(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_parens_single_argscCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(Nslambda (x, y): x + f(y)slambda x_y: x_y[0] + f(x_y[1])slambda(x, y): x + f(y)slambda (((x, y))): x + f(y)slambda(((x, y))): x + f(y)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_simplescCs<d}d}|j||�d}d}|j||�dS(Nslambda (x,): x + f(x)slambda x1: x1[0] + f(x1[0])slambda (((x,))): x + f(x)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_one_tuple#scCs d}d}|j||�dS(Nslambda (x, y): x + x + f(x) + xs0lambda x_y: x_y[0] + x_y[0] + f(x_y[0]) + x_y[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_simple_multi_use,scCs d}d}|j||�dS(Nslambda (x, y): y + xslambda x_y: x_y[1] + x_y[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_simple_reverse1scCs<d}d}|j||�d}d}|j||�dS(Nslambda (x, (y, z)): x + y + zs2lambda x_y_z: x_y_z[0] + x_y_z[1][0] + x_y_z[1][1]s!lambda (((x, (y, z)))): x + y + z(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_nested6scCs d}d}|j||�dS(Ns lambda (x, (y, z)): x + y + f(y)s5lambda x_y_z: x_y_z[0] + x_y_z[1][0] + f(x_y_z[1][0])(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_lambda_nested_multi_use?s(R8R-R
RYRZR[RCRDRER&R'R(R)R*R+R,R-R.R/R0R1R2R3(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR$�s*																					tTest_methodattrscBs/eZdZdddgZd�Zd�ZRS(tmethodattrstfuncRtclasscCs�x�|jD]x}d|}|dkr/d}n
d|}|j||�d|}|dkrhd}n
d|}|j||�q
WdS(Nsa.im_%sR7sa.__self__.__class__sa.__%s__sself.foo.im_%s.foo_bars#self.foo.__self__.__class__.foo_barsself.foo.__%s__.foo_bar(R�R!(RR�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRgIs
	

	
cCs]xV|jD]K}d|}|j|�d|}|j|�d|}|j|�q
WdS(Nsfoo(im_%s + 5)s
f(foo.__%s__)sf(foo.__%s__.foo)(R�R%(RR�RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRhYs




(R8R-R
R�RgRh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR4Ds	t	Test_nextcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'�Z)d(�Z*d)�Z+d*�Z,d+�Z-d,�Z.d-�Z/RS(.tnextcCs d}d}|j||�dS(Ns	it.next()snext(it)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRCgscCs d}d}|j||�dS(Nsa.b.c.d.next()s
next(a.b.c.d)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRDlscCs d}d}|j||�dS(Ns(a + b).next()s
next((a + b))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyREqscCs d}d}|j||�dS(Ns
a().next()s	next(a())(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRFvscCs d}d}|j||�dS(Nsa().next() + bs
next(a()) + b(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRG{scCs d}d}|j||�dS(Nsc(      a().next() + b)sc(      next(a()) + b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRH�scCs d}d}|j||�dS(NsU
            for a in b:
                foo(a)
                a.next()
            sT
            for a in b:
                foo(a)
                next(a)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_1�scCs d}d}|j||�dS(Nsq
            for a in b:
                foo(a) # abc
                # def
                a.next()
            sp
            for a in b:
                foo(a) # abc
                # def
                next(a)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_2�scCs&d}d}|j||dt�dS(Nsj
            next = 5
            for a in b:
                foo(a)
                a.next()
            sn
            next = 5
            for a in b:
                foo(a)
                a.__next__()
            R (R!R'(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_3�scCs&d}d}|j||dt�dS(Ns�
            next = 5
            for a in b:
                foo(a) # abc
                # def
                a.next()
            s�
            next = 5
            for a in b:
                foo(a) # abc
                # def
                a.__next__()
            R (R!R'(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_4�scCs&d}d}|j||dt�dS(Nsz
            next = 5
            for a in b:
                foo(foo(a), # abc
                    a.next())
            s~
            next = 5
            for a in b:
                foo(foo(a), # abc
                    a.__next__())
            R (R!R'(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_5�scCs d}d}|j||�dS(Nse
            for a in b:
                foo(foo(a), # abc
                    a.next())
            sd
            for a in b:
                foo(foo(a), # abc
                    next(a))
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix_preservation_6�scCs d}d}|j||�dS(Ns[
            class A:
                def next(self):
                    pass
            s_
            class A:
                def __next__(self):
                    pass
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_method_1�scCs d}d}|j||�dS(Nsc
            class A(object):
                def next(self):
                    pass
            sg
            class A(object):
                def __next__(self):
                    pass
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_method_2�scCs d}d}|j||�dS(NsX
            class A:
                def next(x):
                    pass
            s\
            class A:
                def __next__(x):
                    pass
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_method_3�scCs d}d}|j||�dS(Ns�
            class A:
                def __init__(self, foo):
                    self.foo = foo

                def next(self):
                    pass

                def __iter__(self):
                    return self
            s�
            class A:
                def __init__(self, foo):
                    self.foo = foo

                def __next__(self):
                    pass

                def __iter__(self):
                    return self
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_method_4	scCsd}|j|�dS(Nsa
            class A:
                def next(self, a, b):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_method_unchanged	scCsd}|j|d�dS(Nsy
            next = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_assign_simple%	scCsd}|j|d�dS(Ns~
            (next, a) = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_assign_tuple_1/	scCsd}|j|d�dS(Ns�
            (a, (b, (next, c)), a) = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_assign_tuple_29	scCsd}|j|d�dS(Ns~
            [next, a] = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_assign_list_1C	scCsd}|j|d�dS(Ns�
            [a, [b, [next, c]], a] = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_assign_list_2M	scCsd}|j|d�dS(Ns�
            def foo():
                __builtin__.next = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_builtin_assignW	scCsd}|j|d�dS(Ns�
            def foo():
                (a, __builtin__.next) = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_builtin_assign_in_tupleb	scCsd}|j|d�dS(Ns�
            def foo():
                [a, __builtin__.next] = foo

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_builtin_assign_in_listm	scCsd}|j|�dS(Ns�
            def foo():
                A.next = foo

            class A:
                def next(self, a, b):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_assign_to_nextx	scCsd}|j|�dS(Ns�
            def foo():
                (a, A.next) = foo

            class A:
                def next(self, a, b):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_assign_to_next_in_tuple�scCsd}|j|�dS(Ns�
            def foo():
                [a, A.next] = foo

            class A:
                def next(self, a, b):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_assign_to_next_in_list�scCsd}|j|d�dS(Ns�
            import foo.bar as next

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_1�scCsd}|j|d�dS(Ns�
            import bar, bar.foo as next

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_2�scCsd}|j|d�dS(Ns�
            import bar, bar.foo as next, baz

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_3�scCsd}|j|d�dS(Ns�
            from x import next

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_from_1�scCsd}|j|d�dS(Ns�
            from x.a import next

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_from_2�scCsd}|j|d�dS(Ns�
            from x import a, next, b

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_from_3�scCsd}|j|d�dS(Ns�
            from x.a import a, next, b

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_import_from_4�scCsd}|j|d�dS(Ns�
            def next(a):
                pass

            class A:
                def next(self, a, b):
                    pass
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_funcdef_1�scCs#d}d}|j||d�dS(Ns�
            def next(a):
                pass

            class A:
                def next(self):
                    pass

            it.next()
            s�
            def next(a):
                pass

            class A:
                def __next__(self):
                    pass

            it.__next__()
            s)Calls to builtin next() possibly shadowed(R&(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_funcdef_2�s

cCsd}|j|d�dS(NsW
            def f():
                global next
                next = 5
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_global_1
scCsd}|j|d�dS(Ns]
            def f():
                global a, next, b
                next = 5
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_global_2	
scCsd}|j|d�dS(Nse
            for next in it():
                pass

            b = 5
            c = 6
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_for_simple
scCsd}|j|d�dS(Nsh
            for next, b in it():
                pass

            b = 5
            c = 6
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_for_tuple_1
scCsd}|j|d�dS(Nsp
            for a, (next, c), b in it():
                pass

            b = 5
            c = 6
            s)Calls to builtin next() possibly shadowed(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_shadowing_for_tuple_2%
scCs d}d}|j||�dS(Nsgnext = g.nextsgnext = g.__next__(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_noncall_access_1/
scCs d}d}|j||�dS(Ns
f(g.next + 5)sf(g.__next__ + 5)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_noncall_access_24
scCs d}d}|j||�dS(Nsf(g().next + 5)sf(g().__next__ + 5)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_noncall_access_39
s(0R8R-R
RCRDRERFRGRHR:R;R<R=R>R?R@RARBRCRDRERFRGRHRIRJRKRLRMRNRORPRQRRRSRTRURVRWRXRYRZR[R\R]R^R_R`(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR8ds\							
					
	
	
	
			
	
	
	
	
							
	
	
	
	
	
	
					
	
	
		tTest_nonzerocBs;eZdZd�Zd�Zd�Zd�Zd�ZRS(tnonzerocCs d}d}|j||�dS(Nsb
            class A:
                def __nonzero__(self):
                    pass
            s_
            class A:
                def __bool__(self):
                    pass
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRCA
scCs d}d}|j||�dS(Nsj
            class A(object):
                def __nonzero__(self):
                    pass
            sg
            class A(object):
                def __bool__(self):
                    pass
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRDN
scCsd}|j|�dS(Nsg
            class A(object):
                def __bool__(self):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRY[
scCsd}|j|�dS(Nsm
            class A(object):
                def __nonzero__(self, a):
                    pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRZc
scCsd}|j|�dS(NsE
            def __nonzero__(self):
                pass
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_funck
s(R8R-R
RCRDRYRZRc(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRa>
s	
	
		tTest_numliteralscBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�ZRS(tnumliteralscCs d}d}|j||�dS(Nt0755t0o755(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_octal_1u
scCs d}d}|j||�dS(Nsa = 12Lsa = 12(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_long_int_1z
scCs d}d}|j||�dS(Nsa = 12lsa = 12(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_long_int_2
scCs d}d}|j||�dS(Ns	b = 0x12lsb = 0x12(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_long_hex�scCs<d}d}|j||�d}d}|j||�dS(Nsb =   0x12Ls
b =   0x12sb = 0755 # spamsb = 0o755 # spam(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_comments_and_spacing�scCsd}|j|�dS(Nt5(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_int�scCsd}|j|�dS(Ns5.0(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_float�scCsd}|j|�dS(NRg(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_octal�scCsd}|j|�dS(Nt0xABC(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_hex�scCsd}|j|�dS(Ns5.0e10(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_exp�scCsd}|j|�dS(Ns5 + 4j(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_complex_int�scCsd}|j|�dS(Ns
5.4 + 4.9j(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_complex_float�scCs*d}|j|�d}|j|�dS(Nt4js4.4j(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_complex_bare�s
(R8R-R
RhRiRjRkRlRnRoRpRrRsRtRuRw(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRdr
s													tTest_renamescBs?eZdZidd6Zd�Zd�Zd�Zd�ZRS(	trenamestmaxinttmaxsizetsyscCsqxj|jj�D]Y\}\}}d||f}d||f}|j||�d|}|j|�qWdS(Nsfrom %s import %ssfrom foo import %s(R�R�R!R%(RtmodR�R�R<R=RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s"
cCsZxS|jj�D]B\}\}}d||f}d||f}|j||�qWdS(Nsfrom %s import %s as foo_bar(R�R�R!(RR}R�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s"cCsfx_|jj�D]N\}\}}d||||f}d||||f}|j||�qWdS(NsJ
                import %s
                foo(%s, %s.%s)
                (R�R�R!(RR}R�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s"cCsfx_|jj�D]N\}\}}d||||f}d||||f}|j||�qWdS(NsO
                from %s import %s
                foo(%s, %s)
                (R�R�R!(RR}R�R�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytXXX_test_from_import_usage�s"(smaxintsmaxsize(R8R-R
R�R�R�RR~(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRx�s
				tTest_unicodecBsDeZdZd�Zd�Zd�Zd�Zd�Zd�ZRS(RcCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsunicode( x)sstr( x)s unicode(x )s str(x )s u'h's 'h'(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_whitespace�scCs d}d}|j||�dS(Nsunicode(x, y, z)sstr(x, y, z)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unicode_call�scCs d}d}|j||�dS(Nsunichr(u'h')schr('h')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unichr�scCs d}d}|j||�dS(Nsu"x"s"x"(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unicode_literal_1�scCs d}d}|j||�dS(Nsur'x'sr'x'(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unicode_literal_2scCs d}d}|j||�dS(Ns
UR'''x''' s	R'''x''' (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unicode_literal_3s(	R8R-R
R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s	
				t
Test_callablecBs2eZdZd�Zd�Zd�Zd�ZRS(tcallablecCs<d}d}|j||�d}d}|j||�dS(Nscallable(    x)s:import collections
isinstance(    x, collections.Callable)sif     callable(x): passsCimport collections
if     isinstance(x, collections.Callable): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRfscCs d}d}|j||�dS(Nscallable(x)s6import collections
isinstance(x, collections.Callable)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_callable_callscCs�dd}dd}|j||�dd}|j||�dd}dd}|j||�dd}dd}|j||�d	d}d
d}|j||�dS(Ns!
def spam(foo):
    callable(foo)isL
import collections
def spam(foo):
    isinstance(foo, collections.Callable)s4
import collections
def spam(foo):
    callable(foo)s;
from collections import *
def spam(foo):
    callable(foo)sf
from collections import *
import collections
def spam(foo):
    isinstance(foo, collections.Callable)s;
do_stuff()
do_some_other_stuff()
assert callable(do_stuff)sf
import collections
do_stuff()
do_some_other_stuff()
assert isinstance(do_stuff, collections.Callable)s�
if isinstance(do_stuff, Callable):
    assert callable(do_stuff)
    do_stuff(do_stuff)
    if not callable(do_stuff):
        exit(1)
    else:
        assert callable(do_stuff)
else:
    assert not callable(do_stuff)sN
import collections
if isinstance(do_stuff, Callable):
    assert isinstance(do_stuff, collections.Callable)
    do_stuff(do_stuff)
    if not isinstance(do_stuff, collections.Callable):
        exit(1)
    else:
        assert isinstance(do_stuff, collections.Callable)
else:
    assert not isinstance(do_stuff, collections.Callable)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_global_imports








cCsPd}|j|�d}|j|�d}|j|�d}|j|�dS(Nscallable(*x)scallable(x, y)scallable(x, kw=y)s
callable()(R%(RR=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_callable_should_not_change[s


(R8R-R
RfR�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s
	
		>tTest_filtercBs2eZdZd�Zd�Zd�Zd�ZRS(tfiltercCs<d}d}|j||�d}d}|j||�dS(Ns#x =   filter(    foo,     'abc'   )s)x =   list(filter(    foo,     'abc'   ))sx =   filter(  None , 'abc'  )s x =   [_f for _f in 'abc' if _f](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRfkscCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(Nsx = filter(None, 'abc')sx = [_f for _f in 'abc' if _f]sx = len(filter(f, 'abc'))sx = len(list(filter(f, 'abc')))s)x = filter(lambda x: x%2 == 0, range(10))s&x = [x for x in range(10) if x%2 == 0]s+x = filter(lambda (x): x%2 == 0, range(10))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_filter_basictscCsmd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d	}|j|�d
}|j|�d}|j|�d}|j|�d
}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nsb.join(filter(f, 'abc'))s#(a + foo(5)).join(filter(f, 'abc'))siter(filter(f, 'abc'))slist(filter(f, 'abc'))slist(filter(f, 'abc'))[0]sset(filter(f, 'abc'))sset(filter(f, 'abc')).pop()stuple(filter(f, 'abc'))sany(filter(f, 'abc'))sall(filter(f, 'abc'))ssum(filter(f, 'abc'))ssorted(filter(f, 'abc'))s"sorted(filter(f, 'abc'), key=blah)s%sorted(filter(f, 'abc'), key=blah)[0]senumerate(filter(f, 'abc'))s$enumerate(filter(f, 'abc'), start=1)sfor i in filter(f, 'abc'): passs[x for x in filter(f, 'abc')]s(x for x in filter(f, 'abc'))(R%(RR=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_filter_nochange�sL

















cCsFd}|j|�d}d}|j||�d}|j|�dS(Ns:from future_builtins import spam, filter; filter(f, 'ham')s6from future_builtins import spam; x = filter(f, 'abc')s<from future_builtins import spam; x = list(filter(f, 'abc'))s/from future_builtins import *; filter(f, 'ham')(R%R!(RR=R<((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_future_builtins�s
(R8R-R
RfR�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�hs
				(tTest_mapcBsMeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(RcCs1|jd||�tt|�j||�dS(Ns!from future_builtins import map; (R%R�R�R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR!�scCs d}d}|j||�dS(Nsx =    map(   f,    'abc'   )s#x =    list(map(   f,    'abc'   ))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRf�scCs d}d}|j||�dS(Nsx = map(f, 'abc')   #   foos!x = list(map(f, 'abc'))   #   foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCsd}|j|d�dS(Nsx = map(None, a, b, c)s5cannot convert map(None, ...) with multiple arguments(R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt!test_None_with_multiple_arguments�scCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d}|j||�d
}d}|j||d�dS(
Nsx = map(f, 'abc')sx = list(map(f, 'abc'))sx = len(map(f, 'abc', 'def'))s#x = len(list(map(f, 'abc', 'def')))sx = map(None, 'abc')sx = list('abc')s x = map(lambda x: x+1, range(4))sx = [x+1 for x in range(4)]s"x = map(lambda (x): x+1, range(4))sG
            foo()
            # foo
            map(f, x)
            sM
            foo()
            # foo
            list(map(f, x))
            sYou should use a for loop here(R!R&(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_map_basic�s$cCsmd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d	}|j|�d
}|j|�d}|j|�d}|j|�d
}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nsb.join(map(f, 'abc'))s (a + foo(5)).join(map(f, 'abc'))siter(map(f, 'abc'))slist(map(f, 'abc'))slist(map(f, 'abc'))[0]sset(map(f, 'abc'))sset(map(f, 'abc')).pop()stuple(map(f, 'abc'))sany(map(f, 'abc'))sall(map(f, 'abc'))ssum(map(f, 'abc'))ssorted(map(f, 'abc'))ssorted(map(f, 'abc'), key=blah)s"sorted(map(f, 'abc'), key=blah)[0]senumerate(map(f, 'abc'))s!enumerate(map(f, 'abc'), start=1)sfor i in map(f, 'abc'): passs[x for x in map(f, 'abc')]s(x for x in map(f, 'abc'))(R%(RR=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_map_nochange�sL

















cCsFd}|j|�d}d}|j||�d}|j|�dS(Ns:from future_builtins import spam, map, eggs; map(f, 'ham')s9from future_builtins import spam, eggs; x = map(f, 'abc')s?from future_builtins import spam, eggs; x = list(map(f, 'abc'))s,from future_builtins import *; map(f, 'ham')(R%R!(RR=R<((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�#s
(
R8R-R
R!RfR�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s					'	(tTest_zipcBs2eZdZd�Zd�Zd�Zd�ZRS(tzipcCs1|jd||�tt|�j||�dS(Ns!from future_builtins import zip; (R%R�R�R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR!1scCs<d}d}|j||�d}d}|j||�dS(Nsx = zip(a, b, c)sx = list(zip(a, b, c))sx = len(zip(a, b))sx = len(list(zip(a, b)))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_zip_basic5scCsmd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d	}|j|�d
}|j|�d}|j|�d}|j|�d
}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nsb.join(zip(a, b))s(a + foo(5)).join(zip(a, b))siter(zip(a, b))slist(zip(a, b))slist(zip(a, b))[0]sset(zip(a, b))sset(zip(a, b)).pop()stuple(zip(a, b))sany(zip(a, b))sall(zip(a, b))ssum(zip(a, b))ssorted(zip(a, b))ssorted(zip(a, b), key=blah)ssorted(zip(a, b), key=blah)[0]senumerate(zip(a, b))senumerate(zip(a, b), start=1)sfor i in zip(a, b): passs[x for x in zip(a, b)]s(x for x in zip(a, b))(R%(RR=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_zip_nochange>sL

















cCsFd}|j|�d}d}|j||�d}|j|�dS(Ns6from future_builtins import spam, zip, eggs; zip(a, b)s5from future_builtins import spam, eggs; x = zip(a, b)s;from future_builtins import spam, eggs; x = list(zip(a, b))s(from future_builtins import *; zip(a, b)(R%R!(RR=R<((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�fs
(R8R-R
R!R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�.s
				(tTest_standarderrorcBseZdZd�ZRS(t
standarderrorcCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsx =    StandardError()sx =    Exception()sx = StandardError(a, b, c)sx = Exception(a, b, c)sf(2 + StandardError(a, b, c))sf(2 + Exception(a, b, c))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRgts(R8R-R
Rg(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�qst
Test_typescBseZdZd�ZRS(ttypescCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d}|j||�d
}d}|j||�dS(Nstypes.StringTypetbytesstypes.DictTypeR�stypes . IntTypetintstypes.ListTypetliststypes.LongTypestypes.NoneTypes
type(None)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_basic_types_convert�s$(R8R-R
R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��stTest_idiomscBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�ZRS(tidiomscCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nswhile 1: foo()swhile True: foo()swhile   1: foo()swhile   True: foo()s8
            while 1:
                foo()
            s;
            while True:
                foo()
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_while�scCsPd}|j|�d}|j|�d}|j|�d}|j|�dS(Nswhile 11: foo()swhile 0: foo()swhile foo(): foo()swhile []: foo()(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_while_unchanged�s


cCs<d}d}|j||�d}d}|j||�dS(Nstype(x) == Tsisinstance(x, T)sif   type(x) == T: passsif   isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_eq_simple�scCs<d}d}|j||�d}d}|j||�dS(NsT == type(x)sisinstance(x, T)sif   T == type(x): passsif   isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_eq_reverse�scCs<d}d}|j||�d}d}|j||�dS(Nstype(x+y) == d.get('T')sisinstance(x+y, d.get('T'))stype(   x  +  y) == d.get('T')sisinstance(x  +  y, d.get('T'))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_eq_expression�scCs<d}d}|j||�d}d}|j||�dS(Nstype(x) is Tsisinstance(x, T)sif   type(x) is T: passsif   isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_simple�scCs<d}d}|j||�d}d}|j||�dS(NsT is type(x)sisinstance(x, T)sif   T is type(x): passsif   isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_reverse�scCs<d}d}|j||�d}d}|j||�dS(Nstype(x+y) is d.get('T')sisinstance(x+y, d.get('T'))stype(   x  +  y) is d.get('T')sisinstance(x  +  y, d.get('T'))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_expression�scCs<d}d}|j||�d}d}|j||�dS(Nstype(x) is not Tsnot isinstance(x, T)sif   type(x) is not T: passsif   not isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_not_simple�scCs<d}d}|j||�d}d}|j||�dS(NsT is not type(x)snot isinstance(x, T)sif   T is not type(x): passsif   not isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_not_reverse�scCs<d}d}|j||�d}d}|j||�dS(Nstype(x+y) is not d.get('T')snot isinstance(x+y, d.get('T'))s"type(   x  +  y) is not d.get('T')s#not isinstance(x  +  y, d.get('T'))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_is_not_expression
scCs<d}d}|j||�d}d}|j||�dS(Nstype(x) != Tsnot isinstance(x, T)sif   type(x) != T: passsif   not isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_ne_simple
scCs<d}d}|j||�d}d}|j||�dS(NsT != type(x)snot isinstance(x, T)sif   T != type(x): passsif   not isinstance(x, T): pass(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_ne_reverse
scCs<d}d}|j||�d}d}|j||�dS(Nstype(x+y) != d.get('T')snot isinstance(x+y, d.get('T'))stype(   x  +  y) != d.get('T')s#not isinstance(x  +  y, d.get('T'))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_ne_expression#
scCsd}|j|�dS(Nstype(x).__name__(R%(RR=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_type_unchanged,
scCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�d}d}|j||�d
}d}|j||�d}d}|j||�dS(NsM
            v = list(t)
            v.sort()
            foo(v)
            s:
            v = sorted(t)
            foo(v)
            sV
            v = list(foo(b) + d)
            v.sort()
            foo(v)
            sC
            v = sorted(foo(b) + d)
            foo(v)
            sn
            while x:
                v = list(t)
                v.sort()
                foo(v)
            sW
            while x:
                v = sorted(t)
                foo(v)
            s_
            v = list(t)
            # foo
            v.sort()
            foo(v)
            sL
            v = sorted(t)
            # foo
            foo(v)
            sP
            v = list(   t)
            v.sort()
            foo(v)
            s=
            v = sorted(   t)
            foo(v)
            sl
            try:
                m = list(s)
                m.sort()
            except: pass
            sU
            try:
                m = sorted(s)
            except: pass
            s�
            try:
                m = list(s)
                # foo
                m.sort()
            except: pass
            sk
            try:
                m = sorted(s)
                # foo
            except: pass
            sI
            m = list(s)
            # more comments
            m.sort()s6
            m = sorted(s)
            # more comments(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_sort_list_call0
s0cCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�d}d}|j||�d
}d}|j||�dS(NsG
            v = t
            v.sort()
            foo(v)
            s:
            v = sorted(t)
            foo(v)
            sL
            v = foo(b)
            v.sort()
            foo(v)
            s?
            v = sorted(foo(b))
            foo(v)
            sN
            v = b.keys()
            v.sort()
            foo(v)
            sA
            v = sorted(b.keys())
            foo(v)
            sP
            v = foo(b) + d
            v.sort()
            foo(v)
            sC
            v = sorted(foo(b) + d)
            foo(v)
            sh
            while x:
                v = t
                v.sort()
                foo(v)
            sW
            while x:
                v = sorted(t)
                foo(v)
            sY
            v = t
            # foo
            v.sort()
            foo(v)
            sL
            v = sorted(t)
            # foo
            foo(v)
            sI
            v =   t
            v.sort()
            foo(v)
            s<
            v =   sorted(t)
            foo(v)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_sort_simple_expr�s*cCs*d}|j|�d}|j|�dS(NsM
            v = list(t)
            w.sort()
            foo(w)
            sN
            v = list(t)
            v.sort(u)
            foo(v)
            (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_sort_unchanged�s
(R8R-R
R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s&		
																										d	RtTest_basestringcBseZdZd�ZRS(t
basestringcCs d}d}|j||�dS(Nsisinstance(x, basestring)sisinstance(x, str)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_basestring�s(R8R-R
R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��stTest_buffercBs eZdZd�Zd�ZRS(tbuffercCs d}d}|j||�dS(Ns
x = buffer(y)sx = memoryview(y)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bufferscCs d}d}|j||�dS(Nsbuffer(y)[4:5]smemoryview(y)[4:5](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_slicings(R8R-R
R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s	tTest_futurecBs eZdZd�Zd�ZRS(tfuturecCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsfrom __future__ import bracesR"s'# comment
from __future__ import bracess
# comment
s'from __future__ import braces
# comments

# comment(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_future
scCs|jd�dS(NRo(R7(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_run_orders(R8R-R
R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�
s	
tTest_itertoolscBsVeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
RS(	t	itertoolscCsRxKdD]C}x:dD]2}||d|}||}|j||�qWqWdS(	Ns
itertools.R"RR�R�ti(s
itertools.R"(smapsfilterszip(R!(RRRR�tfR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytcheckall s



cCs d}d}|j||�dS(Nsitertools.izip(a, b)s	zip(a, b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_0*scCs d}d}|j||�dS(Ns%s(f, a)(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC1scCs<d}d}|j||�d}d}|j||�dS(Nsitertools.ifilterfalse(a, b)sitertools.filterfalse(a, b)sitertools.izip_longest(a, b)sitertools.zip_longest(a, b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_qualified6scCs<d}d}|j||�d}d}|j||�dS(Nsifilterfalse(a, b)sfilterfalse(a, b)sizip_longest(a, b)szip_longest(a, b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD?scCs d}d}|j||�dS(Ns    %s(f, a)(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRbHscCs<d}d}|j||�d}d}|j||�dS(Ns     itertools.ifilterfalse(a, b)s    itertools.filterfalse(a, b)s     itertools.izip_longest(a, b)s    itertools.zip_longest(a, b)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRcMscCs|jddd�dS(NRR�R�(R7(R((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�Vs(R8R-R
R�R�RCR�RDRbRcR�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s	
									tTest_itertools_importscBsMeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(titertools_importscCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Ns%from itertools import imap, izip, foosfrom itertools import foos*from itertools import bar, imap, izip, foosfrom itertools import bar, foos'from itertools import chain, imap, izipsfrom itertools import chain(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_reduced]scCs d}d}|j||�dS(Ns%#foo
from itertools import imap, izips#foo
(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
test_commentsjscCs<d}d}|j||�d}d}|j||�dS(Ns from itertools import imap, izipR"sfrom itertools import izip(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_noneoscCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d}|j|�dS(Ns-from itertools import izip, bar as bang, imaps!from itertools import bar as bangs-from itertools import izip as _zip, imap, barsfrom itertools import bars"from itertools import imap as _mapR"s0from itertools import imap as _map, izip as _zip(R!R%(RR<R=RX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_asxscCs�x�d	D]�}d|f}d|f}|j||�d|f}d|f}|j||�d|f}d|f}|j||�qWdS(
Ntfilterfalsetzip_longestsfrom itertools import i%ssfrom itertools import %ss$from itertools import imap, i%s, foosfrom itertools import %s, foos#from itertools import bar, i%s, foos"from itertools import bar, %s, foo(R�R�(R!(RR�R<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_ifilter_and_zip_longest�s






cCsd}|j|�dS(Nsfrom itertools import *(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_star�scCsd}|j|�dS(Nsfrom itertools import foo(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s(
R8R-R
R�R�R�R�R�R�Rh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�Zs	
						tTest_importcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(Rcs]tt��j�g�_t��_t�_�fd�}ddlm	}||_
dS(Ncs&�jj|��jp%|�jkS(N(t
files_checkedRt
always_existst
present_files(R�(R(s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytfake_exists�si�(t
fix_import(R�R�RR�tsetR�R'R�t
lib2to3.fixesR�texists(RR�R�((Rs//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s		cCs#ddlm}tjj|_dS(Ni�(R�(R�R�tostpathR�(RR�((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttearDown�scCsEt|_tt|�j||�t|_tt|�j|�dS(N(R'R�R�R�R!R9R%(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt
check_both�s		csd�}t|_tdg�|_dtjjddddf}|d�d	|d
�f}x�|D]��g|_�|_|j	d�tjj
��r�tjj
��d�nd
�t�fd�|D��}|jd�|jt|j�|�qdWdS(NcSstjjj|jd��S(Nt/(R�R�tpathsepR#tsplit(R�((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pytp�ss__init__.pys.pys.pycs.sos.sls.pyds
/spam/eggs.pysni.pys../../shrubbery.pys
import jams/jamtjamc3s|]}�|VqdS(N((t.0text(R�(s//sys/lib/python2.7/lib2to3/tests/test_fixers.pys	<genexpr>�s(
R9R�R�R�R�R�tsepR�R
R%tdirnametaddR(RR�texpected_extensionst
names_to_testtexpected_checks((R�s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_files_checked�s		
		

cCs2d}t|_tdg�|_|j|�dS(Ns
import barsbar.py(R9R�R�R�R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_not_in_package�s	cCs5d}t|_tddg�|_|j|�dS(Ns1from __future__ import absolute_import
import bars__init__.pysbar.py(R9R�R�R�R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt!test_with_absolute_import_enabled�s	cCs>d}d}t|_tddg�|_|j||�dS(Ns
import barsfrom . import bars__init__.pysbar.py(R9R�R�R�R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_in_package�s
	cCsHd}d}t|_tddtjjg�|_|j||�dS(Ns
import barsfrom . import bars__init__.pytbar(R9R�R�R�R�R�R�R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_import_from_package�s
	cCsd}|j|�dS(Nsfrom . import bar(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_already_relative_import�scCs d}d}|j||�dS(Nsimport bar # Foosfrom . import bar # Foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_comments_and_indent�scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsfrom foo import bar, bazsfrom .foo import bar, bazsfrom foo import barsfrom .foo import barsfrom foo import (bar, baz)sfrom .foo import (bar, baz)(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_from�scCs d}d}|j||�dS(Nsfrom green.eggs import hamsfrom .green.eggs import ham(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_dotted_fromscCs d}d}|j||�dS(Ns"from green.eggs import ham as spams#from .green.eggs import ham as spam(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_from_asscCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(	Ns
import foosfrom . import foosimport foo, barsfrom . import foo, barsimport foo, bar, xsfrom . import foo, bar, xsimport x, y, zsfrom . import x, y, z(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_importscCs<d}d}|j||�d}d}|j||�dS(Nsimport foo as xsfrom . import foo as xsimport a as b, b as c, c as ds$from . import a as b, b as c, c as d(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�"scCs8t|_tddg�|_d}|j|d�dS(Nsfoo.pys__init__.pysimport foo, bars#absolute and local imports together(R9R�R�R�R((RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_local_and_absolute+s	cCs d}d}|j||�dS(Nsimport foo.barsfrom . import foo.bar(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_dotted_import2scCs d}d}|j||�dS(Nsimport foo.bar as bangsfrom . import foo.bar as bang(R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_dotted_import_as7scCs d}d}|j||�dS(Ns1
        # prefix
        import foo.bar
        s8
        # prefix
        from . import foo.bar
        (R�(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_prefix<s(R8R-R
RR�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s(											
								tTest_set_literalcBs;eZdZd�Zd�Zd�Zd�Zd�ZRS(tset_literalcCs�d}d}|j||�d}d}|j||�d}d}|j||�d}|j||�d}d}|j||�d	}|j||�d
}d}|j||�d}d
}|j||�d}d}|j||�dS(Nsset([1, 2, 3])s	{1, 2, 3}sset((1, 2, 3))s	set((1,))s{1}sset([1])sset((a, b))s{a, b}sset([a, b])sset((a*234, f(args=23)))s{a*234, f(args=23)}sset([a*23, f(23)])s
{a*23, f(23)}sset([a-234**23])s{a-234**23}(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR>Ls2cCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(	Nsset([x for x in y])s{x for x in y}sset([x for x in y if x == m])s{x for x in y if x == m}sset([x for x in y for a in b])s{x for x in y for a in b}sset([f(x) - 23 for x in y])s{f(x) - 23 for x in y}(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_listcompsoscCs�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d
}|j||�d}d}|j||�d
}d}|j||�dS(Nsset( [1, 2])s{1, 2}s
set([1 ,  2])s{1 ,  2}s
set([ 1 ])s{ 1 }s
set( [1] )s{1}sset([  1,  2  ])s{  1,  2  }sset([x  for x in y ])s{x  for x in y }s<set(
                   [1, 2]
               )
            s{1, 2}
(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s*cCs<d}d}|j||�d}d}|j||�dS(Nsset((1, 2)) # His{1, 2} # HisZ
            # Foo
            set( # Bar
               (1, 2)
            )
            s2
            # Foo
            {1, 2}
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCsvd}|j|�d}|j|�d}|j|�d}|j|�d}|j|�d}|j|�dS(Nsset()sset(a)sset(a, b, c)sset(x for x in y)sset(x for x in y if z)sset(a*823-23**2 + f(23))(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s




(R8R-R
R>R�R�R�Rh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�Hs	#		 	tTest_sys_exccBsDeZdZd�Zd�Zd�Zd�Zd�Zd�ZRS(tsys_exccCs d}d}|j||�dS(Nssys.exc_typessys.exc_info()[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Ns
sys.exc_valuessys.exc_info()[1](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Nssys.exc_tracebackssys.exc_info()[2](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Nssys.exc_type # Foossys.exc_info()[0] # Foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Nssys.  exc_typessys.  exc_info()[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRF�scCs d}d}|j||�dS(Nssys  .exc_typessys  .exc_info()[0](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRG�s(	R8R-R
R�RCRDRERFRG(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s					t
Test_parencBszeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�ZRS(
tparencCs d}d}|j||�dS(Ns[i for i in 1, 2 ]s[i for i in (1, 2) ](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Ns[i for i in 1, 2, ]s[i for i in (1, 2,) ](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRC�scCs d}d}|j||�dS(Ns[i for i  in     1, 2 ]s[i for i  in     (1, 2) ](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRD�scCs d}d}|j||�dS(Ns[i for i in 1, 2 if i]s[i for i in (1, 2) if i](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRE�scCs d}d}|j||�dS(Ns[i for i in 1,    2    ]s[i for i in (1,    2)    ](R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRFscCs d}d}|j||�dS(Ns(i for i in 1, 2)s(i for i in (1, 2))(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRGscCs d}d}|j||�dS(Ns(i for i in 1   ,2   if i)s(i for i in (1   ,2)   if i)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRH
scCsd}|j|�dS(Ns[i for i in (1, 2)](R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_unchanged_0scCsd}|j|�dS(Ns[i for i in foo()](R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRYscCsd}|j|�dS(Ns[i for i in (1, 2) if nothing](R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRZscCsd}|j|�dS(Ns(i for i in (1, 2))(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR[scCsd}|j|�dS(Ns[i for i in m](R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR\s(R8R-R
R�RCRDRERFRGRHRRYRZR[R\(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��s											tTest_metaclasscBs)eZdZd�Zd�Zd�ZRS(t	metaclasscCs�|jd�|jd�|jd�|jd�|jd�|jd�|jd�d}|j|�d	}|j|�dS(
Nsclass X(): passsclass X(object): passsclass X(object1, object2): passs(class X(object1, object2, object3): passsclass X(metaclass=Meta): passs'class X(b, arg=23, metclass=Meta): passs2class X(b, arg=23, metaclass=Meta, other=42): passsD
        class X:
            def __metaclass__(self): pass
        s1
        class X:
            a[23] = 74
        (R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh's







cCs<d}d}|j||�d}d}|j||�dS(NsQ
        class X:
            # hi
            __metaclass__ = AppleMeta
        sQ
        class X(metaclass=AppleMeta):
            # hi
            pass
        sR
        class X:
            __metaclass__ = Meta
            # Bedtime!
        sR
        class X(metaclass=Meta):
            pass
            # Bedtime!
        (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�<scCs8d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d	}d}|j||�d
}d}|j||�d}d
}|j||�d}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(NsK
        class X():
            __metaclass__ = Q
            pass
        s8
        class X(metaclass=Q):
            pass
        s"class X(object): __metaclass__ = Qs"class X(object, metaclass=Q): passsW
        class X(object):
            __metaclass__ = Meta
            bar = 7
        sF
        class X(object, metaclass=Meta):
            bar = 7
        sJ
        class X:
            __metaclass__ = Meta; x = 4; g = 23
        sD
        class X(metaclass=Meta):
            x = 4; g = 23
        sW
        class X(object):
            bar = 7
            __metaclass__ = Meta
        sl
        class X():
            __metaclass__ = A
            __metaclass__ = B
            bar = 7
        s;
        class X(metaclass=B):
            bar = 7
        s[
        class X(clsA, clsB):
            __metaclass__ = Meta
            bar = 7
        sJ
        class X(clsA, clsB, metaclass=Meta):
            bar = 7
        s(class m(a, arg=23): __metaclass__ = Metas(class m(a, arg=23, metaclass=Meta): passsN
        class X(expression(2 + 4)):
            __metaclass__ = Meta
        sN
        class X(expression(2 + 4), metaclass=Meta):
            pass
        sT
        class X(expression(2 + 4), x**4):
            __metaclass__ = Meta
        sT
        class X(expression(2 + 4), x**4, metaclass=Meta):
            pass
        sT
        class X:
            __metaclass__ = Meta
            save.py = 23
        sC
        class X(metaclass=Meta):
            save.py = 23
        (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt	test_metaUsB(R8R-R
RhR�R(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR#s		tTest_getcwducBs;eZdZd�Zd�Zd�Zd�Zd�ZRS(tgetcwducCstd}d}|j||�d}d}|j||�d}d}|j||�d}d}|j||�dS(	Ns
os.getcwdus	os.getcwdsos.getcwdu()sos.getcwd()smeth = os.getcwdusmeth = os.getcwdsos.getcwdu(args)sos.getcwd(args)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR>�scCs d}d}|j||�dS(Nsos.getcwdu() # Foosos.getcwd() # Foo(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_comment�scCs=d}|j|�d}|j|�d}|j|�dS(Nsos.getcwd()s	getcwdu()sos.getcwdb()(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s

cCs d}d}|j||�dS(Ns<
            if 1:
                os.getcwdu()
            s;
            if 1:
                os.getcwd()
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_indentation�scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Ns
os .getcwdu()sos .getcwd()sos.  getcwdusos.  getcwdsos.getcwdu (  )sos.getcwd (  )(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_multilation�s(R8R-R
R>RRhRR	(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�s			
	t
Test_operatorcBs�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�ZRS(toperatorcCs d}d}|j||�dS(Nsoperator.isCallable(x)shasattr(x, '__call__')(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_isCallable	scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsoperator.sequenceIncludes(x, y)soperator.contains(x, y)s operator .sequenceIncludes(x, y)soperator .contains(x, y)s!operator.  sequenceIncludes(x, y)soperator.  contains(x, y)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_sequenceIncludesscCs d}d}|j||�dS(Nsoperator.isSequenceType(x)s6import collections
isinstance(x, collections.Sequence)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_isSequenceTypescCs d}d}|j||�dS(Nsoperator.isMappingType(x)s5import collections
isinstance(x, collections.Mapping)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_isMappingType scCs d}d}|j||�dS(Nsoperator.isNumberType(x)s,import numbers
isinstance(x, numbers.Number)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_isNumberType%scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsoperator.repeat(x, n)soperator.mul(x, n)soperator .repeat(x, n)soperator .mul(x, n)soperator.  repeat(x, n)soperator.  mul(x, n)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_repeat*scCsXd}d}|j||�d}d}|j||�d}d}|j||�dS(Nsoperator.irepeat(x, n)soperator.imul(x, n)soperator .irepeat(x, n)soperator .imul(x, n)soperator.  irepeat(x, n)soperator.  imul(x, n)(R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_operator_irepeat7scCs d}d}|j||�dS(Ns
isCallable(x)s-You should use 'hasattr(x, '__call__')' here.(R((RRXtt((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_isCallableDscCs d}d}|j||�dS(NssequenceIncludes(x, y)s.You should use 'operator.contains(x, y)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_sequenceIncludesIscCs d}d}|j||�dS(NsisSequenceType(z)s:You should use 'isinstance(z, collections.Sequence)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt!test_bare_operator_isSequenceTypeNscCs d}d}|j||�dS(NsisMappingType(x)s9You should use 'isinstance(x, collections.Mapping)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt test_bare_operator_isMappingTypeSscCs d}d}|j||�dS(NsisNumberType(y)s4You should use 'isinstance(y, numbers.Number)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_operator_isNumberTypeXscCs d}d}|j||�dS(Nsrepeat(x, n)s)You should use 'operator.mul(x, n)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_operator_repeat]scCs d}d}|j||�dS(Nsirepeat(y, 187)s,You should use 'operator.imul(y, 187)' here.(R((RRXR((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_bare_operator_irepeatbs(R8R-R
RR
RRRRRRRRRRRR(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR
s		
				
	
						t
Test_exitfunccBsMeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(texitfunccCs d}d}|j||�dS(NsI
            import sys
            sys.exitfunc = my_atexit
            se
            import sys
            import atexit
            atexit.register(my_atexit)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR�lscCs d}d}|j||�dS(NsO
            import sys, crumbs
            sys.exitfunc = my_func
            sY
            import sys, crumbs, atexit
            atexit.register(my_func)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_names_importxscCs d}d}|j||�dS(Nsh
            import sys
            sys.exitfunc = do(d)/a()+complex(f=23, g=23)*expression
            s�
            import sys
            import atexit
            atexit.register(do(d)/a()+complex(f=23, g=23)*expression)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_complex_expression�scCs<d}d}|j||�d}d}|j||�dS(NsN
            import sys # Foo
            sys.exitfunc = f # Blah
            sj
            import sys
            import atexit # Foo
            atexit.register(f) # Blah
            so
            import apples, sys, crumbs, larry # Pleasant comments
            sys.exitfunc = func
            sy
            import apples, sys, crumbs, larry, atexit # Pleasant comments
            atexit.register(func)
            (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyR��scCs d}d}|j||�dS(Ns]
            import sys
            def f():
                sys.exitfunc = func
            sz
            import sys
            import atexit
            def f():
                atexit.register(func)
             (R!(RR<R=((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_in_a_function�scCs)d}d}d}|j|||�dS(Nssys.exitfunc = fsatexit.register(f)sKCan't find sys import; Please add an atexit import at the top of your file.(R&(RR<R=tmsg((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyttest_no_sys_import�scCsd}|j|�dS(Nsf(sys.exitfunc)(R%(RRX((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRh�s(
R8R-R
R�RRR�RR!Rh(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyRhs						(Et__doc__R�tunittestR�RRRRRRRRt
lib2to3.testsRtTestCaseRR:RARNRdRiRnR~R�R�R�R�R�R�R�R�R�R�R�R�R�R�RRR
RR"R$R4R8RaRdRxRR�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�RRR
R(((s//sys/lib/python2.7/lib2to3/tests/test_fixers.pyt<module>s~"9:�1#j3&�}.&�/+bn/� �4B.)]VpC�
=J�":�=c

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to [email protected].