diff --git a/swh/storage/tests/test_storage.py b/swh/storage/tests/test_storage.py --- a/swh/storage/tests/test_storage.py +++ b/swh/storage/tests/test_storage.py @@ -1431,6 +1431,52 @@ visits.append(date_visit) return visits + def test_origin_visit_get_all(self, swh_storage): + origin = Origin.from_dict(data.origin) + swh_storage.origin_add_one(origin) + visit1 = OriginVisit( + origin=origin.url, + date=data.date_visit1, + type=data.type_visit1, + status="ongoing", + snapshot=None, + ) + visit2 = OriginVisit( + origin=origin.url, + date=data.date_visit2, + type=data.type_visit2, + status="ongoing", + snapshot=None, + ) + # Add a visit with the same date as the previous one + visit3 = OriginVisit( + origin=origin.url, + date=data.date_visit2, + type=data.type_visit2, + status="ongoing", + snapshot=None, + ) + + ov1, ov2, ov3 = swh_storage.origin_visit_add([visit1, visit2, visit3]) + + all_visits = list(swh_storage.origin_visit_get(origin.url)) + + expected_visits = [v.to_dict() for v in [ov1, ov2, ov3]] + + assert all_visits == expected_visits + + all_visits2 = list(swh_storage.origin_visit_get(origin.url, limit=2)) + expected_visits2 = [v.to_dict() for v in [ov1, ov2]] + + assert all_visits2 == expected_visits2 + + all_visits3 = list( + swh_storage.origin_visit_get(origin.url, last_visit=ov1.visit, limit=1) + ) + expected_visits3 = [ov2.to_dict()] + + assert all_visits3 == expected_visits3 + def test_origin_visit_get__unknown_origin(self, swh_storage): assert [] == list(swh_storage.origin_visit_get("foo"))