OLD | NEW |
| (Empty) |
1 #!/usr/bin/python2.4 | |
2 # Copyright (c) 2010 The Chromium Authors. All rights reserved. | |
3 # Use of this source code is governed by a BSD-style license that can be | |
4 # found in the LICENSE file. | |
5 | |
6 """Unittests for the parser module.""" | |
7 | |
8 import parser | |
9 import unittest | |
10 | |
11 class TestParser(unittest.TestCase): | |
12 | |
13 def testParseInvalidLine(self): | |
14 """Should return None when fails to parse a line.""" | |
15 l = parser.ParseLine('''This is not a valid line!''') | |
16 self.assertEqual(None, l) | |
17 | |
18 | |
19 def testParseLine(self): | |
20 """Tests parsing some valid lines""" | |
21 l = parser.ParseLine( | |
22 '''t=170099840: "Received request r17 for {hostname='clients1.goog''' | |
23 '''le.lv', port=80, priority=3, speculative=0, address_family=0, ''' | |
24 '''allow_cached=1, referrer=''}"''') | |
25 self.assertEqual(parser.LINE_TYPE_RECEIVED_REQUEST, l.line_type) | |
26 self.assertEqual(170099840, l.t) | |
27 self.assertEqual('r17', l.entity_id) | |
28 | |
29 l = parser.ParseLine( | |
30 '''t=170099840: "Created job j15 for {hostname='clients1.go''' | |
31 '''ogle.lv', address_family=0}"''') | |
32 self.assertEqual(parser.LINE_TYPE_CREATED_JOB, l.line_type) | |
33 self.assertEqual(170099840, l.t) | |
34 self.assertEqual('j15', l.entity_id) | |
35 | |
36 l = parser.ParseLine('t=170099840: "Attached request r17 to job j15"') | |
37 self.assertEqual(parser.LINE_TYPE_ATTACHED_REQUEST, l.line_type) | |
38 self.assertEqual(170099840, l.t) | |
39 self.assertEqual('r17', l.entity_id) | |
40 | |
41 l = parser.ParseLine('t=170103144: "Finished request r18 with error=0"') | |
42 self.assertEqual(parser.LINE_TYPE_FINISHED_REQUEST, l.line_type) | |
43 self.assertEqual(170103144, l.t) | |
44 self.assertEqual('r18', l.entity_id) | |
45 | |
46 l = parser.ParseLine('t=170103461: "Starting job j16"') | |
47 self.assertEqual(parser.LINE_TYPE_STARTING_JOB, l.line_type) | |
48 self.assertEqual(170103461, l.t) | |
49 self.assertEqual('j16', l.entity_id) | |
50 | |
51 l = parser.ParseLine('t=170103461: "[resolver thread] Running job j1"') | |
52 self.assertEqual(parser.LINE_TYPE_RUNNING_JOB, l.line_type) | |
53 self.assertEqual(170103461, l.t) | |
54 self.assertEqual('j1', l.entity_id) | |
55 | |
56 l = parser.ParseLine('t=170110496: "[resolver thread] Completed job j6"') | |
57 self.assertEqual(parser.LINE_TYPE_COMPLETED_JOB, l.line_type) | |
58 self.assertEqual(170110496, l.t) | |
59 self.assertEqual('j6', l.entity_id) | |
60 | |
61 l = parser.ParseLine('t=170110496: "Completing job j4"') | |
62 self.assertEqual(parser.LINE_TYPE_COMPLETING_JOB, l.line_type) | |
63 self.assertEqual(170110496, l.t) | |
64 self.assertEqual('j4', l.entity_id) | |
65 | |
66 l = parser.ParseLine('t=170110496: "Cancelled request r9"') | |
67 self.assertEqual(parser.LINE_TYPE_CANCELLED_REQUEST, l.line_type) | |
68 self.assertEqual(170110496, l.t) | |
69 self.assertEqual('r9', l.entity_id) | |
70 | |
71 | |
72 if __name__ == '__main__': | |
73 unittest.main() | |
OLD | NEW |