diff --git a/github3/pulls.py b/github3/pulls.py index 471961e27..6a40753d7 100644 --- a/github3/pulls.py +++ b/github3/pulls.py @@ -303,18 +303,18 @@ def issue_comments(self, number=-1, etag=None): return self._iter(int(number), url, IssueComment, etag=etag) @requires_auth - def merge(self, commit_message=None, sha=None, squash=False): + def merge(self, commit_message=None, sha=None, merge_method="merge"): """Merge this pull request. :param str commit_message: (optional), message to be used for the merge commit :param str sha: (optional), SHA that pull request head must match to merge. - :param bool squash: (optional), commit a single commit to the - head branch. + :param str merge_method: (optional), Change the merge method. + Either 'merge', 'squash' or 'rebase'. Default is 'merge'. :returns: bool """ - parameters = {'squash': squash} + parameters = {'merge_method': merge_method} if sha: parameters['sha'] = sha if commit_message is not None: diff --git a/tests/unit/test_pulls.py b/tests/unit/test_pulls.py index 0b68ee4c0..4fc31f250 100644 --- a/tests/unit/test_pulls.py +++ b/tests/unit/test_pulls.py @@ -99,16 +99,16 @@ def test_merge(self): self.put_called_with( url_for('merge'), - data={"squash": False} + data={"merge_method": "merge"} ) def test_merge_squash_message(self): """Show that a user can merge a Pull Request.""" - self.instance.merge('commit message', squash=True) + self.instance.merge('commit message', merge_method='squash') self.put_called_with( url_for('merge'), - data={"squash": True, "commit_message": "commit message"} + data={"merge_method": "squash", "commit_message": "commit message"} ) def test_patch(self):