diff --git a/requirements-swh.txt b/requirements-swh.txt index c19936c..6e9e10b 100644 --- a/requirements-swh.txt +++ b/requirements-swh.txt @@ -1,6 +1,6 @@ swh.core[db,http] >= 0.0.87 swh.model >= 0.0.15 -swh.objstorage >= 0.0.28 +swh.objstorage >= 0.0.43 swh.scheduler >= 0.0.47 swh.storage >= 0.0.156 swh.journal >= 0.0.31 diff --git a/swh/indexer/tests/conftest.py b/swh/indexer/tests/conftest.py index 3891b36..fb25abd 100644 --- a/swh/indexer/tests/conftest.py +++ b/swh/indexer/tests/conftest.py @@ -1,84 +1,86 @@ # Copyright (C) 2019-2020 The Software Heritage developers # See the AUTHORS file at the top-level directory of this distribution # License: GNU General Public License version 3, or any later version # See top-level LICENSE file for more information from datetime import timedelta from unittest.mock import patch import pytest from swh.objstorage import get_objstorage from swh.scheduler.tests.conftest import * # noqa from swh.storage import get_storage from swh.indexer.storage import get_indexer_storage from .utils import fill_storage, fill_obj_storage TASK_NAMES = ["revision_intrinsic_metadata", "origin_intrinsic_metadata"] storage_config = {"cls": "pipeline", "steps": [{"cls": "validate"}, {"cls": "memory"},]} @pytest.fixture def indexer_scheduler(swh_scheduler): for taskname in TASK_NAMES: swh_scheduler.create_task_type( { "type": taskname, "description": "The {} indexer testing task".format(taskname), "backend_name": "swh.indexer.tests.tasks.{}".format(taskname), "default_interval": timedelta(days=1), "min_interval": timedelta(hours=6), "max_interval": timedelta(days=12), "num_retries": 3, } ) return swh_scheduler @pytest.fixture def idx_storage(): """An instance of in-memory indexer storage that gets injected into all indexers classes. """ idx_storage = get_indexer_storage("memory", {}) with patch("swh.indexer.storage.in_memory.IndexerStorage") as idx_storage_mock: idx_storage_mock.return_value = idx_storage yield idx_storage @pytest.fixture def storage(): """An instance of in-memory storage that gets injected into all indexers classes. """ storage = get_storage(**storage_config) fill_storage(storage) with patch("swh.storage.in_memory.InMemoryStorage") as storage_mock: storage_mock.return_value = storage yield storage @pytest.fixture def obj_storage(): """An instance of in-memory objstorage that gets injected into all indexers classes. """ objstorage = get_objstorage("memory", {}) fill_obj_storage(objstorage) - with patch.dict("swh.objstorage._STORAGE_CLASSES", {"memory": lambda: objstorage}): + with patch.dict( + "swh.objstorage.factory._STORAGE_CLASSES", {"memory": lambda: objstorage} + ): yield objstorage @pytest.fixture(scope="session") # type: ignore # expected redefinition def celery_includes(): return [ "swh.indexer.tests.tasks", "swh.indexer.tasks", ]