Changeset View
Changeset View
Standalone View
Standalone View
swh/loader/package/pypi/tests/test_pypi.py
Show First 20 Lines • Show All 234 Lines • ▼ Show 20 Lines | |||||
def test_release_with_traceback(swh_config, requests_mock_datadir): | def test_release_with_traceback(swh_config, requests_mock_datadir): | ||||
url = 'https://pypi.org/project/0805nexter' | url = 'https://pypi.org/project/0805nexter' | ||||
with patch('swh.loader.package.pypi.loader.PyPILoader.last_snapshot', | with patch('swh.loader.package.pypi.loader.PyPILoader.last_snapshot', | ||||
side_effect=ValueError('Fake problem to fail the visit')): | side_effect=ValueError('Fake problem to fail the visit')): | ||||
loader = PyPILoader(url) | loader = PyPILoader(url) | ||||
actual_load_status = loader.load() | actual_load_status = loader.load() | ||||
assert actual_load_status['status'] == 'failed' | assert actual_load_status == {'status': 'failed'} | ||||
assert actual_load_status[ | |||||
'snapshot_id'] == '1a8893e6a86f444e8be8e7bda6cb34fb1735a00e' | |||||
stats = get_stats(loader.storage) | stats = get_stats(loader.storage) | ||||
assert { | assert { | ||||
'content': 0, | 'content': 0, | ||||
'directory': 0, | 'directory': 0, | ||||
'origin': 1, | 'origin': 1, | ||||
'origin_visit': 1, | 'origin_visit': 1, | ||||
'person': 0, | 'person': 0, | ||||
'release': 0, | 'release': 0, | ||||
'revision': 0, | 'revision': 0, | ||||
'skipped_content': 0, | 'skipped_content': 0, | ||||
'snapshot': 1, | 'snapshot': 0, | ||||
} == stats | } == stats | ||||
origin_visit = next(loader.storage.origin_visit_get(url)) | origin_visit = next(loader.storage.origin_visit_get(url)) | ||||
assert origin_visit['status'] == 'partial' | assert origin_visit['status'] == 'partial' | ||||
assert origin_visit['type'] == 'pypi' | assert origin_visit['type'] == 'pypi' | ||||
# problem during loading: failure early enough in between swh contents... | # problem during loading: failure early enough in between swh contents... | ||||
▲ Show 20 Lines • Show All 570 Lines • Show Last 20 Lines |