From e576ade39b6918335e33542cc4bbf18636dae1c4 Mon Sep 17 00:00:00 2001 From: bronku Date: Fri, 28 Nov 2025 09:42:58 +0100 Subject: [PATCH] tdd this shit --- test/parser/{1.in => 01.in} | 0 test/parser/{1.out => 01.out} | 0 test/parser/02.in | 1 + test/parser/02.out | 5 +++++ test/parser/03.in | 2 ++ test/parser/03.out | 5 +++++ test/parser/04.in | 1 + test/parser/04.out | 3 +++ test/parser/05.in | 1 + test/parser/05.out | 4 ++++ test/parser/06.in | 1 + test/parser/06.out | 7 +++++++ test/parser/07.in | 1 + test/parser/07.out | 7 +++++++ test/parser/08.in | 1 + test/parser/08.out | 4 ++++ test/parser/09.in | 1 + test/parser/09.out | 6 ++++++ test/parser/10.in | 1 + test/parser/10.out | 4 ++++ test/parser/11.in | 2 ++ test/parser/11.out | 6 ++++++ test/parser/12.in | 4 ++++ test/parser/12.out | 10 ++++++++++ test/parser/13.in | 2 ++ test/parser/13.out | 7 +++++++ test/parser/14.in | 2 ++ test/parser/14.out | 8 ++++++++ test/parser/15.in | 1 + test/parser/15.out | 6 ++++++ 30 files changed, 103 insertions(+) rename test/parser/{1.in => 01.in} (100%) rename test/parser/{1.out => 01.out} (100%) create mode 100644 test/parser/02.in create mode 100644 test/parser/02.out create mode 100644 test/parser/03.in create mode 100644 test/parser/03.out create mode 100644 test/parser/04.in create mode 100644 test/parser/04.out create mode 100644 test/parser/05.in create mode 100644 test/parser/05.out create mode 100644 test/parser/06.in create mode 100644 test/parser/06.out create mode 100644 test/parser/07.in create mode 100644 test/parser/07.out create mode 100644 test/parser/08.in create mode 100644 test/parser/08.out create mode 100644 test/parser/09.in create mode 100644 test/parser/09.out create mode 100644 test/parser/10.in create mode 100644 test/parser/10.out create mode 100644 test/parser/11.in create mode 100644 test/parser/11.out create mode 100644 test/parser/12.in create mode 100644 test/parser/12.out create mode 100644 test/parser/13.in create mode 100644 test/parser/13.out create mode 100644 test/parser/14.in create mode 100644 test/parser/14.out create mode 100644 test/parser/15.in create mode 100644 test/parser/15.out diff --git a/test/parser/1.in b/test/parser/01.in similarity index 100% rename from test/parser/1.in rename to test/parser/01.in diff --git a/test/parser/1.out b/test/parser/01.out similarity index 100% rename from test/parser/1.out rename to test/parser/01.out diff --git a/test/parser/02.in b/test/parser/02.in new file mode 100644 index 0000000..2a6c27d --- /dev/null +++ b/test/parser/02.in @@ -0,0 +1 @@ +5 + 3 \ No newline at end of file diff --git a/test/parser/02.out b/test/parser/02.out new file mode 100644 index 0000000..e1c6666 --- /dev/null +++ b/test/parser/02.out @@ -0,0 +1,5 @@ +Module + ExprStmt + BinOp(+) + Number(5) + Number(3) \ No newline at end of file diff --git a/test/parser/03.in b/test/parser/03.in new file mode 100644 index 0000000..fec73e4 --- /dev/null +++ b/test/parser/03.in @@ -0,0 +1,2 @@ +42 +17 \ No newline at end of file diff --git a/test/parser/03.out b/test/parser/03.out new file mode 100644 index 0000000..1f17b54 --- /dev/null +++ b/test/parser/03.out @@ -0,0 +1,5 @@ +Module + ExprStmt + Number(42) + ExprStmt + Number(17) \ No newline at end of file diff --git a/test/parser/04.in b/test/parser/04.in new file mode 100644 index 0000000..c1b0730 --- /dev/null +++ b/test/parser/04.in @@ -0,0 +1 @@ +x \ No newline at end of file diff --git a/test/parser/04.out b/test/parser/04.out new file mode 100644 index 0000000..a9c5d90 --- /dev/null +++ b/test/parser/04.out @@ -0,0 +1,3 @@ +Module + ExprStmt + Identifier(x) \ No newline at end of file diff --git a/test/parser/05.in b/test/parser/05.in new file mode 100644 index 0000000..f428463 --- /dev/null +++ b/test/parser/05.in @@ -0,0 +1 @@ +x = 5 \ No newline at end of file diff --git a/test/parser/05.out b/test/parser/05.out new file mode 100644 index 0000000..578e70b --- /dev/null +++ b/test/parser/05.out @@ -0,0 +1,4 @@ +Module + Assign + Identifier(x) + Number(5) \ No newline at end of file diff --git a/test/parser/06.in b/test/parser/06.in new file mode 100644 index 0000000..ebb4b17 --- /dev/null +++ b/test/parser/06.in @@ -0,0 +1 @@ +2 + 3 * 4 \ No newline at end of file diff --git a/test/parser/06.out b/test/parser/06.out new file mode 100644 index 0000000..1dd2af1 --- /dev/null +++ b/test/parser/06.out @@ -0,0 +1,7 @@ +Module + ExprStmt + BinOp(+) + Number(2) + BinOp(*) + Number(3) + Number(4) \ No newline at end of file diff --git a/test/parser/07.in b/test/parser/07.in new file mode 100644 index 0000000..04f421b --- /dev/null +++ b/test/parser/07.in @@ -0,0 +1 @@ +(2 + 3) * 4 \ No newline at end of file diff --git a/test/parser/07.out b/test/parser/07.out new file mode 100644 index 0000000..45cc2c1 --- /dev/null +++ b/test/parser/07.out @@ -0,0 +1,7 @@ +Module + ExprStmt + BinOp(*) + BinOp(+) + Number(2) + Number(3) + Number(4) \ No newline at end of file diff --git a/test/parser/08.in b/test/parser/08.in new file mode 100644 index 0000000..a57d168 --- /dev/null +++ b/test/parser/08.in @@ -0,0 +1 @@ +foo() \ No newline at end of file diff --git a/test/parser/08.out b/test/parser/08.out new file mode 100644 index 0000000..79ea811 --- /dev/null +++ b/test/parser/08.out @@ -0,0 +1,4 @@ +Module + ExprStmt + Call + Identifier(foo) \ No newline at end of file diff --git a/test/parser/09.in b/test/parser/09.in new file mode 100644 index 0000000..ec04ab7 --- /dev/null +++ b/test/parser/09.in @@ -0,0 +1 @@ +foo(1, 2) \ No newline at end of file diff --git a/test/parser/09.out b/test/parser/09.out new file mode 100644 index 0000000..faa9903 --- /dev/null +++ b/test/parser/09.out @@ -0,0 +1,6 @@ +Module + ExprStmt + Call + Identifier(foo) + Number(1) + Number(2) \ No newline at end of file diff --git a/test/parser/10.in b/test/parser/10.in new file mode 100644 index 0000000..53002b5 --- /dev/null +++ b/test/parser/10.in @@ -0,0 +1 @@ +obj.method \ No newline at end of file diff --git a/test/parser/10.out b/test/parser/10.out new file mode 100644 index 0000000..b803e5c --- /dev/null +++ b/test/parser/10.out @@ -0,0 +1,4 @@ +Module + ExprStmt + Attribute(.method) + Identifier(obj) \ No newline at end of file diff --git a/test/parser/11.in b/test/parser/11.in new file mode 100644 index 0000000..25d8bf3 --- /dev/null +++ b/test/parser/11.in @@ -0,0 +1,2 @@ +if x: + y = 5 \ No newline at end of file diff --git a/test/parser/11.out b/test/parser/11.out new file mode 100644 index 0000000..52d2083 --- /dev/null +++ b/test/parser/11.out @@ -0,0 +1,6 @@ +Module + If + Identifier(x) + Assign + Identifier(y) + Number(5) \ No newline at end of file diff --git a/test/parser/12.in b/test/parser/12.in new file mode 100644 index 0000000..a5a3317 --- /dev/null +++ b/test/parser/12.in @@ -0,0 +1,4 @@ +if x: + y = 5 +else: + y = 10 \ No newline at end of file diff --git a/test/parser/12.out b/test/parser/12.out new file mode 100644 index 0000000..bad50c7 --- /dev/null +++ b/test/parser/12.out @@ -0,0 +1,10 @@ +Module + If + Identifier(x) + Assign + Identifier(y) + Number(5) + Else + Assign + Identifier(y) + Number(10) \ No newline at end of file diff --git a/test/parser/13.in b/test/parser/13.in new file mode 100644 index 0000000..0526925 --- /dev/null +++ b/test/parser/13.in @@ -0,0 +1,2 @@ +for i in items: + print(i) \ No newline at end of file diff --git a/test/parser/13.out b/test/parser/13.out new file mode 100644 index 0000000..5b41859 --- /dev/null +++ b/test/parser/13.out @@ -0,0 +1,7 @@ +Module + For(i) + Identifier(items) + ExprStmt + Call + Identifier(print) + Identifier(i) \ No newline at end of file diff --git a/test/parser/14.in b/test/parser/14.in new file mode 100644 index 0000000..19cf2a0 --- /dev/null +++ b/test/parser/14.in @@ -0,0 +1,2 @@ +def add(a, b): + return a + b \ No newline at end of file diff --git a/test/parser/14.out b/test/parser/14.out new file mode 100644 index 0000000..fb5706a --- /dev/null +++ b/test/parser/14.out @@ -0,0 +1,8 @@ +Module + FunctionDef(add) + Param(a) + Param(b) + Return + BinOp(+) + Identifier(a) + Identifier(b) \ No newline at end of file diff --git a/test/parser/15.in b/test/parser/15.in new file mode 100644 index 0000000..6001c44 --- /dev/null +++ b/test/parser/15.in @@ -0,0 +1 @@ +[1, 2, 3] \ No newline at end of file diff --git a/test/parser/15.out b/test/parser/15.out new file mode 100644 index 0000000..e2352d2 --- /dev/null +++ b/test/parser/15.out @@ -0,0 +1,6 @@ +Module + ExprStmt + List + Number(1) + Number(2) + Number(3) \ No newline at end of file