Changeset View
Changeset View
Standalone View
Standalone View
swh/lister/packagist/tests/test_tasks.py
# Copyright (C) 2019-2020 the Software Heritage developers | # Copyright (C) 2019-2021 the Software Heritage developers | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
from unittest.mock import patch | from swh.lister.pattern import ListerStats | ||||
def test_ping(swh_scheduler_celery_app, swh_scheduler_celery_worker): | def test_ping(swh_scheduler_celery_app, swh_scheduler_celery_worker): | ||||
res = swh_scheduler_celery_app.send_task("swh.lister.packagist.tasks.ping") | res = swh_scheduler_celery_app.send_task("swh.lister.packagist.tasks.ping") | ||||
assert res | assert res | ||||
res.wait() | res.wait() | ||||
assert res.successful() | assert res.successful() | ||||
assert res.result == "OK" | assert res.result == "OK" | ||||
@patch("swh.lister.packagist.tasks.PackagistLister") | def test_lister(swh_scheduler_celery_app, swh_scheduler_celery_worker, mocker): | ||||
def test_lister(lister, swh_scheduler_celery_app, swh_scheduler_celery_worker): | lister = mocker.patch("swh.lister.packagist.tasks.PackagistLister") | ||||
# setup the mocked PackagistLister | lister.from_configfile.return_value = lister | ||||
lister.return_value = lister | stats = ListerStats(pages=1, origins=286500) | ||||
lister.run.return_value = None | lister.run.return_value = stats | ||||
res = swh_scheduler_celery_app.send_task( | res = swh_scheduler_celery_app.send_task( | ||||
"swh.lister.packagist.tasks.PackagistListerTask" | "swh.lister.packagist.tasks.PackagistListerTask" | ||||
) | ) | ||||
assert res | assert res | ||||
res.wait() | res.wait() | ||||
assert res.successful() | assert res.successful() | ||||
assert res.result == stats.dict() | |||||
lister.assert_called_once_with() | lister.from_configfile.assert_called_once_with() | ||||
lister.db_last_index.assert_not_called() | |||||
lister.run.assert_called_once_with() | lister.run.assert_called_once_with() |