diff --git a/swh/lister/cgit/tests/test_lister.py b/swh/lister/cgit/tests/test_lister.py --- a/swh/lister/cgit/tests/test_lister.py +++ b/swh/lister/cgit/tests/test_lister.py @@ -5,13 +5,10 @@ from os.path import join, dirname import re from urllib.parse import urlparse -from unittest.mock import Mock import requests_mock -from sqlalchemy import create_engine from swh.lister.cgit.lister import CGitLister -from swh.lister.tests.test_utils import init_db DATADIR = join(dirname(__file__), 'data') @@ -73,14 +70,27 @@ assert len(repos) == 16 -def test_lister_run(): - with requests_mock.Mocker() as m: - m.get(re.compile('http://git.tizen/cgit/'), text=get_response_cb) - db = init_db() - conf = {'lister': {'cls': 'local', 'args': {'db': db.url()}}} - lister = CGitLister(url='http://git.tizen/cgit/', - override_config=conf) - engine = create_engine(db.url()) - lister.MODEL.metadata.create_all(engine) - lister.schedule_missing_tasks = Mock(return_value=None) - lister.run() +def test_lister_run(requests_mock, swh_listers): + lister = swh_listers['cgit'] + requests_mock.get(re.compile('http://git.tizen/cgit/'), + text=get_response_cb) + lister.url = 'http://git.tizen/cgit/' + lister.run() + + r = lister.scheduler.search_tasks(task_type='load-git') + assert len(r) == 16 + + for row in r: + assert row['type'] == 'load-git' + # arguments check + args = row['arguments']['args'] + assert len(args) == 1 + + url = args[0] + assert url.startswith('https://git.tizen') + + # kwargs + kwargs = row['arguments']['kwargs'] + assert kwargs == {} + assert row['policy'] == 'recurring' + assert row['priority'] is None