Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(470)

Side by Side Diff: media/tools/layout_tests/bug.py

Issue 7693018: Intial checkin of layout test analyzer. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Minor modifications. Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 #!/usr/bin/python
2 # Copyright (c) 2011 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 import re
7
8
9 class Bug:
10 """A class representing a bug.
11
12 TODO(imasaki): add more functionalities here if bug-tracker API is available.
13 For example, you can get the name bug owner.
dennis_jeffrey 2011/08/24 17:40:47 'name bug' --> 'name of a bug'
imasaki1 2011/08/25 23:57:03 Done.
14 """
15 CHROME_BUG_URL = 'http://crbug.com/'
16 WEBKIT_BUG_URL = 'http://webkit.org/b/'
17 # Type enum for the bug.
18 WEBKIT = 0
19 CHROMIUM = 1
20 OTHERS = 2
21
22 def __init__(self, bug_txt):
23 """Initialize the object using raw bug text (such as BUGWK2322).
24
25 The raw bug text is used in the test expectation file. According to
26 http://trac.webkit.org/wiki/TestExpectations#Modifiers, currently,
27 BUGWK12345, BUGCR12345, BUGV8_12345, BUGDPRANKE are possible.
dennis_jeffrey 2011/08/24 17:40:47 It looks like the "raw bug text" and the "modifier
imasaki1 2011/08/25 23:57:03 Done.
28 """
29 self.bug_txt = bug_txt
30 pattern_for_webkit_bug = r'BUGWK(\d+)'
31 match = re.search(pattern_for_webkit_bug, bug_txt)
32 if match:
33 self.type = self.WEBKIT
34 self.url = self.WEBKIT_BUG_URL + match.group(1)
35 return
36 pattern_for_chrome_bug = r'BUGCR(\d+)'
37 match = re.search(pattern_for_chrome_bug, bug_txt)
38 if match:
39 self.type = self.CHROMIUM
40 self.url = self.CHROME_BUG_URL + match.group(1)
41 return
42 pattern_for_other_bug = r'BUG(\S+)'
43 match = re.search(pattern_for_other_bug, bug_txt)
44 if match:
45 self.type = self.OTHERS
46 self.url = 'mailto:%s@chromium.org' % match.group(1).lower()
47 return
48 self.url = ''
49
50 def ToString(self):
dennis_jeffrey 2011/08/24 17:40:47 Instead of calling this function ToString, how abo
imasaki1 2011/08/25 23:57:03 Done.
51 """Get a HTML link representation of a bug.
52
53 Returns:
54 a string for HTML link representation of a bug.
55 """
56 return '<a href="%s">%s</a>' % (self.url, self.bug_txt)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698