Diff
Modified: trunk/Tools/ChangeLog (95256 => 95257)
--- trunk/Tools/ChangeLog 2011-09-16 01:54:35 UTC (rev 95256)
+++ trunk/Tools/ChangeLog 2011-09-16 02:03:20 UTC (rev 95257)
@@ -1,5 +1,16 @@
2011-09-15 Tom Zakrajsek <t...@codeaurora.org>
+ UpdateChangeLogsWithReviewer should be able to determine reviewer of latest reviewed patch in a bug
+ https://bugs.webkit.org/show_bug.cgi?id=68003
+
+ Reviewed by Adam Barth.
+
+ * Scripts/webkitpy/tool/mocktool.py:
+ * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:
+ * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:
+
+2011-09-15 Tom Zakrajsek <t...@codeaurora.org>
+
Python version check is confusing in test-webkitpy
https://bugs.webkit.org/show_bug.cgi?id=68004
Modified: trunk/Tools/Scripts/webkitpy/tool/mocktool.py (95256 => 95257)
--- trunk/Tools/Scripts/webkitpy/tool/mocktool.py 2011-09-16 01:54:35 UTC (rev 95256)
+++ trunk/Tools/Scripts/webkitpy/tool/mocktool.py 2011-09-16 02:03:20 UTC (rev 95257)
@@ -73,7 +73,7 @@
"is_obsolete": False,
"is_patch": True,
"review": "+",
- "reviewer_email": "f...@bar.com",
+ "reviewer_email": "review...@webkit.org",
"commit-queue": "+",
"committer_email": "non-commit...@example.com",
"attacher_email": "e...@webkit.org",
@@ -247,7 +247,8 @@
return [self._bugzilla.fetch_bug(78), self._bugzilla.fetch_bug(77)]
-_mock_reviewer = Reviewer("Foo Bar", "f...@bar.com")
+_mock_reviewers = [Reviewer("Foo Bar", "f...@bar.com"),
+ Reviewer("Reviewer2", "review...@webkit.org")]
# FIXME: Bugzilla is the wrong Mock-point. Once we have a BugzillaNetwork
@@ -269,7 +270,7 @@
def __init__(self):
self.queries = MockBugzillaQueries(self)
- self.committers = CommitterList(reviewers=[_mock_reviewer])
+ self.committers = CommitterList(reviewers=_mock_reviewers)
self._override_patch = None
def create_bug(self,
@@ -622,7 +623,7 @@
pass
def suggested_reviewers(self, git_commit, changed_files=None):
- return [_mock_reviewer]
+ return [_mock_reviewers[0]]
class MockUser(object):
Modified: trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py (95256 => 95257)
--- trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py 2011-09-16 01:54:35 UTC (rev 95256)
+++ trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py 2011-09-16 02:03:20 UTC (rev 95257)
@@ -36,9 +36,15 @@
def test_guess_reviewer_from_bug(self):
capture = OutputCapture()
step = UpdateChangeLogsWithReviewer(MockTool(), MockOptions())
- expected_stderr = "0 reviewed patches on bug 75, cannot infer reviewer.\n"
+ expected_stderr = "No reviewed patches on bug 75, cannot infer reviewer.\n"
capture.assert_outputs(self, step._guess_reviewer_from_bug, [75], expected_stderr=expected_stderr)
+ def test_guess_reviewer_from_multipatch_bug(self):
+ capture = OutputCapture()
+ step = UpdateChangeLogsWithReviewer(MockTool(), MockOptions())
+ expected_stderr = "Guessing \"Reviewer2\" as reviewer from attachment 128 on bug 42.\n"
+ capture.assert_outputs(self, step._guess_reviewer_from_bug, [42], expected_stderr=expected_stderr)
+
def test_empty_state(self):
capture = OutputCapture()
options = MockOptions()
Modified: trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py (95256 => 95257)
--- trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py 2011-09-16 01:54:35 UTC (rev 95256)
+++ trunk/Tools/Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py 2011-09-16 02:03:20 UTC (rev 95257)
@@ -44,10 +44,10 @@
def _guess_reviewer_from_bug(self, bug_id):
patches = self._tool.bugs.fetch_bug(bug_id).reviewed_patches()
- if len(patches) != 1:
- log("%s on bug %s, cannot infer reviewer." % (pluralize("reviewed patch", len(patches)), bug_id))
+ if not patches:
+ log("%s on bug %s, cannot infer reviewer." % ("No reviewed patches", bug_id))
return None
- patch = patches[0]
+ patch = patches[-1]
log("Guessing \"%s\" as reviewer from attachment %s on bug %s." % (patch.reviewer().full_name, patch.id(), bug_id))
return patch.reviewer().full_name