Changeset View
Changeset View
Standalone View
Standalone View
swh/indexer/tests/storage/test_storage.py
Show First 20 Lines • Show All 118 Lines • ▼ Show 20 Lines | def setUp(self): | ||||
} | } | ||||
self.sha1_1 = hash_to_bytes('34973274ccef6ab4dfaaf86599792fa9c3fe4689') | self.sha1_1 = hash_to_bytes('34973274ccef6ab4dfaaf86599792fa9c3fe4689') | ||||
self.sha1_2 = hash_to_bytes('61c2b3a30496d329e21af70dd2d7e097046d07b7') | self.sha1_2 = hash_to_bytes('61c2b3a30496d329e21af70dd2d7e097046d07b7') | ||||
self.revision_id_1 = hash_to_bytes( | self.revision_id_1 = hash_to_bytes( | ||||
'7026b7c1a2af56521e951c01ed20f255fa054238') | '7026b7c1a2af56521e951c01ed20f255fa054238') | ||||
self.revision_id_2 = hash_to_bytes( | self.revision_id_2 = hash_to_bytes( | ||||
'7026b7c1a2af56521e9587659012345678904321') | '7026b7c1a2af56521e9587659012345678904321') | ||||
self.revision_id_3 = hash_to_bytes( | |||||
'7026b7c1a2af56521e9587659012345678904320') | |||||
self.origin_id_1 = 54974445 | self.origin_id_1 = 54974445 | ||||
self.origin_id_2 = 44434342 | self.origin_id_2 = 44434342 | ||||
self.origin_id_3 = 44434341 | |||||
def test_check_config(self): | def test_check_config(self): | ||||
self.assertTrue(self.storage.check_config(check_write=True)) | self.assertTrue(self.storage.check_config(check_write=True)) | ||||
self.assertTrue(self.storage.check_config(check_write=False)) | self.assertTrue(self.storage.check_config(check_write=False)) | ||||
def test_content_mimetype_missing(self): | def test_content_mimetype_missing(self): | ||||
# given | # given | ||||
tool_id = self.tools['file']['id'] | tool_id = self.tools['file']['id'] | ||||
▲ Show 20 Lines • Show All 1,599 Lines • ▼ Show 20 Lines | def test_origin_intrinsic_metadata_search_fulltext_rank(self): | ||||
[self.origin_id_1]) | [self.origin_id_1]) | ||||
self.assertEqual( | self.assertEqual( | ||||
[res['origin_id'] for res in search(['Jane'])], | [res['origin_id'] for res in search(['Jane'])], | ||||
[self.origin_id_2, self.origin_id_1]) | [self.origin_id_2, self.origin_id_1]) | ||||
self.assertEqual( | self.assertEqual( | ||||
[res['origin_id'] for res in search(['John', 'Jane'])], | [res['origin_id'] for res in search(['John', 'Jane'])], | ||||
[self.origin_id_1]) | [self.origin_id_1]) | ||||
def test_origin_intrinsic_metadata_stats(self): | |||||
# given | |||||
tool_id = self.tools['swh-metadata-detector']['id'] | |||||
metadata1 = { | |||||
'@context': 'foo', | |||||
'author': 'John Doe', | |||||
} | |||||
metadata1_rev = { | |||||
'id': self.revision_id_1, | |||||
'translated_metadata': metadata1, | |||||
'mappings': ['npm'], | |||||
'indexer_configuration_id': tool_id, | |||||
} | |||||
metadata1_origin = { | |||||
'origin_id': self.origin_id_1, | |||||
'metadata': metadata1, | |||||
'mappings': ['npm'], | |||||
'indexer_configuration_id': tool_id, | |||||
'from_revision': self.revision_id_1, | |||||
} | |||||
metadata2 = { | |||||
'@context': 'foo', | |||||
'author': 'Jane Doe', | |||||
} | |||||
metadata2_rev = { | |||||
'id': self.revision_id_2, | |||||
'translated_metadata': metadata2, | |||||
'mappings': ['npm', 'gemspec'], | |||||
'indexer_configuration_id': tool_id, | |||||
} | |||||
metadata2_origin = { | |||||
'origin_id': self.origin_id_2, | |||||
'metadata': metadata2, | |||||
'mappings': ['npm', 'gemspec'], | |||||
'indexer_configuration_id': tool_id, | |||||
'from_revision': self.revision_id_2, | |||||
} | |||||
metadata3 = { | |||||
'@context': 'foo', | |||||
} | |||||
metadata3_rev = { | |||||
'id': self.revision_id_3, | |||||
'translated_metadata': metadata3, | |||||
'mappings': ['npm', 'gemspec'], | |||||
'indexer_configuration_id': tool_id, | |||||
} | |||||
metadata3_origin = { | |||||
'origin_id': self.origin_id_3, | |||||
'metadata': metadata3, | |||||
'mappings': ['pkg-info'], | |||||
'indexer_configuration_id': tool_id, | |||||
'from_revision': self.revision_id_3, | |||||
} | |||||
# when | |||||
self.storage.revision_metadata_add([metadata1_rev]) | |||||
self.storage.origin_intrinsic_metadata_add([metadata1_origin]) | |||||
self.storage.revision_metadata_add([metadata2_rev]) | |||||
self.storage.origin_intrinsic_metadata_add([metadata2_origin]) | |||||
self.storage.revision_metadata_add([metadata3_rev]) | |||||
self.storage.origin_intrinsic_metadata_add([metadata3_origin]) | |||||
# then | |||||
result = self.storage.origin_intrinsic_metadata_stats() | |||||
self.assertEqual(result, { | |||||
'per_mapping': { | |||||
'gemspec': 1, | |||||
'npm': 2, | |||||
'pkg-info': 1, | |||||
'codemeta': 0, | |||||
'maven': 0, | |||||
}, | |||||
'total': 3, | |||||
'non_empty': 2, | |||||
}) | |||||
def test_indexer_configuration_add(self): | def test_indexer_configuration_add(self): | ||||
tool = { | tool = { | ||||
'tool_name': 'some-unknown-tool', | 'tool_name': 'some-unknown-tool', | ||||
'tool_version': 'some-version', | 'tool_version': 'some-version', | ||||
'tool_configuration': {"debian-package": "some-package"}, | 'tool_configuration': {"debian-package": "some-package"}, | ||||
} | } | ||||
actual_tool = self.storage.indexer_configuration_get(tool) | actual_tool = self.storage.indexer_configuration_get(tool) | ||||
▲ Show 20 Lines • Show All 327 Lines • Show Last 20 Lines |