Skip to content

Commit

Permalink
Add function to delete pending reviews on a pull request (#1897)
Browse files Browse the repository at this point in the history
Add a delete method to PullRequestReview to allow dismissing them.

Fixes #1856 

Co-authored-by: bagashvilit <bagashvilit@allegheny.edu>
Co-authored-by: WonjoonC <chos@allegheny.edu>
  • Loading branch information
3 people committed Oct 24, 2021
1 parent f1faf94 commit c8a945b
Show file tree
Hide file tree
Showing 6 changed files with 69 additions and 0 deletions.
9 changes: 9 additions & 0 deletions github/PullRequestReview.py
Expand Up @@ -105,6 +105,15 @@ def dismiss(self, message):
input=post_parameters,
)

def delete(self):
"""
:calls: `DELETE /repos/:owner/:repo/pulls/:number/reviews/:review_id <https://developer.github.com/v3/pulls/reviews/>`_
:rtype: None
"""
headers, data = self._requester.requestJsonAndCheck(
"DELETE", f"{self.pull_request_url}/reviews/{self.id}"
)

def _initAttributes(self):
self._id = github.GithubObject.NotSet
self._user = github.GithubObject.NotSet
Expand Down
1 change: 1 addition & 0 deletions github/PullRequestReview.pyi
Expand Up @@ -13,6 +13,7 @@ class PullRequestReview(CompletableGithubObject):
@property
def commit_id(self) -> str: ...
def dismiss(self, message: str) -> None: ...
def delete(self) -> None: ...
@property
def html_url(self) -> str: ...
@property
Expand Down
1 change: 1 addition & 0 deletions tests/PullRequestReview.py
Expand Up @@ -32,6 +32,7 @@
class PullRequestReview(Framework.TestCase):
def setUp(self):
super().setUp()

self.repo = self.g.get_repo("PyGithub/PyGithub", lazy=True)
self.pull = self.repo.get_pull(538)

Expand Down
14 changes: 14 additions & 0 deletions tests/PullRequestReview1856.py
@@ -0,0 +1,14 @@
from . import Framework


class PullRequestReview1856(Framework.TestCase):
def setUp(self):
super().setUp()
pumpkin_repo = self.g.get_repo("CS481-Team-Pumpkin/PyGithub", lazy=True)
self.pumpkin_pull = pumpkin_repo.get_pull(4)
self.pullreview = self.pumpkin_pull.get_review(631460061)

def testDelete(self):
self.pullreview.delete()
reviews = self.pumpkin_pull.get_reviews()
self.assertEqual(list(reviews), [])

0 comments on commit c8a945b

Please sign in to comment.