Skip to content

Commit 93df0e9

Browse files
committed
Add another test case
1 parent 0cfda33 commit 93df0e9

File tree

3 files changed

+101
-3
lines changed

3 files changed

+101
-3
lines changed

parser/test_data/inputs/binary_op.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,5 @@
3333
1 ^ 2 + 3
3434

3535
3 + (1 + 2) * 3
36+
37+
(3 + 1) * 2**3 + 1

parser/test_data/output/enderpy_python_parser__lexer__tests__snapshot_test_lexer_and_errors@binary_op.py.snap

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
source: parser/src/lexer/mod.rs
3-
description: "1 + 2\n\n1 - 2\n\n1 * 2\n\n1 / 2\n\n1 // 2\n\n1 % 2\n\n1**2\n\n1 << 2\n\n1 >> 2\n\n1 & 2\n\n1 ^ 2\n\n1 | 2\n\n1 | 2 | 3\n\n1 @ 2\n\n1 + 2 * 3\n\n1 * 2 + 3\n\n1 ^ 2 + 3\n\n3 + (1 + 2) * 3\n"
3+
description: "1 + 2\n\n1 - 2\n\n1 * 2\n\n1 / 2\n\n1 // 2\n\n1 % 2\n\n1**2\n\n1 << 2\n\n1 >> 2\n\n1 & 2\n\n1 ^ 2\n\n1 | 2\n\n1 | 2 | 3\n\n1 @ 2\n\n1 + 2 * 3\n\n1 * 2 + 3\n\n1 ^ 2 + 3\n\n3 + (1 + 2) * 3\n\n(3 + 1) * 2**3 + 1\n"
44
input_file: parser/test_data/inputs/binary_op.py
55
---
66
0,1: Integer 1
@@ -106,3 +106,16 @@ input_file: parser/test_data/inputs/binary_op.py
106106
149,150: *
107107
151,152: Integer 3
108108
152,153: NewLine
109+
153,154: NL
110+
154,155: (
111+
155,156: Integer 3
112+
157,158: +
113+
159,160: Integer 1
114+
160,161: )
115+
162,163: *
116+
164,165: Integer 2
117+
165,167: **
118+
167,168: Integer 3
119+
169,170: +
120+
171,172: Integer 1
121+
172,173: NewLine

parser/test_data/output/enderpy_python_parser__parser__parser__tests__binary_op.snap

Lines changed: 85 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
source: parser/src/parser/parser.rs
3-
description: "test file: test_data/inputs/binary_op.py\n1 + 2\n\n1 - 2\n\n1 * 2\n\n1 / 2\n\n1 // 2\n\n1 % 2\n\n1**2\n\n1 << 2\n\n1 >> 2\n\n1 & 2\n\n1 ^ 2\n\n1 | 2\n\n1 | 2 | 3\n\n1 @ 2\n\n1 + 2 * 3\n\n1 * 2 + 3\n\n1 ^ 2 + 3\n\n3 + (1 + 2) * 3\n"
3+
description: "test file: test_data/inputs/binary_op.py\n1 + 2\n\n1 - 2\n\n1 * 2\n\n1 / 2\n\n1 // 2\n\n1 % 2\n\n1**2\n\n1 << 2\n\n1 >> 2\n\n1 & 2\n\n1 ^ 2\n\n1 | 2\n\n1 | 2 | 3\n\n1 @ 2\n\n1 + 2 * 3\n\n1 * 2 + 3\n\n1 ^ 2 + 3\n\n3 + (1 + 2) * 3\n\n(3 + 1) * 2**3 + 1\n"
44
---
55
Module {
66
node: Node {
77
start: 0,
8-
end: 153,
8+
end: 173,
99
},
1010
body: [
1111
ExpressionStatement(
@@ -638,5 +638,88 @@ Module {
638638
},
639639
),
640640
),
641+
ExpressionStatement(
642+
BinOp(
643+
BinOp {
644+
node: Node {
645+
start: 154,
646+
end: 172,
647+
},
648+
op: Add,
649+
left: BinOp(
650+
BinOp {
651+
node: Node {
652+
start: 154,
653+
end: 168,
654+
},
655+
op: Mult,
656+
left: BinOp(
657+
BinOp {
658+
node: Node {
659+
start: 155,
660+
end: 160,
661+
},
662+
op: Add,
663+
left: Constant(
664+
Constant {
665+
node: Node {
666+
start: 155,
667+
end: 156,
668+
},
669+
value: Int,
670+
},
671+
),
672+
right: Constant(
673+
Constant {
674+
node: Node {
675+
start: 159,
676+
end: 160,
677+
},
678+
value: Int,
679+
},
680+
),
681+
},
682+
),
683+
right: BinOp(
684+
BinOp {
685+
node: Node {
686+
start: 164,
687+
end: 168,
688+
},
689+
op: Pow,
690+
left: Constant(
691+
Constant {
692+
node: Node {
693+
start: 164,
694+
end: 165,
695+
},
696+
value: Int,
697+
},
698+
),
699+
right: Constant(
700+
Constant {
701+
node: Node {
702+
start: 167,
703+
end: 168,
704+
},
705+
value: Int,
706+
},
707+
),
708+
},
709+
),
710+
},
711+
),
712+
right: Constant(
713+
Constant {
714+
node: Node {
715+
start: 171,
716+
end: 172,
717+
},
718+
value: Int,
719+
},
720+
),
721+
},
722+
),
723+
),
641724
],
642725
}

0 commit comments

Comments
 (0)