Skip to content

Commit f3fc46e

Browse files
committed
Fix test coverage
1 parent 98ed957 commit f3fc46e

2 files changed

Lines changed: 20 additions & 3 deletions

File tree

democrasite/webiscite/tasks.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,8 @@ def submit_bill(bill_id: int) -> None:
3535
bill = Bill.objects.get(pk=bill_id)
3636
bill.submit()
3737

38-
repo = Github(auth=Auth.Token(settings.WEBISCITE_GITHUB_TOKEN)).get_repo(
39-
settings.WEBISCITE_REPO
40-
)
38+
github_auth = Auth.Token(settings.WEBISCITE_GITHUB_TOKEN)
39+
repo = Github(auth=github_auth).get_repo(settings.WEBISCITE_REPO)
4140
pull = repo.get_pull(bill.pull_request.number)
4241

4342
if bill.status != Bill.Status.APPROVED:
@@ -49,6 +48,7 @@ def submit_bill(bill_id: int) -> None:
4948
bill.log("Merged")
5049
else:
5150
logger.warning("Bill %s failed to merge", bill.id)
51+
return
5252

5353
# Automatically update constitution line numbers if necessary
5454
_update_constitution(bill, repo)

democrasite/webiscite/tests/test_tasks.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,23 @@ def test_bill_passed(self, mock_token, mock_repo):
4040
merge_method="squash", sha=bill.pull_request.sha
4141
)
4242

43+
@patch("github.Github.get_repo")
44+
@patch("github.Auth.Token", spec=True)
45+
def test_bill_merge_failed(self, mock_token, mock_repo):
46+
bill = BillFactory.create(constitutional=True)
47+
# constitutional so _update_constitution isn't called
48+
voters = UserFactory.create_batch(settings.WEBISCITE_MINIMUM_QUORUM)
49+
Vote.objects.bulk_create(
50+
[Vote(bill=bill, user=voter, support=True) for voter in voters]
51+
)
52+
mock_repo().get_pull().merge.return_value = None
53+
54+
submit_bill(bill.id)
55+
56+
mock_repo().get_pull().merge.assert_called_once_with(
57+
merge_method="squash", sha=bill.pull_request.sha
58+
)
59+
4360
@patch.object(constitution, "update_constitution")
4461
@patch("requests.get")
4562
@patch("github.Repository.Repository")

0 commit comments

Comments
 (0)