Changeset View
Changeset View
Standalone View
Standalone View
swh/lister/debian/tests/test_lister.py
# Copyright (C) 2019-2021 The Software Heritage developers | # Copyright (C) 2019-2021 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 | ||||
from collections import defaultdict | from collections import defaultdict | ||||
import os | |||||
from pathlib import Path | from pathlib import Path | ||||
from typing import Dict, List, Set, Tuple | from typing import Dict, List, Set, Tuple | ||||
from debian.deb822 import Sources | from debian.deb822 import Sources | ||||
import pytest | import pytest | ||||
from swh.lister.debian.lister import ( | from swh.lister.debian.lister import ( | ||||
DebianLister, | DebianLister, | ||||
▲ Show 20 Lines • Show All 97 Lines • ▼ Show 20 Lines | for suite, pkg_info in suite_pkg_info.items(): | ||||
# get ListerOrigin object from scheduler database | # get ListerOrigin object from scheduler database | ||||
filtered_origins = [ | filtered_origins = [ | ||||
scheduler_origin | scheduler_origin | ||||
for scheduler_origin in scheduler_origins | for scheduler_origin in scheduler_origins | ||||
if scheduler_origin.url == origin_url | if scheduler_origin.url == origin_url | ||||
] | ] | ||||
assert filtered_origins | assert filtered_origins | ||||
packages = filtered_origins[0].extra_loader_arguments["packages"] | |||||
# check the version info are available | # check the version info are available | ||||
assert ( | assert package_version_key in packages | ||||
package_version_key | |||||
in filtered_origins[0].extra_loader_arguments["packages"] | # check package files URIs are available | ||||
) | for file in pkg_src["files"]: | ||||
filename = file["name"] | |||||
file_uri = os.path.join( | |||||
_mirror_url, pkg_src["Directory"], filename | |||||
) | |||||
package_files = packages[package_version_key]["files"] | |||||
assert filename in package_files | |||||
assert package_files[filename]["uri"] == file_uri | |||||
# check listed package version is in lister state | # check listed package version is in lister state | ||||
assert package_name in lister.state.package_versions | assert package_name in lister.state.package_versions | ||||
assert ( | assert ( | ||||
package_version_key | package_version_key | ||||
in lister.state.package_versions[package_name] | in lister.state.package_versions[package_name] | ||||
) | ) | ||||
return origin_urls | return origin_urls | ||||
▲ Show 20 Lines • Show All 100 Lines • Show Last 20 Lines |