Commit 4590f8b3 authored by Robert Ma's avatar Robert Ma Committed by Commit Bot

[wpt-importer] Include Pri and Type when filing bugs

These two fields have long been required and are now enforced in
Chromium. Note that in the API these are represented as labels with
specific formats.

Also add "Test-WebTest" label by the way.

Bug: 1132456
Change-Id: If8c226472f62a563a6f25f393e9dda563970de84
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2432055
Commit-Queue: Stephen McGruer <smcgruer@chromium.org>
Reviewed-by: default avatarStephen McGruer <smcgruer@chromium.org>
Auto-Submit: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#810859}
parent e9a3e3ec
...@@ -223,8 +223,11 @@ class ImportNotifier(object): ...@@ -223,8 +223,11 @@ class ImportNotifier(object):
description = prologue + failure_list + epilogue + commit_list description = prologue + failure_list + epilogue + commit_list
bug = MonorailIssue.new_chromium_issue(summary, description, cc, bug = MonorailIssue.new_chromium_issue(summary,
components) description,
cc,
components,
labels=['Test-WebTest'])
_log.info(unicode(bug)) _log.info(unicode(bug))
if is_wpt_notify_enabled: if is_wpt_notify_enabled:
......
...@@ -66,22 +66,35 @@ class MonorailIssue(object): ...@@ -66,22 +66,35 @@ class MonorailIssue(object):
return self._body return self._body
@staticmethod @staticmethod
def new_chromium_issue(summary, description='', cc=None, components=None): def new_chromium_issue(summary,
description='',
cc=None,
components=None,
priority='3',
type='Bug',
labels=None):
"""Creates a minimal new Chromium issue. """Creates a minimal new Chromium issue.
Chromium requires at least summary, priority and type: you must provide
the summary, whereas priority defaults to 3 and type defaults to Bug.
Args: Args:
summary: The summary line. summary: The summary line.
description: The issue description. description: The issue description.
cc: A list of email addresses to CC. cc: A list of email addresses to CC.
components: A list of components. components: A list of components.
priority: A string, defaults to '3'.
type: A string, defaults to 'Bug'.
labels: A list of labels (strings).
""" """
return MonorailIssue( return MonorailIssue('chromium',
'chromium', summary=summary,
summary=summary, description=description,
description=description, cc=cc or [],
cc=cc or [], components=components or [],
components=components or [], status='Untriaged',
status='Untriaged') labels=['Pri-' + priority, 'Type-' + type] +
(labels or []))
@staticmethod @staticmethod
def crbug_link(issue_id): def crbug_link(issue_id):
......
...@@ -80,16 +80,18 @@ class MonorailIssueTest(unittest.TestCase): ...@@ -80,16 +80,18 @@ class MonorailIssueTest(unittest.TestCase):
'chromium', summary='test', status='Untriaged', labels='Flaky') 'chromium', summary='test', status='Untriaged', labels='Flaky')
def test_new_chromium_issue(self): def test_new_chromium_issue(self):
issue = MonorailIssue.new_chromium_issue( issue = MonorailIssue.new_chromium_issue('test',
'test', description='body',
description='body', cc=['foo@chromium.org'],
cc=['foo@chromium.org'], components=['Infra'],
components=['Infra']) labels=['Test-WebTest'])
self.assertEqual(issue.project_id, 'chromium') self.assertEqual(issue.project_id, 'chromium')
self.assertEqual(issue.body['summary'], 'test') self.assertEqual(issue.body['summary'], 'test')
self.assertEqual(issue.body['description'], 'body') self.assertEqual(issue.body['description'], 'body')
self.assertEqual(issue.body['cc'], ['foo@chromium.org']) self.assertEqual(issue.body['cc'], ['foo@chromium.org'])
self.assertEqual(issue.body['components'], ['Infra']) self.assertEqual(issue.body['components'], ['Infra'])
self.assertEqual(issue.body['labels'],
['Pri-3', 'Type-Bug', 'Test-WebTest'])
def test_crbug_link(self): def test_crbug_link(self):
self.assertEqual( self.assertEqual(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment