Skip to content

Commit

Permalink
[webkitscmpy] Fix GitHub mock reviewing
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=273784
rdar://127615550

Reviewed by Dewei Zhu.

* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/git_hub.py:
(GitHub.request): Convert 'APPROVE' to 'APPROVED' and 'REQUEST_CHANGES' to 'CHANGES_REQUESTED'.
* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py:
(TestNetworkPullRequestGitHub.test_review):
(TestNetworkPullRequestGitHub.test_review_reject):

Canonical link: https://commits.webkit.org/278592@main
  • Loading branch information
JonWBedard committed May 9, 2024
1 parent 48aa61d commit a53feed
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -499,8 +499,12 @@ def request(self, method, url, data=None, params=None, auth=None, json=None, hea
for candidate in self.pull_requests:
if stripped_url.split('/')[5] != str(candidate['number']):
continue
state = json.get('event', 'COMMENT')
candidate['reviews'].append(
dict(user=dict(login=auth.username), state=json.get('event', 'COMMENT')),
dict(user=dict(login=auth.username), state=dict(
REQUEST_CHANGES='CHANGES_REQUESTED',
APPROVE='APPROVED',
).get(state, state)),
)
if 'body' in json:
self.issues[candidate['number']]['comments'].append(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2139,9 +2139,24 @@ def test_review(self):
self.assertEqual(pr.blockers, [Contributor('Suspicious Reviewer', ['sreviewer@webkit.org'])])

pr.review(comment='Looks good!', approve=True)

pr = repo.pull_requests.get(1)
self.assertEqual(pr.comments[-1].content, 'Looks good!')
self.assertEqual(len(pr.approvers), 2)

def test_review_reject(self):
with self.webserver():
repo = remote.GitHub(self.remote)
pr = repo.pull_requests.get(1)
self.assertEqual(pr.approvers, [Contributor('Eager Reviewer', ['ereviewer@webkit.org'])])
self.assertEqual(pr.blockers, [Contributor('Suspicious Reviewer', ['sreviewer@webkit.org'])])

pr.review(comment='Needs work.', approve=False)

pr = repo.pull_requests.get(1)
self.assertEqual(pr.comments[-1].content, 'Needs work.')
self.assertEqual(len(pr.blockers), 2)

def test_status(self):
with self.webserver():
repo = remote.GitHub(self.remote)
Expand Down

0 comments on commit a53feed

Please sign in to comment.