| test_parser |
| Expressions: |
| expr: foo(1) |
| expr: [1, 2, 3] |
| expr: [x**3 for x in range(20)] |
| expr: [x**3 for x in range(20) if x % 3] |
| expr: foo(*args) |
| expr: foo(*args, **kw) |
| expr: foo(**kw) |
| expr: foo(key=value) |
| expr: foo(key=value, *args) |
| expr: foo(key=value, *args, **kw) |
| expr: foo(key=value, **kw) |
| expr: foo(a, b, c, *args) |
| expr: foo(a, b, c, *args, **kw) |
| expr: foo(a, b, c, **kw) |
| expr: foo + bar |
| expr: lambda: 0 |
| expr: lambda x: 0 |
| expr: lambda *y: 0 |
| expr: lambda *y, **z: 0 |
| expr: lambda **z: 0 |
| expr: lambda x, y: 0 |
| expr: lambda foo=bar: 0 |
| expr: lambda foo=bar, spaz=nifty+spit: 0 |
| expr: lambda foo=bar, **z: 0 |
| expr: lambda foo=bar, blaz=blat+2, **z: 0 |
| expr: lambda foo=bar, blaz=blat+2, *y, **z: 0 |
| expr: lambda x, *y, **z: 0 |
| |
| Statements: |
| suite: print |
| suite: print 1 |
| suite: print 1, |
| suite: print >>fp |
| suite: print >>fp, 1 |
| suite: print >>fp, 1, |
| suite: a |
| suite: a = b |
| suite: a = b = c = d = e |
| suite: a += b |
| suite: a -= b |
| suite: a *= b |
| suite: a /= b |
| suite: a %= b |
| suite: a &= b |
| suite: a |= b |
| suite: a ^= b |
| suite: a <<= b |
| suite: a >>= b |
| suite: a **= b |
| suite: def f(): pass |
| suite: def f(*args): pass |
| suite: def f(*args, **kw): pass |
| suite: def f(**kw): pass |
| suite: def f(foo=bar): pass |
| suite: def f(foo=bar, *args): pass |
| suite: def f(foo=bar, *args, **kw): pass |
| suite: def f(foo=bar, **kw): pass |
| suite: def f(a, b): pass |
| suite: def f(a, b, *args): pass |
| suite: def f(a, b, *args, **kw): pass |
| suite: def f(a, b, **kw): pass |
| suite: def f(a, b, foo=bar): pass |
| suite: def f(a, b, foo=bar, *args): pass |
| suite: def f(a, b, foo=bar, *args, **kw): pass |
| suite: def f(a, b, foo=bar, **kw): pass |
| suite: from sys.path import * |
| suite: from sys.path import dirname |
| suite: from sys.path import dirname as my_dirname |
| suite: from sys.path import dirname, basename |
| suite: from sys.path import dirname as my_dirname, basename |
| suite: from sys.path import dirname, basename as my_basename |
| suite: import sys |
| suite: import sys as system |
| suite: import sys, math |
| suite: import sys as system, math |
| suite: import sys, math as my_math |
| |
| Invalid parse trees: |
| |
| <junk> |
| caught expected exception for invalid tree |
| |
| print >>fp, |
| caught expected exception for invalid tree |
| |
| a,,c |
| caught expected exception for invalid tree |
| |
| a $= b |
| caught expected exception for invalid tree |