mò
­fIc           @   sv   d  k  Z  d  k Z d k l Z d e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d „  Z e d j o e ƒ  n d  S(   N(   s   test_supportt   RoundtripLegalSyntaxTestCasec           B   s†   t  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(   Nc         C   sz   | | ƒ } | i ƒ  } y t i | ƒ } Wn/ t i j
 o  } |  i d | | f ƒ n X|  i | | i ƒ  d ƒ d  S(   Ns   could not roundtrip %r: %ss!   could not re-generate syntax tree(   t   ft   st   st1t   totuplet   tt   parsert   sequence2stt   st2t   ParserErrort   whyt   selft   failt   assertEquals(   R   R   R   R   R   R
   R   (    (    t-   /mit/python/lib/python2.4/test/test_parser.pyt	   roundtrip   s    c         C   s   |  i t i | ƒ d  S(   N(   R   R   R   t   exprR   (   R   R   (    (    R   t
   check_expr   s    c         C   s   |  i t i | ƒ d  S(   N(   R   R   R   t   suiteR   (   R   R   (    (    R   t   check_suite   s    c         C   s8   |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ d  S(   Ns   def f(): yield 1s   def f(): return; yield 1s   def f(): yield 1; returns1   def f():
    for x in range(30):
        yield x
(   R   R   (   R   (    (    R   t   test_yield_statement   s    c         C   s±  |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d	 ƒ |  i d
 ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d  ƒ |  i d! ƒ d  S("   Ns   foo(1)s	   [1, 2, 3]s   [x**3 for x in range(20)]s"   [x**3 for x in range(20) if x % 3]s
   foo(*args)s   foo(*args, **kw)s	   foo(**kw)s   foo(key=value)s   foo(key=value, *args)s   foo(key=value, *args, **kw)s   foo(key=value, **kw)s   foo(a, b, c, *args)s   foo(a, b, c, *args, **kw)s   foo(a, b, c, **kw)s	   foo + bars	   foo - bars	   foo * bars	   foo / bars
   foo // bars	   lambda: 0s   lambda x: 0s   lambda *y: 0s   lambda *y, **z: 0s   lambda **z: 0s   lambda x, y: 0s   lambda foo=bar: 0s"   lambda foo=bar, spaz=nifty+spit: 0s   lambda foo=bar, **z: 0s#   lambda foo=bar, blaz=blat+2, **z: 0s'   lambda foo=bar, blaz=blat+2, *y, **z: 0s   lambda x, *y, **z: 0s   (x for x in range(10))s   foo(x for x in range(10))(   R   R   (   R   (    (    R   t   test_expressions&   sB    c         C   sR   |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ d  S(   Nt   prints   print 1s   print 1,s
   print >>fps   print >>fp, 1s   print >>fp, 1,(   R   R   (   R   (    (    R   t
   test_printI   s    c         C   s   |  i d ƒ d  S(   Nt   a(   R   R   (   R   (    (    R   t   test_simple_expressionQ   s    c         C   s   |  i d ƒ |  i d ƒ d  S(   Ns   a = bs   a = b = c = d = e(   R   R   (   R   (    (    R   t   test_simple_assignmentsU   s    c         C   s    |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d	 ƒ |  i d
 ƒ |  i d ƒ |  i d ƒ d  S(   Ns   a += bs   a -= bs   a *= bs   a /= bs   a //= bs   a %= bs   a &= bs   a |= bs   a ^= bs   a <<= bs   a >>= bs   a **= b(   R   R   (   R   (    (    R   t!   test_simple_augmented_assignmentsY   s    c         C   sû   |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d	 ƒ |  i d
 ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ d  S(   Ns   def f(): passs   def f(*args): passs   def f(*args, **kw): passs   def f(**kw): passs   def f(foo=bar): passs   def f(foo=bar, *args): passs!   def f(foo=bar, *args, **kw): passs   def f(foo=bar, **kw): passs   def f(a, b): passs   def f(a, b, *args): passs   def f(a, b, *args, **kw): passs   def f(a, b, **kw): passs   def f(a, b, foo=bar): passs!   def f(a, b, foo=bar, *args): passs'   def f(a, b, foo=bar, *args, **kw): passs    def f(a, b, foo=bar, **kw): passs   @staticmethod
def f(): passs,   @staticmethod
@funcattrs(x, y)
def f(): passs   @funcattrs()
def f(): pass(   R   R   (   R   (    (    R   t   test_function_defsg   s&    c         C   sÔ   |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d	 ƒ |  i d
 ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ d  S(   Ns   from sys.path import *s   from sys.path import dirnames   from sys.path import (dirname)s   from sys.path import (dirname,)s*   from sys.path import dirname as my_dirnames,   from sys.path import (dirname as my_dirname)s-   from sys.path import (dirname as my_dirname,)s&   from sys.path import dirname, basenames(   from sys.path import (dirname, basename)s)   from sys.path import (dirname, basename,)s4   from sys.path import dirname as my_dirname, basenames6   from sys.path import (dirname as my_dirname, basename)s7   from sys.path import (dirname as my_dirname, basename,)s5   from sys.path import dirname, basename as my_basenames7   from sys.path import (dirname, basename as my_basename)s8   from sys.path import (dirname, basename as my_basename,)(   R   R   (   R   (    (    R   t   test_import_from_statement‚   s     c         C   sE   |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ |  i d ƒ d  S(   Ns
   import syss   import sys as systems   import sys, maths   import sys as system, maths   import sys, math as my_math(   R   R   (   R   (    (    R   t   test_basic_import_statementš   s
    c         C   s   |  i d ƒ d  S(   Ns"   # -*- coding: iso-8859-1 -*-
pass
(   R   R   (   R   (    (    R   t   test_pep263¡   s    c         C   s   |  i d ƒ d  S(   Ns   assert alo < ahi and blo < bhi
(   R   R   (   R   (    (    R   t   test_assert¥   s    (   t   __name__t
   __module__R   R   R   R   R   R   R   R   R   R   R   R   R   R    (    (    (    R   R       s   					#								t   IllegalSyntaxTestCasec           B   sP   t  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 RS(	   Nc         C   s?   y t  i | ƒ Wn t  i j
 o n X|  i d | ƒ d  S(   Ns"   did not detect invalid tree for %r(   R   R   t   treeR	   R   R   t   label(   R   R$   R%   (    (    R   t   check_bad_tree¯   s
    c         C   s   |  i d d ƒ d  S(   Ni   i   i   s   <junk>(   i   i   i   (   R   R&   (   R   (    (    R   t	   test_junk·   s    c      $   C   s¦  d d d d d d f d d f d d	 d
 f d d f f d d f d d d f d d f d d d d d d d f d d d d d d d d d  d! d" d# d$ d% d& d' f f f f f f f f f f f f f f f f f f d d d d d( d d) f d d d d d d d d d  d! d" d# d$ d% d& d' f f f f f f f f f f f f f f f f f f d d f f f d* d f f f f f d d f d+ d f f f f } |  i | d, ƒ d  S(-   Ni  i  i  i  i   t   defR   i  i   t   (i   t   )i   t   :i#  i   t    i   i	  i
  i  i  t   returni9  i$  i%  i&  i'  i)  i*  i+  i,  i-  i.  i/  i0  i1  i   t   1i  t   yieldi   i    s   def f():
  return 1
  yield 1(   R$   R   R&   (   R   R$   (    (    R   t   test_illegal_yield_1»   s    ÿ “3c      %   C   s÷  d d d d d d d f d d d	 f f d d
 f d d d f f f f d d f f f d d d d d f d d f d d d f d d f f d d f d d d f d d f d d d d d d d f d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. f f f f f f f f f f f f f f f f f f d d d d d/ d d0 f d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. f f f f f f f f f f f f f f f f f f d d f f f d1 d f f f f f d d f d2 d f f f f } |  i | d3 ƒ d  S(4   Ni  i  i	  i
  i  i   t   fromi  t
   __future__t   importi  t
   generatorsi   R,   i  i  R(   R   i  i   R)   i   R*   i   R+   i#  i   i  i  R-   i9  i$  i%  i&  i'  i)  i*  i+  i,  i-  i.  i/  i0  i1  i   R.   i  R/   i   i    s   def f():
  return 1
  yield 1(   R$   R   R&   (   R   R$   (    (    R   t   test_illegal_yield_2ò   s    ÿ ä<c         C   s•   d d d d d d d d
 d d d d d d d d d d d d d  f f f f f f f f f f f f f d! f f d" f f d# f } |  i | d ƒ d  S($   Ni  i  i	  i
  i  i   R   i#   s   >>i"  i#  i$  i%  i'  i(  i)  i*  i+  i,  i-  i.  i/  t   fpi   t   ,i   R,   i    s   print >>fp,(   i   s   print(   i#   s   >>(   i   s   fp(   i   R7   (   i   R,   (   i    R,   (   R$   R   R&   (   R   R$   (    (    R   t   test_print_chevron_comma2  s    c         C   sÑ   d d d d d d d d d	 d
 d d d d d d f f f f f f f f f f f f f d d d d d d d d d	 d
 d d d d d d f f f f f f f f f f f f f f d d f } |  i | d ƒ d  S(   Ni  i7  i"  i#  i$  i%  i'  i(  i)  i*  i+  i,  i-  i.  i/  i   R   i   R7   t   ci   R,   i    s   a,,c(   i   R   (   i   R7   (   i   R7   (   i   R9   (   i   R,   (   i    R,   (   R$   R   R&   (   R   R$   (    (    R   t   test_a_comma_comma_cI  s    ½c         C   sò   d d d d d d d d d	 d
 d d d d d d d d d d f f f f f f f f f f f f f f d d f d d d d	 d
 d d d d d d d d d d  f f f f f f f f f f f f f f f f d! f f d" f } |  i | d ƒ d  S(#   Ni  i  i	  i
  i  i8  i#  i$  i%  i&  i(  i)  i*  i+  i,  i-  i.  i/  i0  i   R   i  i%   s   $=t   bi   R,   i    s   a $= b(   i   R   (   i%   s   $=(   i   R;   (   i   R,   (   i    R,   (   R$   R   R&   (   R   R$   (    (    R   t   test_illegal_operatord  s    Þc         C   sA   d d d d d d f f d f f d d f } |  i | d ƒ d  S(   Ni  i  i	  i
  i  i   t   fooi   R,   i    s   malformed global ast(   i   R=   (   i   R,   (   i   R,   (   i    R,   (   R$   R   R&   (   R   R$   (    (    R   t   test_malformed_global…  s    -(
   R!   R"   R&   R'   R0   R5   R8   R:   R<   R>   (    (    (    R   R#   ­   s   			7	@			!c           C   s   t  i t t ƒ d  S(   N(   t   test_supportt   run_unittestR    R#   (    (    (    R   t	   test_main  s    	t   __main__(	   R   t   unittestt   testR?   t   TestCaseR    R#   RA   R!   (   R?   RC   R   R#   R    RA   (    (    R   t   ?   s   		¢ã	