comparison python/testc3.py @ 186:46d62dadd61b

Improved testsuite
author Windel Bouwman
date Sat, 25 May 2013 14:26:25 +0200
parents e9b27f7193e3
children bf5ab358f43a
comparison
equal deleted inserted replaced
185:51a6440d6398 186:46d62dadd61b
136 } 136 }
137 """ 137 """
138 self.diag.clear() 138 self.diag.clear()
139 ir = self.builder.build(snippet) 139 ir = self.builder.build(snippet)
140 assert len(self.diag.diags) == 3 140 assert len(self.diag.diags) == 3
141 assert self.diag.diags[0].loc.row == 8 141 self.assertEqual(self.diag.diags[0].loc.row, 8)
142 assert self.diag.diags[1].loc.row == 9 142 self.assertEqual(self.diag.diags[1].loc.row, 9)
143 assert self.diag.diags[2].loc.row == 10 143 self.assertEqual(self.diag.diags[2].loc.row, 10)
144 assert ir == None 144 self.assertFalse(ir)
145 def testEmpty(self): 145 def testEmpty(self):
146 snippet = """ 146 snippet = """
147 package A 147 package A
148 """ 148 """
149 self.builder.build(snippet) 149 self.builder.build(snippet)
157 var int b; 157 var int b;
158 var int a; 158 var int a;
159 """ 159 """
160 self.diag.clear() 160 self.diag.clear()
161 self.builder.build(snippet) 161 self.builder.build(snippet)
162 assert len(self.diag.diags) == 1 162 self.assertEqual(len(self.diag.diags), 1)
163 assert self.diag.diags[0].loc.row == 5 163 self.assertEqual(self.diag.diags[0].loc.row, 5)
164 def testWhile(self): 164 def testWhile(self):
165 snippet = """ 165 snippet = """
166 package tstwhile; 166 package tstwhile;
167 var int a; 167 var int a;
168 function void t() 168 function void t()
169 { 169 {
170 var int i = 0; 170 var int i = 0;
171 while (i < 1054) 171 while (i < 1054)
172 { 172 {
173 i = i + 3; 173 i = i + 3;
174 a = a + i 174 a = a + i;
175 } 175 }
176 } 176 }
177 """ 177 """
178 self.builder.build(snippet) 178 ir = self.builder.build(snippet)
179 if not ir:
180 self.diag.printErrors(snippet)
181 self.assertTrue(ir)
179 def testIf(self): 182 def testIf(self):
180 snippet = """ 183 snippet = """
181 package tstIFF; 184 package tstIFF;
182 function void t(int b) 185 function void t(int b)
183 { 186 {
196 } 199 }
197 200
198 return b; 201 return b;
199 } 202 }
200 """ 203 """
201 self.builder.build(snippet) 204 ir = self.builder.build(snippet)
205 self.assertTrue(ir)
202 def test2(self): 206 def test2(self):
203 # testsrc2 is valid code: 207 # testsrc2 is valid code:
204 self.diag.clear() 208 self.diag.clear()
205 ir = self.builder.build(testsrc2) 209 ir = self.builder.build(testsrc2)
206 print(self.diag.diags)
207 assert ir 210 assert ir
208 ir.dump() 211 #ir.dump()
209 212
210 if __name__ == '__main__': 213 if __name__ == '__main__':
211 do() 214 do()
212 unittest.main() 215 unittest.main()
213 216