Changeset View
Changeset View
Standalone View
Standalone View
swh/storage/tests/test_in_memory.py
# Copyright (C) 2018 The Software Heritage developers | # Copyright (C) 2018 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# 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 | ||||
import unittest | import unittest | ||||
import pytest | import pytest | ||||
from swh.storage.in_memory import Storage, ENABLE_ORIGIN_IDS | from swh.storage.in_memory import Storage | ||||
from swh.storage.tests.test_storage import \ | from swh.storage.tests.test_storage import \ | ||||
CommonTestStorage, CommonPropTestStorage | CommonTestStorage, CommonPropTestStorage | ||||
class TestInMemoryStorage(CommonTestStorage, unittest.TestCase): | class TestInMemoryStorage(CommonTestStorage, unittest.TestCase): | ||||
"""Test the in-memory storage API | """Test the in-memory storage API | ||||
This class doesn't define any tests as we want identical | This class doesn't define any tests as we want identical | ||||
functionality between local and remote storage. All the tests are | functionality between local and remote storage. All the tests are | ||||
therefore defined in CommonTestStorage. | therefore defined in CommonTestStorage. | ||||
""" | """ | ||||
_test_origin_ids = ENABLE_ORIGIN_IDS | |||||
def setUp(self): | def setUp(self): | ||||
super().setUp() | super().setUp() | ||||
self.reset_storage() | self.reset_storage() | ||||
@pytest.mark.skip('postgresql-specific test') | @pytest.mark.skip('postgresql-specific test') | ||||
def test_content_add_db(self): | def test_content_add_db(self): | ||||
pass | pass | ||||
@pytest.mark.skip('postgresql-specific test') | @pytest.mark.skip('postgresql-specific test') | ||||
def test_skipped_content_add_db(self): | def test_skipped_content_add_db(self): | ||||
pass | pass | ||||
@pytest.mark.skip('postgresql-specific test') | @pytest.mark.skip('postgresql-specific test') | ||||
def test_content_add_metadata_db(self): | def test_content_add_metadata_db(self): | ||||
pass | pass | ||||
if not _test_origin_ids: | |||||
@pytest.mark.skip('requires origin ids') | |||||
def test_origin_metadata_add(self): | |||||
pass | |||||
@pytest.mark.skip('requires origin ids') | |||||
def test_origin_metadata_get(self): | |||||
pass | |||||
@pytest.mark.skip('requires origin ids') | |||||
def test_origin_metadata_get_by_provider_type(self): | |||||
pass | |||||
def reset_storage(self): | def reset_storage(self): | ||||
self.storage = Storage(journal_writer={'cls': 'memory'}) | self.storage = Storage(journal_writer={'cls': 'memory'}) | ||||
self.journal_writer = self.storage.journal_writer | self.journal_writer = self.storage.journal_writer | ||||
@pytest.mark.property_based | @pytest.mark.property_based | ||||
class PropTestInMemoryStorage(CommonPropTestStorage, unittest.TestCase): | class PropTestInMemoryStorage(CommonPropTestStorage, unittest.TestCase): | ||||
"""Test the in-memory storage API | """Test the in-memory storage API | ||||
This class doesn't define any tests as we want identical | This class doesn't define any tests as we want identical | ||||
functionality between local and remote storage. All the tests are | functionality between local and remote storage. All the tests are | ||||
therefore defined in CommonPropTestStorage. | therefore defined in CommonPropTestStorage. | ||||
""" | """ | ||||
_test_origin_ids = ENABLE_ORIGIN_IDS | |||||
def setUp(self): | def setUp(self): | ||||
super().setUp() | super().setUp() | ||||
self.storage = Storage() | self.storage = Storage() | ||||
def reset_storage(self): | def reset_storage(self): | ||||
self.storage = Storage() | self.storage = Storage() | ||||
if not _test_origin_ids: | |||||
@pytest.mark.skip('requires origin ids') | |||||
def test_origin_get_range(self, new_origins): | |||||
pass |