|
4 | 4 |
|
5 | 5 | using jucc::grammar::Parser; |
6 | 6 |
|
7 | | -TEST(grammar, parser0) { |
| 7 | +TEST(grammar, Parser0) { |
8 | 8 | Parser parser = Parser("../test/grammar/grammar_test_0.g"); |
9 | 9 | ASSERT_EQ(true, parser.Parse()); |
10 | 10 | ASSERT_EQ("<primary_expression>", parser.GetStartSymbol()); |
@@ -56,115 +56,115 @@ TEST(grammar, parser0) { |
56 | 56 | ASSERT_EQ(rule3, parser.GetProductions()[0].GetRules()[0].GetEntities()); |
57 | 57 | } |
58 | 58 |
|
59 | | -TEST(grammar, parser1) { |
| 59 | +TEST(grammar, Parser1) { |
60 | 60 | Parser parser = Parser("../test/grammar/grammar_test_1.g"); |
61 | 61 | ASSERT_EQ(false, parser.Parse()); |
62 | 62 | ASSERT_EQ("grammar parsing error: invalid token %terminals", parser.GetError()); |
63 | 63 | } |
64 | 64 |
|
65 | | -TEST(grammar, parser2) { |
| 65 | +TEST(grammar, Parser2) { |
66 | 66 | Parser parser = Parser("../test/grammar/grammar_test_2.g"); |
67 | 67 | ASSERT_EQ(false, parser.Parse()); |
68 | 68 | ASSERT_EQ("grammar parsing error: invalid token %non_terminals", parser.GetError()); |
69 | 69 | } |
70 | 70 |
|
71 | | -TEST(grammar, parser3) { |
| 71 | +TEST(grammar, Parser3) { |
72 | 72 | Parser parser = Parser("../test/grammar/grammar_test_3.g"); |
73 | 73 | ASSERT_EQ(false, parser.Parse()); |
74 | 74 | ASSERT_EQ("grammar parsing error: invalid token %rules", parser.GetError()); |
75 | 75 | } |
76 | 76 |
|
77 | | -TEST(grammar, parser4) { |
| 77 | +TEST(grammar, Parser4) { |
78 | 78 | Parser parser = Parser("../test/grammar/grammar_test_4.g"); |
79 | 79 | ASSERT_EQ(false, parser.Parse()); |
80 | 80 | ASSERT_EQ("grammar parsing error: invalid token %start", parser.GetError()); |
81 | 81 | } |
82 | 82 |
|
83 | | -TEST(grammar, parser5) { |
| 83 | +TEST(grammar, Parser5) { |
84 | 84 | Parser parser = Parser("../test/grammar/grammar_test_5.g"); |
85 | 85 | ASSERT_EQ(false, parser.Parse()); |
86 | 86 | ASSERT_EQ("grammar parsing error: invalid token %", parser.GetError()); |
87 | 87 | } |
88 | 88 |
|
89 | | -TEST(grammar, parser6) { |
| 89 | +TEST(grammar, Parser6) { |
90 | 90 | Parser parser = Parser("../test/grammar/grammar_test_6.g"); |
91 | 91 | ASSERT_EQ(false, parser.Parse()); |
92 | 92 | ASSERT_EQ("grammar parsing error: invalid token outside block: bruh", parser.GetError()); |
93 | 93 | } |
94 | 94 |
|
95 | | -TEST(grammar, parser7) { |
| 95 | +TEST(grammar, Parser7) { |
96 | 96 | Parser parser = Parser("../test/grammar/grammar_test_7.g"); |
97 | 97 | ASSERT_EQ(false, parser.Parse()); |
98 | 98 | ASSERT_EQ("grammar parsing error: EPSILON is reserved", parser.GetError()); |
99 | 99 | } |
100 | 100 |
|
101 | | -TEST(grammar, parser8) { |
| 101 | +TEST(grammar, Parser8) { |
102 | 102 | Parser parser = Parser("../test/grammar/grammar_test_8.g"); |
103 | 103 | ASSERT_EQ(false, parser.Parse()); |
104 | 104 | ASSERT_EQ("grammar parsing error: EPSILON is reserved", parser.GetError()); |
105 | 105 | } |
106 | 106 |
|
107 | | -TEST(grammar, parser9) { |
| 107 | +TEST(grammar, Parser9) { |
108 | 108 | Parser parser = Parser("../test/grammar/grammar_test_9.g"); |
109 | 109 | ASSERT_EQ(false, parser.Parse()); |
110 | 110 | ASSERT_EQ("grammar parsing error: ambiguous start symbol", parser.GetError()); |
111 | 111 | } |
112 | 112 |
|
113 | | -TEST(grammar, parser10) { |
| 113 | +TEST(grammar, Parser10) { |
114 | 114 | Parser parser = Parser("../test/grammar/grammar_test_10.g"); |
115 | 115 | ASSERT_EQ(false, parser.Parse()); |
116 | 116 | ASSERT_EQ("grammar parsing error: production cannot start with EPSILON", parser.GetError()); |
117 | 117 | } |
118 | 118 |
|
119 | | -TEST(grammar, parser11) { |
| 119 | +TEST(grammar, Parser11) { |
120 | 120 | Parser parser = Parser("../test/grammar/grammar_test_11.g"); |
121 | 121 | ASSERT_EQ(false, parser.Parse()); |
122 | 122 | ASSERT_EQ("grammar parsing error: rules syntax error ':' expected: bruh", parser.GetError()); |
123 | 123 | } |
124 | 124 |
|
125 | | -TEST(grammar, parser12) { |
| 125 | +TEST(grammar, Parser12) { |
126 | 126 | Parser parser = Parser("../test/grammar/grammar_test_12.g"); |
127 | 127 | ASSERT_EQ(false, parser.Parse()); |
128 | 128 | ASSERT_EQ("grammar parsing error: rules syntax error ':' expected", parser.GetError()); |
129 | 129 | } |
130 | 130 |
|
131 | | -TEST(grammar, parser13) { |
| 131 | +TEST(grammar, Parser13) { |
132 | 132 | Parser parser = Parser("../test/grammar/grammar_test_13.g"); |
133 | 133 | ASSERT_EQ(false, parser.Parse()); |
134 | 134 | ASSERT_EQ("grammar parsing error: block is incomplete '%' expected", parser.GetError()); |
135 | 135 | } |
136 | 136 |
|
137 | | -TEST(grammar, parser14) { |
| 137 | +TEST(grammar, Parser14) { |
138 | 138 | Parser parser = Parser("../test/grammar/grammar_test_14.g"); |
139 | 139 | ASSERT_EQ(false, parser.Parse()); |
140 | 140 | ASSERT_EQ("grammar parsing error: inconsistent or duplicate terminals", parser.GetError()); |
141 | 141 | } |
142 | 142 |
|
143 | | -TEST(grammar, parser15) { |
| 143 | +TEST(grammar, Parser15) { |
144 | 144 | Parser parser = Parser("../test/grammar/grammar_test_15.g"); |
145 | 145 | ASSERT_EQ(false, parser.Parse()); |
146 | 146 | ASSERT_EQ("grammar parsing error: inconsistent or duplicate non_terminals", parser.GetError()); |
147 | 147 | } |
148 | 148 |
|
149 | | -TEST(grammar, parser16) { |
| 149 | +TEST(grammar, Parser16) { |
150 | 150 | Parser parser = Parser("../test/grammar/grammar_test_16.g"); |
151 | 151 | ASSERT_EQ(false, parser.Parse()); |
152 | 152 | ASSERT_EQ("grammar parsing error: terminals and non_terminals not disjoint", parser.GetError()); |
153 | 153 | } |
154 | 154 |
|
155 | | -TEST(grammar, parser17) { |
| 155 | +TEST(grammar, Parser17) { |
156 | 156 | Parser parser = Parser("../test/grammar/grammar_test_17.g"); |
157 | 157 | ASSERT_EQ(false, parser.Parse()); |
158 | 158 | ASSERT_EQ("grammar parsing error: non_terminal not found: <bruh>", parser.GetError()); |
159 | 159 | } |
160 | 160 |
|
161 | | -TEST(grammar, parser18) { |
| 161 | +TEST(grammar, Parser18) { |
162 | 162 | Parser parser = Parser("../test/grammar/grammar_test_18.g"); |
163 | 163 | ASSERT_EQ(false, parser.Parse()); |
164 | 164 | ASSERT_EQ("grammar parsing error: rule token is not defined: bruh", parser.GetError()); |
165 | 165 | } |
166 | 166 |
|
167 | | -TEST(grammar, parser19) { |
| 167 | +TEST(grammar, Parser19) { |
168 | 168 | Parser parser = Parser("invalid_file_path"); |
169 | 169 | ASSERT_EQ(false, parser.Parse()); |
170 | 170 | ASSERT_EQ("grammar parsing error: file not found", parser.GetError()); |
|
0 commit comments