Changeset View
Changeset View
Standalone View
Standalone View
swh/provenance/tests/test_origin_iterator.py
# Copyright (C) 2021 The Software Heritage developers | # Copyright (C) 2021-2022 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 pytest | import pytest | ||||
from swh.provenance.origin import CSVOriginIterator | from swh.provenance.origin import CSVOriginIterator | ||||
from swh.provenance.tests.conftest import fill_storage, load_repo_data | from swh.provenance.tests.conftest import fill_storage, load_repo_data | ||||
Show All 24 Lines | for origin in iter_origins(swh_storage): | ||||
for status in iter_origin_visit_statuses( | for status in iter_origin_visit_statuses( | ||||
swh_storage, origin.url, visit.visit | swh_storage, origin.url, visit.visit | ||||
): | ): | ||||
if status.snapshot is not None: | if status.snapshot is not None: | ||||
origins_csv.append((status.origin, status.snapshot)) | origins_csv.append((status.origin, status.snapshot)) | ||||
origins = list(CSVOriginIterator(origins_csv)) | origins = list(CSVOriginIterator(origins_csv)) | ||||
assert origins | assert origins | ||||
assert len(origins) == len(data["origin"]) | # there can be more origins, depending on the additional extra visits.yaml | ||||
# file used during dataset generation (see data/generate_storage_from_git) | |||||
assert len(origins) >= len(data["origin"]) | |||||
# but we can check it's a subset | |||||
assert set(o.url for o in origins) <= set(o["url"] for o in data["origin"]) |