| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 | 2 |
| 3 import unittest | 3 import unittest |
| 4 | 4 |
| 5 import common | 5 import common |
| 6 from autotest_lib.client.common_lib.test_utils import mock | 6 from autotest_lib.client.common_lib.test_utils import mock |
| 7 from autotest_lib.tko import models | 7 from autotest_lib.tko import models |
| 8 from autotest_lib.tko.parsers import version_0 | 8 from autotest_lib.tko.parsers import version_0 |
| 9 | 9 |
| 10 | 10 |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 223 self.assertEquals(line.type, "STATUS") | 223 self.assertEquals(line.type, "STATUS") |
| 224 self.assertEquals(line.status, "GOOD") | 224 self.assertEquals(line.status, "GOOD") |
| 225 self.assertEquals(line.subdir, None) | 225 self.assertEquals(line.subdir, None) |
| 226 self.assertEquals(line.testname, None) | 226 self.assertEquals(line.testname, None) |
| 227 self.assertEquals(line.reason, "No newline here!") | 227 self.assertEquals(line.reason, "No newline here!") |
| 228 self.assertEquals(line.optional_fields, | 228 self.assertEquals(line.optional_fields, |
| 229 {"field1": "val1", | 229 {"field1": "val1", |
| 230 "field2": "val2"}) | 230 "field2": "val2"}) |
| 231 | 231 |
| 232 | 232 |
| 233 def test_parse_line_handles_embedded_new_lines(self): |
| 234 input_data = ("\tEND FAIL\t----\ttest\tfield1=val1\tStatus\nwith\n" |
| 235 "embedded\nnew lines\n") |
| 236 |
| 237 line = version_0.status_line.parse_line(input_data) |
| 238 self.assertEquals(line.indent, 1) |
| 239 self.assertEquals(line.type, "END") |
| 240 self.assertEquals(line.status, "FAIL") |
| 241 self.assertEquals(line.subdir, None) |
| 242 self.assertEquals(line.testname, "test") |
| 243 self.assertEquals(line.reason, "Status\nwith\nembedded\nnew lines") |
| 244 self.assertEquals(line.optional_fields, {"field1": "val1"}) |
| 245 |
| 246 |
| 233 def test_parse_line_fails_on_untabbed_lines(self): | 247 def test_parse_line_fails_on_untabbed_lines(self): |
| 234 input_data = " GOOD\trandom\tfields\tof text" | 248 input_data = " GOOD\trandom\tfields\tof text" |
| 235 line = version_0.status_line.parse_line(input_data) | 249 line = version_0.status_line.parse_line(input_data) |
| 236 self.assertEquals(line, None) | 250 self.assertEquals(line, None) |
| 237 line = version_0.status_line.parse_line(input_data.lstrip()) | 251 line = version_0.status_line.parse_line(input_data.lstrip()) |
| 238 self.assertEquals(line.indent, 0) | 252 self.assertEquals(line.indent, 0) |
| 239 self.assertEquals(line.type, "STATUS") | 253 self.assertEquals(line.type, "STATUS") |
| 240 self.assertEquals(line.status, "GOOD") | 254 self.assertEquals(line.status, "GOOD") |
| 241 self.assertEquals(line.subdir, "random") | 255 self.assertEquals(line.subdir, "random") |
| 242 self.assertEquals(line.testname, "fields") | 256 self.assertEquals(line.testname, "fields") |
| (...skipping 18 matching lines...) Expand all Loading... |
| 261 | 275 |
| 262 def test_parse_line_fails_on_bad_optional_fields(self): | 276 def test_parse_line_fails_on_bad_optional_fields(self): |
| 263 input_data = "GOOD\tfield1\tfield2\tfield3\tfield4" | 277 input_data = "GOOD\tfield1\tfield2\tfield3\tfield4" |
| 264 self.assertRaises(AssertionError, | 278 self.assertRaises(AssertionError, |
| 265 version_0.status_line.parse_line, | 279 version_0.status_line.parse_line, |
| 266 input_data) | 280 input_data) |
| 267 | 281 |
| 268 | 282 |
| 269 if __name__ == "__main__": | 283 if __name__ == "__main__": |
| 270 unittest.main() | 284 unittest.main() |
| OLD | NEW |