diff --git a/swh/web/common/archive.py b/swh/web/common/archive.py --- a/swh/web/common/archive.py +++ b/swh/web/common/archive.py @@ -977,7 +977,7 @@ """ - visit_and_status = origin_get_latest_visit_status( + visit_status = origin_get_latest_visit_status( storage, origin_url, type=type, @@ -985,11 +985,7 @@ require_snapshot=require_snapshot, ) return ( - converters.from_origin_visit( - {**visit_and_status[0].to_dict(), **visit_and_status[1].to_dict()} - ) - if visit_and_status - else None + converters.from_origin_visit(visit_status.to_dict()) if visit_status else None ) diff --git a/swh/web/tests/browse/test_snapshot_context.py b/swh/web/tests/browse/test_snapshot_context.py --- a/swh/web/tests/browse/test_snapshot_context.py +++ b/swh/web/tests/browse/test_snapshot_context.py @@ -34,8 +34,11 @@ visits = archive_data.origin_visit_get(origin["url"]) for visit in visits: + snapshot_id = visit["snapshot"] + if not snapshot_id: + continue - snapshot = archive_data.snapshot_get(visit["snapshot"]) + snapshot = archive_data.snapshot_get(snapshot_id) branches = [] releases = [] diff --git a/swh/web/tests/conftest.py b/swh/web/tests/conftest.py --- a/swh/web/tests/conftest.py +++ b/swh/web/tests/conftest.py @@ -269,7 +269,7 @@ allowed_statuses: Optional[List[str]] = None, require_snapshot: bool = False, ): - visit_and_status = origin_get_latest_visit_status( + visit_status = origin_get_latest_visit_status( self.storage, origin_url, type=type, @@ -277,10 +277,8 @@ require_snapshot=require_snapshot, ) return ( - converters.from_origin_visit( - {**visit_and_status[0].to_dict(), **visit_and_status[1].to_dict()} - ) - if visit_and_status + converters.from_origin_visit(visit_status.to_dict()) + if visit_status else None ) diff --git a/swh/web/tests/data.py b/swh/web/tests/data.py --- a/swh/web/tests/data.py +++ b/swh/web/tests/data.py @@ -222,6 +222,7 @@ origin=url, visit=visit.visit, date=date + timedelta(minutes=1), + type=visit.type, status="full", snapshot=hash_to_bytes("1a8893e6a86f444e8be8e7bda6cb34fb1735a00e"), )