{G_Tc@sddlmZmZmZddlZddlZddlTdejfdYZdejfdYZdZ e d kre ndS( i(t run_unittesttcheck_syntax_errortcheck_py3k_warningsN(t*t TokenTestscBs>eZdZdZdZdZdZdZRS(cCs6d}|j|ddd}|j|dddS(Niisbackslash for line continuationisbackslash ending commenti(t assertEqual(tselftx((s-/usr/local/lib/python2.7/test/test_grammar.pyt testBackslashs cCs~|jdd|jdd|jdd|jttdddlm}|dkr|jdd|jd d k|jd d kxdD];}yt|}Wqtk r|jd|qXqWn|dkri|jdd|jdd k|jdd kxWdD];}yt|}Wq'tk ra|jd|q'Xq'Wn|jd|dS(Niit0xi(tmaxintiiiIit 2147483648t 040000000000t 0x100000000s(OverflowError on huge integer literal %rIIIlt9223372036854775808t02000000000000000000000t0x10000000000000000sWeird maxint value %ri(R R R I(RRR( Rt assertRaisest SyntaxErrortevaltsysR t assertTruet OverflowErrortfail(RR tsR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestPlainIntegerss2      cCs4d}d}d}d}d}d}d}d}dS(Nlll?l ~l!]c((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestLongIntegers6scCsFd}d}d}d}d}d}d}d}d}d}d}dS(NgQ @gs@gjt?g Bgt =gWHBgF@((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testFloats@scCsI|jdndd|jdr(dndd|jttddS(Niis 0 if 1Else 0(RRRR(R((s-/usr/local/lib/python2.7/test/test_grammar.pyt test_float_exponent_tokenizationNscCs{d}d}|jt|dko-||kd}d}|jt|dkop||kopt|dkd}d}|jt|dko||kot|dkd}d}|jt|d ko||kd }d }|jt|d ko||kd }d }|j||d }|j||d }|j||d }|j||dS( Ntis'ii't"i"sdoesn't "shrink" does itisdoes "shrink" doesn't its2 The "quick" brown fox jumps over the 'lazy' dog. (RtlentordR(RRty((s-/usr/local/lib/python2.7/test/test_grammar.pyttestStringLiteralsTs0%77%%(t__name__t __module__RRRRRR"(((s-/usr/local/lib/python2.7/test/test_grammar.pyR s    t GrammarTestscBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZejeddZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#d Z$d!Z%d"Z&d#Z'd$Z(d%Z)d&Z*d'Z+d(Z,d)Z-RS(*cCstd}dS(Ns 1, 0 or 1(R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testEvalInputsc Bsd}||d=|d>id}d}ddUddU|j|jjd?|j|jjd@ejjd r|jejjdA|jejjdBn,|jejjdC|jejjdDd}d}d}d}d}ddU||d|d|dd|ddedddEf||d|d|dd|ddddddddd d! |d|d|dd|ddd|ddddddddd d! |dd|ddd|dddd|ddddddddd d! eddFeddGdeddHdddddd d! ejjd r|jejjdIn|jejjdJ|jeddKdddddLfdd'} | | d| dM| idd"6dd(} | d| dd| didd%6dd)} | dd| ddd| dN| ddO| dddP| ddidd&6ddd*} | | d| dd| dQ| ddR| didd%6| idd"6dd%6ddd+} | d| dd| dddddd,}|dd|ddd|dddddd-}||d|dd|dS|dT|idd"6dd.}|d|dd|ddddd/}|dd|ddd|dddd|dU|ddidd&6ddd0}||d|dd|ddd|ddV|idd"6dd%6ddd1}|d|dd|ddd|dddd|dW|dddX|ddYidd&6ddd2}|dd|ddd|dddd|ddddd|dZ|ddd[|dd\idd36d4dUd5dUe de d]d6}|j|dd7dd8dddgd^idd76dd86f|j e e d9|j e e d:e|d;e|d<dS(_NcSsdS(N((((s-/usr/local/lib/python2.7/test/test_grammar.pytf1scSsdS(N((t one_argument((s-/usr/local/lib/python2.7/test/test_grammar.pytf2scSsdS(N((ttwot arguments((s-/usr/local/lib/python2.7/test/test_grammar.pytf3ss/def f4(two, (compound, (argument, list))): passs$def f5((compound, first), two): passR(R*R+tjavas(compound, (argument, list))tcompoundtargumenttlists(compound, first)tfirsts.1s.0cSsdS(N((tone_arg((s-/usr/local/lib/python2.7/test/test_grammar.pyta1scSsdS(N((R*targs((s-/usr/local/lib/python2.7/test/test_grammar.pyta2scWsdS(N((trest((s-/usr/local/lib/python2.7/test/test_grammar.pytv0scWsdS(N((taR6((s-/usr/local/lib/python2.7/test/test_grammar.pytv1scWsdS(N((R8tbR6((s-/usr/local/lib/python2.7/test/test_grammar.pytv2ss.def v3(a, (b, c), *rest): return a, b, c, restiiiiiiiii iR8s(b, c)R6R:tccSsdS(N((R8((s-/usr/local/lib/python2.7/test/test_grammar.pytd01scSsdS(N((R8R:((s-/usr/local/lib/python2.7/test/test_grammar.pytd11scSsdS(N((R8R:R<((s-/usr/local/lib/python2.7/test/test_grammar.pytd21scSsdS(N((R8R:((s-/usr/local/lib/python2.7/test/test_grammar.pytd02scSsdS(N((R8R:R<((s-/usr/local/lib/python2.7/test/test_grammar.pytd12scSsdS(N((R8R:R<td((s-/usr/local/lib/python2.7/test/test_grammar.pytd22scWsdS(N((R8R6((s-/usr/local/lib/python2.7/test/test_grammar.pytd01vscWsdS(N((R8R:R6((s-/usr/local/lib/python2.7/test/test_grammar.pytd11vscWsdS(N((R8R:R<R6((s-/usr/local/lib/python2.7/test/test_grammar.pytd21vscWsdS(N((R8R:R6((s-/usr/local/lib/python2.7/test/test_grammar.pytd02vscWsdS(N((R8R:R<R6((s-/usr/local/lib/python2.7/test/test_grammar.pytd12v scWsdS(N((R8R:R<RBR6((s-/usr/local/lib/python2.7/test/test_grammar.pytd22vsRBsdef d31v((x)): passsdef d32v((x,)): passc_s ||fS(N((R4tkwargs((s-/usr/local/lib/python2.7/test/test_grammar.pytf"sRR!sf(1, *(2,3), 4)sf(1, x=2, *(3,4), x=5)s f(*g(1=2))s f(**g(1=2))(((s one_argument(stwos arguments(stwos(compound, (argument, list))R.R/slist(s(compound, first)stwoR.R1(stwos.1R.R/slist(s.0stwoR.R1(ii(ii(ii(ii(R8s(b, c)srestR:R<(R8s.1srestR:R<(ii(i(i(iii(ii(i(ii(i(iiii(i(iiii(iii(iiii(iii(i(iiii(iii(ii(i(iii(Rt func_codet co_varnamesRtplatformt startswithtf4tf5tv3td31vtd32vRRRR(RR'R)R,R3R5R7R9R;R=R>R?R@RARCRDRERFRGRHRIRK((s-/usr/local/lib/python2.7/test/test_grammar.pyt testFuncdefs                  %   % % "(                                       ' cCsd}|j|dd}d}|j|dddgdddd}|j|dd d }|j|dd d |j|dd d d t|dt|ddS(NcSsdS(Ni((((s-/usr/local/lib/python2.7/test/test_grammar.pyt/sicSsttS(N(R8RB(((s-/usr/local/lib/python2.7/test/test_grammar.pyRV1scSs&gdddgD]}d|k^qS(Niili((R((s-/usr/local/lib/python2.7/test/test_grammar.pyRV2sicSs|S(N((tz((s-/usr/local/lib/python2.7/test/test_grammar.pyRV4scSs|S(N((R!((s-/usr/local/lib/python2.7/test/test_grammar.pyRV4scSs|S(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyRV4sicSs |||S(N((RR!RW((s-/usr/local/lib/python2.7/test/test_grammar.pyRV6siiislambda x: x = 2slambda (None,): None(RR(Rtl1tl2tl3tl4tl5((s-/usr/local/lib/python2.7/test/test_grammar.pyt testLambdef-s     cCsd}~d}|dS(NicSs d}~dS(Ni((R((s-/usr/local/lib/python2.7/test/test_grammar.pytfooBs((RRR^((s-/usr/local/lib/python2.7/test/test_grammar.pyttestSimpleStmt?s c Csxdd}d}d }}}d \}}}ddd f}\}}}\}}}}t|dt|ddS( Niiiis x + 1 = 1s a + 1 = b + 2(iii(iii(iii(iii(ii(R( RRR!RWtabcR8R:R<txyz((s-/usr/local/lib/python2.7/test/test_grammar.pyt testExprStmtJs- csddl}tj}|jt_dGdGdGHdGdGdGHdpGdGdpQdGdp[dGHtjdIdIdIJtjdIdIdItjJtjdpdIdpdItjdpdIJdddY}|dIdIdIJ|dIdIdI|J|dp!dIdp-dI|dp=dIJfd}tjd |dd ||jtjjd |t_t|d t|d dS(NiiiiitGulpcBseZdZRS(cSsdS(N((Rtmsg((s-/usr/local/lib/python2.7/test/test_grammar.pytwriteos(R#R$Re(((s-/usr/local/lib/python2.7/test/test_grammar.pyRcnscs>tj}t_zWd|t_XdS(N(Rtstdout(t oldstdout(Rcttellme(s-/usr/local/lib/python2.7/test/test_grammar.pytdriverys     cSs|dIJdS(Ns hello world((tfile((s-/usr/local/lib/python2.7/test/test_grammar.pyRhscSs|dIJdS(Nsgoodbye universe((Rj((s-/usr/local/lib/python2.7/test/test_grammar.pyRhss01 2 3 1 2 3 1 1 1 1 2 3 1 2 3 1 1 1 hello world sprint ,s print >> x,((tStringIORRftNoneRtgetvalueR(RRkt save_stdouttgulpRi((RcRhs-/usr/local/lib/python2.7/test/test_grammar.pyt testPrintStmtWs<          cCs@dddg}|\}}}|||f}~~~~~dS(Niii((RR`RR!RWRa((s-/usr/local/lib/python2.7/test/test_grammar.pyt testDelStmts cCsdS(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testPassStmtscCs xPqdS(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testBreakStmtscCsd}x|rd}q q Wd}x-|sQd}y w%d}Wq%d}q%Xq%W|dkrn|j|nd}x!|sd}zwwWdd}XqwW|dkr|j|ndS(NiiRtoks&continue failed to continue inside trys'continue inside try called except blocksfinally block not called(R(RtiRd((s-/usr/local/lib/python2.7/test/test_grammar.pyttestContinueStmts,       cs ddfd}|dS(Niicsd}xR|rZ|d7}y1|r<|dkr<|d8}Pn|d8}w Wq q Xq W|dkss|dkrjdndS(Niis1continue then break in try/except in loop broken!(R(textra_burning_oiltcountt big_hippo(R(s-/usr/local/lib/python2.7/test/test_grammar.pyt test_inners     ((RRz((Rs-/usr/local/lib/python2.7/test/test_grammar.pyttest_break_continue_loops cCs3d}d}||}t|ddS(NcSsdS(N((((s-/usr/local/lib/python2.7/test/test_grammar.pytg1scSsdS(Ni((((s-/usr/local/lib/python2.7/test/test_grammar.pytg2ssclass foo:return 1(R(RR|R}R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testReturns    cCst|ddS(Nsclass foo:yield 1(R(R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testYieldscCsCy tdWntk r nXy tWntk r>nXdS(Ns just testing(t RuntimeErrortKeyboardInterrupt(R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testRaises    cCsddl}ddl}ddl}ddlm}ddlm}ddlm}m}ddlm}m}ddlm}m}dS(Ni(ttime(tpathtargv(RRRR(RRRRR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testImports cCsdS(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testGlobalscBsPd}~ddU|dkr-|jdn~ddU|dkrT|jdnd}~ddl}e|drddUni}d |Ud |kr|d =n|id d 6kr|jd ni}i}d||Ud |kr|d =nd |kr |d =n||fid d6idd6fkrL|jd||fndS(Nsz=1+1 isexec 'z=1+1'\nsz=1+1s exec 'z=1+1'it UnicodeTypesif 1: exec u'z=1+1\n' if z != 2: self.fail('exec u\'z=1+1\'\\n') del z exec u'z=1+1' if z != 2: self.fail('exec u\'z=1+1\'')sz = 1t __builtins__iRWsexec 'z = 1' in gsglobal a; a = 1; b = 2R8R:sexec ... in g (%s), l (%s)(RlRttypesthasattr(RRWRtgtl((s-/usr/local/lib/python2.7/test/test_grammar.pyttestExec s:        &cCsds tdstdds-tdsBtdytsQtWn tk rt}|jdnXytstdWn tk r}|jdnXdS(NicSs|S(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyRV.scSs|dS(Ni((R((s-/usr/local/lib/python2.7/test/test_grammar.pyRV/ss6'assert True' should not have raised an AssertionErrorsthis should always passs;'assert True, msg' should not have raised an AssertionError(tAssertionErrortTrueR(Rte((s-/usr/local/lib/python2.7/test/test_grammar.pyt testAssert*s s Won't work if __debug__ is FalsecCsydstdWn*tk rB}|j|jddnX|jdyts_tWn,tk r}|jt|jdnX|jddS(NiRds%AssertionError not raised by assert 0s+AssertionError not raised by 'assert False'(RRR4RtFalseR(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testAssert2=s cCsdS(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyttestIfQs cCs d}d}|j|ddS(Nii(R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testWhile^scCsxd D]}qWxd D]\}}}qWdd dY}d}x|dD]}||}qQW|dkr|jd ng}x'd ddgD]\}|j|qW|j|dddgdS(NiiitSquarescBs#eZdZdZdZRS(cSs||_g|_dS(N(tmaxtsofar(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt__init__ss cSs t|jS(N(RR(R((s-/usr/local/lib/python2.7/test/test_grammar.pyt__len__vscSssd|ko|jkns(tnt|j}x.||krg|jj|||d}q:W|j|S(Nii(Rt IndexErrorRRtappend(RRutn((s-/usr/local/lib/python2.7/test/test_grammar.pyt __getitem__ws (R#R$RRR(((s-/usr/local/lib/python2.7/test/test_grammar.pyRrs  ii isfor over growing sequence(iii(((i(i(i(RRR(RRutjtkRRRtresult((s-/usr/local/lib/python2.7/test/test_grammar.pyttestForms   cCsy ddWntk rnXy ddWn;tk r?n+tk rQ}ntk rc}nnXy ddWntttfk rnXy ddWntttfk r}nXzWdXdS(Nii(tZeroDivisionErrortEOFErrort TypeErrorR(RRd((s-/usr/local/lib/python2.7/test/test_grammar.pyttestTrys2      cCsdS(N((R((s-/usr/local/lib/python2.7/test/test_grammar.pyt testSuites cCszds ndrdrnds'dr'nd s2nd rHdrHdrHndrTdsvdrfdrfdsvd rvdrvndS(Ni((R((s-/usr/local/lib/python2.7/test/test_grammar.pyttestTests  +cCs;ddk}ddkrnddkr*nddkr9nddkrHnddkrWnddkrfnddkrunddk rnddkrnddkrnddkodkodkodkodkodkodkodkodkodk nrntdr(ntdr7ndS(Nis1 <> 1s>1 < 1 > 1 == 1 >= 1 <= 1 <> 1 != 1 in 1 not in 1 is 1 is not 1(((R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestComparisons6           t  cCsd}d}d}dS(Niiii((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestBinaryMaskOpsscCsd}d}d}dS(Niiiii((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testShiftOpsscCsd}d}d}d}dS( Niiiiiiii((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestAdditiveOpsscCs,d}dd}d}dddd}dS(Niii((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyttestMultiplicativeOpss cCs7d }d}d}ddAdB}ddd d }dS( Niiiiiiiiiiii((RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testUnaryOpss c Csddl}ddl}|jd}|j}|jdj}d}|d}|d}|dd!}|d }|d}|}|d}|d }|dd!}i}d |d s tGcBseZRS((R#R$(((s-/usr/local/lib/python2.7/test/test_grammar.pyRAs(((((RRR( RRRRRRRRR((s-/usr/local/lib/python2.7/test/test_grammar.pyt testClassdef0s cCsBdddg}|jd|Didd6dd6dd6dS(NiiicSsi|]}|d|qS(i((t.0Ru((s-/usr/local/lib/python2.7/test/test_grammar.pys Ks i(R(Rtnums((s-/usr/local/lib/python2.7/test/test_grammar.pyt testDictcompsFscs"dddddg}dddg}d d d g}jg|D]}|j^q@ddd gjg|D]}d|^qrdd dddgjg|D]}|dkr|^qdddgjg|D]}|D]}||f^qqd$d%d&d'd(d)d*d+d,d-d.d/d0d1d2gjg|D]>}g|D]}d|krP|^qPD]}||f^qlqCd3d4d5d6d7d8d9d:d;d<g jgtdD]}d|^qdgddgdddgddddgdddddggd} j| |tttgfd} | tdtdd=d>d?g} d@dAdBg} dCdDdEdFg} g| D]V\}}| D]C\}}| D]0\}}||kr||kr||f^qqq}j|dGdHdIdJgdS(KNiiiiitAppletBananatCoconuts Apples Banana s Coco nut s Coco nutii i iRcSs%gt|dD]}||^qS(Ni(trange(R8Ru((s-/usr/local/lib/python2.7/test/test_grammar.pyRV`siii@icSs9g|D].}|dkrd|ko0dkn^qS(Nii(Rl(RR((s-/usr/local/lib/python2.7/test/test_grammar.pyt test_in_funccscshjgdddgD])}g||dgD] }|^q-^qddgddgddggdS(Niiiiii(R(RR!(R(s-/usr/local/lib/python2.7/test/test_grammar.pyttest_nested_fronthsBs"[i, s for i in nums for s in strs]s[x if y]tBoeingtFordt Macdonaldsi tAirlineritEngineit Cheeseburger(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(iR(i R(iR(iR(ii (ii(ii(ii(RR(RR(RR(RR(RtstripRRR(RRtstrstspcsRRRuRKRRRt supplierstpartstsupparttsnotsnametpnotpnametsp_snotsp_pno((Rs-/usr/local/lib/python2.7/test/test_grammar.pyt testListcompsMsL268/    N   +C     0csdtdD}|j|jgtdD] }|^q2y|j|jdWntk rsnXdy1fdD}|j|jdWntk rnX|jtddDgdD]}dD]}||f^qq|jtd d Dgd D]}d D]}||f^q/q%gtdD] }|^qXd d DD}|jt|tgtdD] }|^q|jtdtdDtgtdD]}|d^q|jtdtdDtgtdD]}|dr1||^q1|jtddtdDDtgtdD] }|^q|jtdddtdDDDtgtdD] }|^q|jtdgdtdDD] }|^q#DtgtdD] }|^qI|jtdddtdDDDtgtdD] }|^q|jtdddtdDDDdt|dt|d dS(!Ncss.|]$}gtdD] }|^qVqdS(i N(R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pys sii s&should produce StopIteration exceptionc3s|] }VqdS(N((RRB(R8(s-/usr/local/lib/python2.7/test/test_grammar.pys ssshould produce TypeErrorcss(|]}dD]}||fVq qdS(tabcdN((RRR!((s-/usr/local/lib/python2.7/test/test_grammar.pys sRcss(|]}dD]}||fVq qdS(txyN((RRR!((s-/usr/local/lib/python2.7/test/test_grammar.pys stabRcss|] }|VqdS(N((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR!((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}|dVqdS(iN((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys sicss#|]}|dr||VqdS(iN((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR!((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR!((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RRW((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RRW((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}tr|VqdS(N(R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|] }|VqdS(N((RR!((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}tr|VqdS(N(R(RRW((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}tr|VqdS(N(R(RR((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}tr|VqdS(N(R(RR!((s-/usr/local/lib/python2.7/test/test_grammar.pys scss|]}tr|VqdS(N(R(RRW((s-/usr/local/lib/python2.7/test/test_grammar.pys sisfoo(x for x in range(10), 100)sfoo(100, x for x in range(10))( RRtnextRt StopIterationRR0tsumR(RRRR!R:((R8s-/usr/local/lib/python2.7/test/test_grammar.pyt testGenexpss8/    FF5ISOYbY: csddtD}d|jtt|ddtfdtD}dt|jgtdD]%}tdD]}||f^qqt||jgtdD] drdr^qdddg|jtd tdDdddg|jgdddgD]\^qHd dd g|jtd dddgDdd dgdS(Ni css|] }|VqdS(N((RRu((s-/usr/local/lib/python2.7/test/test_grammar.pys sic3s4|]*}rtD]}||fVqqdS(N(R(RRuR(ttR(s-/usr/local/lib/python2.7/test/test_grammar.pys siiiicss)|]}|dr|dr|VqdS(iiN((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys siicss|]\}|VqdS(N((RR((s-/usr/local/lib/python2.7/test/test_grammar.pys sii (i(i(i(i(i(i (RRRR0RR(RRRuR((RRs-/usr/local/lib/python2.7/test/test_grammar.pyttestComprehensionSpecialssHF/8cCsdtfdY}|WdQX|}WdQX| \}}WdQX||WdQXWdQX|}|}WdQXWdQX|}|WdQXWdQXdS(NtmanagercBseZdZdZRS(cSsdS(Nii(ii((R((s-/usr/local/lib/python2.7/test/test_grammar.pyt __enter__scWsdS(N((RR4((s-/usr/local/lib/python2.7/test/test_grammar.pyt__exit__s(R#R$RR(((s-/usr/local/lib/python2.7/test/test_grammar.pyRs (tobject(RRRR!((s-/usr/local/lib/python2.7/test/test_grammar.pyttest_with_statements        csfd}|jgddfD]r(^q(tg|jgddfD]rf^qftg|jgddfD]trt^qtg|jd n |d d d |jd r |d d nd d |jd r+d o.d ndd|jd rMd oPd ndd|jd old ndd |jd rd p|ddndd|jdp|ddn |ddd|jd pd n |ddd |jd ndt|jd rd ndd|jdndd|jdndd |jdndd|jd dndd|jd rd dkndddS(Ncs GH|S(s@helper to check that evaluation of expressions is done correctly((Rdtret(R(s-/usr/local/lib/python2.7/test/test_grammar.pyt _checkevalscSstS(N(R(((s-/usr/local/lib/python2.7/test/test_grammar.pyRVscSstS(N(R(((s-/usr/local/lib/python2.7/test/test_grammar.pyRVscSstS(N(R(((s-/usr/local/lib/python2.7/test/test_grammar.pyRVscSstS(N(R(((s-/usr/local/lib/python2.7/test/test_grammar.pyRVscSs|r tStS(N(RR(R((s-/usr/local/lib/python2.7/test/test_grammar.pyRVscSs|r tStS(N(RR(R((s-/usr/local/lib/python2.7/test/test_grammar.pyRVsiischeck 1ischeck 2ischeck 3iischeck 4scheck 5scheck 6iii iii (RRR(RR((Rs-/usr/local/lib/python2.7/test/test_grammar.pyttestIfElseExprs&>>D%""+.%cCs|jddd|jdd|jd d|jtddkk|jtdkdk|jtdkodkndS( Niiiiiiiiii(RRRt assertFalse(R((s-/usr/local/lib/python2.7/test/test_grammar.pyttest_paren_evaluations (.R#R$R&RUR]R_RbRpRqRrRsRvR{R~RRRRRRtunittestt skipUnlesst __debug__RRRRRRRRRRRRRRRRRRRRRRR(((s-/usr/local/lib/python2.7/test/test_grammar.pyR%}sR   F                     (   ? #   cCsNtdtfdtfdtfdtfdtftttWdQXdS(Nsbackquote not supporteds*tuple parameter unpacking has been removeds(parenthesized argument names are invalidsclassic int divisions.+ not supported in 3.x(Rt SyntaxWarningtDeprecationWarningRRR%(((s-/usr/local/lib/python2.7/test/test_grammar.pyt test_mains    t__main__( ttest.test_supportRRRRRtTestCaseRR%RR#(((s-/usr/local/lib/python2.7/test/test_grammar.pyts   q