Don't hardcode src.fedoraproject.org
Signed-off-by: Aurélien Bompard <aurelien@bompard.org>
This commit is contained in:
parent
1bfdebd297
commit
0fcdd3b95d
5 changed files with 53 additions and 68 deletions
|
@ -3,6 +3,7 @@ import os
|
|||
import sys
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
from fedora_messaging.config import conf as fm_config
|
||||
import pytest
|
||||
|
||||
from toddlers.utils.cache import cache
|
||||
|
@ -35,6 +36,16 @@ def toddler(request, monkeypatch):
|
|||
if obj is make_session:
|
||||
monkeypatch.setattr(toddler_module, name, MagicMock())
|
||||
|
||||
monkeypatch.setitem(
|
||||
fm_config,
|
||||
"consumer_config",
|
||||
{
|
||||
"default": {
|
||||
"dist_git_url": "https://src.fedoraproject.org",
|
||||
},
|
||||
},
|
||||
)
|
||||
|
||||
toddler_obj = toddler_cls()
|
||||
# disable the cache
|
||||
cache.configure(backend="dogpile.cache.null", replace_existing_backend=True)
|
||||
|
|
|
@ -6,6 +6,17 @@ import pytest
|
|||
import toddlers.plugins.check_commit_rights
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def toddler_config():
|
||||
return {
|
||||
"exclude_users": "[]",
|
||||
"notify_emails": "[]",
|
||||
"admin_email": "foo@bar",
|
||||
"mail_server": "127.0.0.1",
|
||||
"dist_git_url": "https://src.fedoraproject.org",
|
||||
}
|
||||
|
||||
|
||||
class TestCheckCommitRightsToddler:
|
||||
toddler_cls = toddlers.plugins.check_commit_rights.CheckCommitRights
|
||||
|
||||
|
@ -49,7 +60,7 @@ class TestCheckCommitRightsToddler:
|
|||
|
||||
@patch("toddlers.utils.fedora_account.set_fasjson", new=Mock(return_value=True))
|
||||
@patch("toddlers.utils.fedora_account.get_group_member")
|
||||
def test_process_no_fas(self, get_group_member, toddler):
|
||||
def test_process_no_fas(self, get_group_member, toddler, toddler_config):
|
||||
get_group_member.return_value = []
|
||||
|
||||
msg = fedora_messaging.api.Message()
|
||||
|
@ -57,22 +68,19 @@ class TestCheckCommitRightsToddler:
|
|||
msg.topic = "org.fedoraproject.prod.toddlers.trigger.check_commit_rights"
|
||||
msg.body = {"foo": "bar"}
|
||||
|
||||
config = {
|
||||
"exclude_users": "[]",
|
||||
"notify_emails": "[]",
|
||||
}
|
||||
|
||||
with pytest.raises(
|
||||
Exception,
|
||||
match=r"Something wrong occurred, I found no packagers. Exiting.",
|
||||
):
|
||||
toddler.process(config=config, message=msg, send_email=False)
|
||||
toddler.process(config=toddler_config, message=msg, send_email=False)
|
||||
|
||||
@patch("toddlers.utils.fedora_account.set_fasjson", new=Mock(return_value=True))
|
||||
@patch("toddlers.plugins.check_commit_rights._log.info")
|
||||
@patch("toddlers.utils.notify.send_email")
|
||||
@patch("toddlers.utils.fedora_account.get_group_member")
|
||||
def test_process_all_right(self, get_group_member, send_email, info, toddler):
|
||||
def test_process_all_right(
|
||||
self, get_group_member, send_email, info, toddler, toddler_config
|
||||
):
|
||||
req_json = {
|
||||
"pagination": {
|
||||
"page": 1,
|
||||
|
@ -104,14 +112,7 @@ class TestCheckCommitRightsToddler:
|
|||
msg.topic = "org.fedoraproject.prod.toddlers.trigger.check_commit_rights"
|
||||
msg.body = {"foo": "bar"}
|
||||
|
||||
config = {
|
||||
"exclude_users": "[]",
|
||||
"notify_emails": "[]",
|
||||
"admin_email": "foo@bar",
|
||||
"mail_server": "127.0.0.1",
|
||||
}
|
||||
|
||||
assert toddler.process(config=config, message=msg) is None
|
||||
assert toddler.process(config=toddler_config, message=msg) is None
|
||||
info.assert_any_call(
|
||||
"### Found 4 users with commit privileges but not in packager group ###"
|
||||
)
|
||||
|
@ -128,7 +129,7 @@ class TestCheckCommitRightsToddler:
|
|||
@patch("toddlers.utils.notify.send_email")
|
||||
@patch("toddlers.utils.fedora_account.get_group_member")
|
||||
def test_process_all_right_multiple_pages(
|
||||
self, get_group_member, send_email, info, toddler
|
||||
self, get_group_member, send_email, info, toddler, toddler_config
|
||||
):
|
||||
req_json = [
|
||||
{
|
||||
|
@ -181,14 +182,7 @@ class TestCheckCommitRightsToddler:
|
|||
msg.topic = "org.fedoraproject.prod.toddlers.trigger.check_commit_rights"
|
||||
msg.body = {"foo": "bar"}
|
||||
|
||||
config = {
|
||||
"exclude_users": "[]",
|
||||
"notify_emails": "[]",
|
||||
"admin_email": "foo@bar",
|
||||
"mail_server": "127.0.0.1",
|
||||
}
|
||||
|
||||
assert toddler.process(config=config, message=msg) is None
|
||||
assert toddler.process(config=toddler_config, message=msg) is None
|
||||
info.assert_any_call(
|
||||
"### Found 2 users with commit privileges but not in packager group ###"
|
||||
)
|
||||
|
@ -202,7 +196,9 @@ class TestCheckCommitRightsToddler:
|
|||
@patch("toddlers.plugins.check_commit_rights._log.info")
|
||||
@patch("toddlers.utils.notify.send_email")
|
||||
@patch("toddlers.utils.fedora_account.get_group_member")
|
||||
def test_process_exclude_user(self, get_group_member, send_email, info, toddler):
|
||||
def test_process_exclude_user(
|
||||
self, get_group_member, send_email, info, toddler, toddler_config
|
||||
):
|
||||
req_json = {
|
||||
"pagination": {
|
||||
"page": 1,
|
||||
|
@ -234,14 +230,9 @@ class TestCheckCommitRightsToddler:
|
|||
msg.topic = "org.fedoraproject.prod.toddlers.trigger.check_commit_rights"
|
||||
msg.body = {"foo": "bar"}
|
||||
|
||||
config = {
|
||||
"exclude_users": "['admin_user']",
|
||||
"notify_emails": "[]",
|
||||
"admin_email": "foo@bar",
|
||||
"mail_server": "127.0.0.1",
|
||||
}
|
||||
toddler_config["exclude_users"] = ["admin_user"]
|
||||
|
||||
assert toddler.process(config=config, message=msg) is None
|
||||
assert toddler.process(config=toddler_config, message=msg) is None
|
||||
info.assert_any_call(
|
||||
"### Found 3 users with commit privileges but not in packager group ###"
|
||||
)
|
||||
|
@ -256,7 +247,9 @@ class TestCheckCommitRightsToddler:
|
|||
@patch("toddlers.plugins.check_commit_rights._log.info")
|
||||
@patch("toddlers.utils.notify.send_email")
|
||||
@patch("toddlers.utils.fedora_account.get_group_member")
|
||||
def test_process_no_result(self, get_group_member, send_email, info, toddler):
|
||||
def test_process_no_result(
|
||||
self, get_group_member, send_email, info, toddler, toddler_config
|
||||
):
|
||||
req_json = {
|
||||
"pagination": {
|
||||
"page": 1,
|
||||
|
@ -288,12 +281,7 @@ class TestCheckCommitRightsToddler:
|
|||
msg.topic = "org.fedoraproject.prod.toddlers.trigger.check_commit_rights"
|
||||
msg.body = {"foo": "bar"}
|
||||
|
||||
config = {
|
||||
"exclude_users": "[]",
|
||||
"notify_emails": "[]",
|
||||
}
|
||||
|
||||
assert toddler.process(config=config, message=msg) is None
|
||||
assert toddler.process(config=toddler_config, message=msg) is None
|
||||
info.assert_any_call(
|
||||
"### Found 0 users with commit privileges but not in packager group ###"
|
||||
)
|
||||
|
|
|
@ -1329,7 +1329,7 @@ class TestPagureIsProjectOrphaned:
|
|||
result = self.pagure.is_project_orphaned(namespace, repo)
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
"https://pagure.io/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1354,7 +1354,7 @@ class TestPagureIsProjectOrphaned:
|
|||
result = self.pagure.is_project_orphaned(namespace, repo)
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
"https://pagure.io/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1381,7 +1381,7 @@ class TestPagureIsProjectOrphaned:
|
|||
self.pagure.is_project_orphaned(namespace, repo)
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
"https://pagure.io/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1422,7 +1422,7 @@ class TestPagureAssignMaintainerToProject:
|
|||
self.pagure.assign_maintainer_to_project(namespace, repo, maintainer_fas)
|
||||
|
||||
self.pagure._requests_session.patch.assert_called_with(
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
"https://pagure.io/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
data=json.dumps(payload),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
@ -1452,7 +1452,7 @@ class TestPagureAssignMaintainerToProject:
|
|||
self.pagure.assign_maintainer_to_project(namespace, repo, maintainer_fas)
|
||||
|
||||
self.pagure._requests_session.patch.assert_called_with(
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
"https://pagure.io/_dg/bzoverrides/" + namespace + "/" + repo,
|
||||
data=json.dumps(payload),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
@ -1737,9 +1737,7 @@ class TestPagureGetRetiredPackages:
|
|||
assert result == package_list
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/lookaside/retired_in_{0}.json".format(
|
||||
branch
|
||||
),
|
||||
"https://pagure.io/lookaside/retired_in_{0}.json".format(branch),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1760,9 +1758,7 @@ class TestPagureGetRetiredPackages:
|
|||
self.pagure.get_retired_packages(branch)
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/lookaside/retired_in_{0}.json".format(
|
||||
branch
|
||||
),
|
||||
"https://pagure.io/lookaside/retired_in_{0}.json".format(branch),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1782,9 +1778,7 @@ class TestPagureGetRetiredPackages:
|
|||
assert result == []
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/lookaside/retired_in_{0}.json".format(
|
||||
branch
|
||||
),
|
||||
"https://pagure.io/lookaside/retired_in_{0}.json".format(branch),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1804,9 +1798,7 @@ class TestPagureGetRetiredPackages:
|
|||
self.pagure.get_retired_packages(branch)
|
||||
|
||||
self.pagure._requests_session.get.assert_called_with(
|
||||
"https://src.fedoraproject.org/lookaside/retired_in_{0}.json".format(
|
||||
branch
|
||||
),
|
||||
"https://pagure.io/lookaside/retired_in_{0}.json".format(branch),
|
||||
headers=self.pagure.get_auth_header(),
|
||||
)
|
||||
|
||||
|
@ -1893,7 +1885,7 @@ class TestPagureHasDeadPackageOnBranch:
|
|||
response_mock = MagicMock()
|
||||
response_mock.ok = True
|
||||
response_mock.json.return_value = {
|
||||
"content_url": "https://src.fedoraproject.org/api",
|
||||
"content_url": "https://src.stg.fedoraproject.org/api",
|
||||
"name": "dead.package",
|
||||
"type": "file",
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@ class CheckCommitRights(ToddlerBase):
|
|||
not_packagers = []
|
||||
while True:
|
||||
req = self.requests_session.get(
|
||||
"https://src.fedoraproject.org/api/0/projects?fork=false&namespace=rpms"
|
||||
f"{config['dist_git_url']}/api/0/projects?fork=false&namespace=rpms"
|
||||
f"&per_page=100&page={page}"
|
||||
)
|
||||
data = req.json()
|
||||
|
|
|
@ -872,9 +872,7 @@ class Pagure:
|
|||
Raises:
|
||||
`toddlers.utils.exceptions.PagureError``: When getting project maintainers fails.
|
||||
"""
|
||||
endpoint_url = (
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo
|
||||
)
|
||||
endpoint_url = f"{self._pagure_url}/_dg/bzoverrides/{namespace}/{repo}"
|
||||
headers = self.get_auth_header()
|
||||
|
||||
log.debug("Getting project '{0}/{1}' maintainers.")
|
||||
|
@ -913,9 +911,7 @@ class Pagure:
|
|||
Raises:
|
||||
`toddlers.utils.exceptions.PagureError``: When setting project maintainer fails.
|
||||
"""
|
||||
endpoint_url = (
|
||||
"https://src.fedoraproject.org/_dg/bzoverrides/" + namespace + "/" + repo
|
||||
)
|
||||
endpoint_url = f"{self._pagure_url}/_dg/bzoverrides/{namespace}/{repo}"
|
||||
headers = self.get_auth_header()
|
||||
payload = {
|
||||
"EPEL Maintainer name": maintainer_fas,
|
||||
|
@ -1124,9 +1120,7 @@ class Pagure:
|
|||
`toddlers.utils.exceptions.PagureError``: When retrieving the retired list fails.
|
||||
"""
|
||||
result = []
|
||||
endpoint_url = (
|
||||
"https://src.fedoraproject.org/lookaside/retired_in_{0}.json".format(branch)
|
||||
)
|
||||
endpoint_url = f"{self._pagure_url}/lookaside/retired_in_{branch}.json"
|
||||
headers = self.get_auth_header()
|
||||
|
||||
log.debug("Retrieving retired packages for '%s'", branch)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue