launchpad: Actually mock the anonymous login to launchpad
This current test was failing in a debian chroot with connection error.
This commit is contained in:
parent
461bf09973
commit
b11b4d1001
3 changed files with 11 additions and 16 deletions
|
@ -20,14 +20,14 @@ class LaunchpadLister(ListerBase):
|
|||
MODEL = LaunchpadModel
|
||||
LISTER_NAME = "launchpad"
|
||||
instance = "launchpad"
|
||||
launchpad: Launchpad
|
||||
flush_packet_db = 20
|
||||
|
||||
def __init__(self, override_config=None):
|
||||
super().__init__(override_config=override_config)
|
||||
self.launchpad = Launchpad.login_anonymously(
|
||||
launchpad = Launchpad.login_anonymously(
|
||||
"softwareheritage", "production", version="devel"
|
||||
)
|
||||
self.get_repos = launchpad.git_repositories.getRepositories
|
||||
|
||||
def get_model_from_repo(self, repo: Entry) -> Dict[str, Union[str, datetime]]:
|
||||
return {
|
||||
|
@ -47,11 +47,6 @@ class LaunchpadLister(ListerBase):
|
|||
self.get_model_from_repo(repo) for repo in response[: len(response.entries)]
|
||||
]
|
||||
|
||||
def get_git_repos(self, threshold: Optional[datetime]) -> Collection:
|
||||
get_repos = self.launchpad.git_repositories.getRepositories
|
||||
|
||||
return get_repos(order_by="most neglected first", modified_since_date=threshold)
|
||||
|
||||
def db_last_threshold(self) -> Optional[datetime]:
|
||||
t = self.db_session.query(func.max(self.MODEL.date_last_modified)).first()
|
||||
if t:
|
||||
|
@ -70,7 +65,9 @@ class LaunchpadLister(ListerBase):
|
|||
identifier: Resource identifier.
|
||||
checks: Additional checks required
|
||||
"""
|
||||
response = self.get_git_repos(identifier)
|
||||
response = self.get_repos(
|
||||
order_by="most neglected first", modified_since_date=identifier
|
||||
)
|
||||
models_list = self.lib_response_simplified(response)
|
||||
models_list = self.filter_before_inject(models_list)
|
||||
if checks:
|
||||
|
|
|
@ -37,13 +37,13 @@ def lister_launchpad(datadir, lister_db_url, engine, swh_scheduler):
|
|||
with open(response_filepath, "r", encoding="utf-8") as f:
|
||||
return Collection(json.load(f))
|
||||
|
||||
with patch("launchpadlib.launchpad.Launchpad.login_anonymously"):
|
||||
with patch("swh.lister.launchpad.lister.Launchpad") as m:
|
||||
m.login_anonymously.return_value = m
|
||||
m.git_repositories.getRepositories.side_effect = [
|
||||
mock_lp_response(i) for i in range(3)
|
||||
]
|
||||
lister = get_lister("launchpad", db_url=lister_db_url)
|
||||
|
||||
lister.launchpad.git_repositories.getRepositories.side_effect = [
|
||||
mock_lp_response(i) for i in range(3)
|
||||
]
|
||||
|
||||
lister.scheduler.create_task_type(
|
||||
{
|
||||
"type": "load-git",
|
||||
|
|
|
@ -7,9 +7,7 @@
|
|||
def test_launchpad_lister(lister_launchpad, datadir):
|
||||
lister_launchpad.run()
|
||||
|
||||
assert (
|
||||
len(lister_launchpad.launchpad.git_repositories.getRepositories.mock_calls) == 3
|
||||
)
|
||||
assert len(lister_launchpad.get_repos.mock_calls) == 3
|
||||
|
||||
r = lister_launchpad.scheduler.search_tasks(task_type="load-git")
|
||||
assert len(r) == 30
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue