11package parser
22
33import (
4+ "flag"
45 "testing"
56
67 "github.com/ncw/gpython/ast"
78)
89
10+ var debugLevel = flag .Int ("debugLevel" , 0 , "Debug level 0-4" )
11+
912// FIXME test pos is correct
1013
1114func TestGrammar (t * testing.T ) {
15+ SetDebug (* debugLevel )
1216 for _ , test := range []struct {
1317 in string
1418 mode string
@@ -32,8 +36,12 @@ func TestGrammar(t *testing.T) {
3236 {"1234" , "eval" , "Expression(body=Num(n=1234))" },
3337 {"0x1234" , "eval" , "Expression(body=Num(n=4660))" },
3438 {"12.34" , "eval" , "Expression(body=Num(n=12.34))" },
39+ {"1," , "eval" , "Expression(body=Tuple(elts=[Num(n=1)], ctx=Load()))" },
40+ {"1,2" , "eval" , "Expression(body=Tuple(elts=[Num(n=1), Num(n=2)], ctx=Load()))" },
41+ {"1,2," , "eval" , "Expression(body=Tuple(elts=[Num(n=1), Num(n=2)], ctx=Load()))" },
3542 {"{ }" , "eval" , "Expression(body=Dict(keys=[], values=[]))" },
3643 {"{1}" , "eval" , "Expression(body=Set(elts=[Num(n=1)]))" },
44+ {"{1,}" , "eval" , "Expression(body=Set(elts=[Num(n=1)]))" },
3745 {"{1,2}" , "eval" , "Expression(body=Set(elts=[Num(n=1), Num(n=2)]))" },
3846 {"{1,2,3,}" , "eval" , "Expression(body=Set(elts=[Num(n=1), Num(n=2), Num(n=3)]))" },
3947 {"{ 'a':1 }" , "eval" , "Expression(body=Dict(keys=[Str(s='a')], values=[Num(n=1)]))" },
0 commit comments