diff --git a/swh/lister/debian/tests/conftest.py b/swh/lister/debian/tests/conftest.py --- a/swh/lister/debian/tests/conftest.py +++ b/swh/lister/debian/tests/conftest.py @@ -6,12 +6,9 @@ import os import pytest -from pytest_postgresql.janitor import DatabaseJanitor -from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from swh.core.db.pytest_plugin import postgresql_fact -from swh.lister.core.models import SQLBase from swh.lister.debian import debian_init import swh.scheduler @@ -48,7 +45,7 @@ { "type": "load-deb-package", "description": "Load a Debian package", - "backend_name": "swh.loader.debian.tasks.LoaderDebianPackage", + "backend_name": "swh.loader.packages.debian.tasks.LoaderDebianPackage", "default_interval": "1 day", } ) @@ -57,24 +54,8 @@ @pytest.fixture -def sqlalchemy_engine(postgresql_proc): - pg_host = postgresql_proc.host - pg_port = postgresql_proc.port - pg_user = postgresql_proc.user - - pg_db = "sqlalchemy-tests" - - url = f"postgresql://{pg_user}@{pg_host}:{pg_port}/{pg_db}" - with DatabaseJanitor(pg_user, pg_host, pg_port, pg_db, postgresql_proc.version): - engine = create_engine(url) - yield engine - engine.dispose() - - -@pytest.fixture -def session(sqlalchemy_engine): - SQLBase.metadata.create_all(sqlalchemy_engine) - Session = sessionmaker(bind=sqlalchemy_engine) - session = Session() +def session(lister_db_url, engine): + session = sessionmaker(bind=engine)() yield session session.close() + engine.dispose() diff --git a/swh/lister/launchpad/tests/conftest.py b/swh/lister/launchpad/tests/conftest.py --- a/swh/lister/launchpad/tests/conftest.py +++ b/swh/lister/launchpad/tests/conftest.py @@ -9,14 +9,12 @@ from unittest.mock import patch import pytest -from sqlalchemy.engine import create_engine from swh.lister import get_lister -from swh.lister.core.models import initialize @pytest.fixture -def lister_launchpad(datadir, lister_db_url, swh_scheduler): +def lister_launchpad(datadir, lister_db_url, engine, swh_scheduler): class Collection: entries = [] @@ -42,11 +40,8 @@ with patch("launchpadlib.launchpad.Launchpad.login_anonymously"): lister = get_lister("launchpad", db_url=lister_db_url) - lister.scheduler = swh_scheduler # inject scheduler fixture lister.launchpad.git_repositories.getRepositories.side_effect = [ mock_lp_response(i) for i in range(3) ] - initialize(create_engine(lister_db_url), drop_tables=True) - return lister diff --git a/swh/lister/pytest_plugin.py b/swh/lister/pytest_plugin.py --- a/swh/lister/pytest_plugin.py +++ b/swh/lister/pytest_plugin.py @@ -50,9 +50,13 @@ @pytest.fixture -def swh_lister(lister_db_url, swh_scheduler, lister_under_test, swh_config): - assert lister_under_test in SUPPORTED_LISTERS - lister = get_lister(lister_under_test, db_url=lister_db_url) - initialize(create_engine(lister_db_url), drop_tables=True) +def engine(lister_db_url): + engine = create_engine(lister_db_url) + initialize(engine, drop_tables=True) + return engine + - return lister +@pytest.fixture +def swh_lister(engine, lister_db_url, lister_under_test, swh_config): + assert lister_under_test in SUPPORTED_LISTERS + return get_lister(lister_under_test, db_url=lister_db_url)