Changeset View
Changeset View
Standalone View
Standalone View
swh/web/tests/api/test_utils.py
# Copyright (C) 2015-2021 The Software Heritage developers | # Copyright (C) 2015-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 Affero General Public License version 3, or any later version | # License: GNU Affero 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 random | import random | ||||
from swh.model.hashutil import DEFAULT_ALGORITHMS | from swh.model.hashutil import DEFAULT_ALGORITHMS | ||||
from swh.model.model import Origin | |||||
from swh.web.api import utils | from swh.web.api import utils | ||||
from swh.web.common.origin_visits import get_origin_visits | from swh.web.common.origin_visits import get_origin_visits | ||||
from swh.web.common.utils import resolve_branch_alias, reverse | from swh.web.common.utils import resolve_branch_alias, reverse | ||||
url_map = [ | url_map = [ | ||||
{ | { | ||||
"rule": "/other/<slug>", | "rule": "/other/<slug>", | ||||
"methods": set(["GET", "POST", "HEAD"]), | "methods": set(["GET", "POST", "HEAD"]), | ||||
▲ Show 20 Lines • Show All 511 Lines • ▼ Show 20 Lines | def test_enrich_origin(api_request_factory, origin): | ||||
request = api_request_factory.get(url) | request = api_request_factory.get(url) | ||||
origin_data = {"url": origin["url"]} | origin_data = {"url": origin["url"]} | ||||
actual_origin = utils.enrich_origin(origin_data, request) | actual_origin = utils.enrich_origin(origin_data, request) | ||||
origin_data["origin_visits_url"] = reverse( | origin_data["origin_visits_url"] = reverse( | ||||
"api-1-origin-visits", url_args={"origin_url": origin["url"]}, request=request | "api-1-origin-visits", url_args={"origin_url": origin["url"]}, request=request | ||||
) | ) | ||||
origin_data["metadata_authorities_url"] = reverse( | |||||
"api-1-raw-extrinsic-metadata-swhid-authorities", | |||||
url_args={"target": Origin(url=origin["url"]).swhid()}, | |||||
request=request, | |||||
) | |||||
assert actual_origin == origin_data | assert actual_origin == origin_data | ||||
def test_enrich_origin_search_result(api_request_factory, origin): | def test_enrich_origin_search_result(api_request_factory, origin): | ||||
url = reverse("api-1-origin-search", url_args={"url_pattern": origin["url"]}) | url = reverse("api-1-origin-search", url_args={"url_pattern": origin["url"]}) | ||||
request = api_request_factory.get(url) | request = api_request_factory.get(url) | ||||
origin_visits_url = reverse( | origin_visits_url = reverse( | ||||
"api-1-origin-visits", url_args={"origin_url": origin["url"]}, request=request | "api-1-origin-visits", url_args={"origin_url": origin["url"]}, request=request | ||||
) | ) | ||||
metadata_authorities_url = reverse( | |||||
"api-1-raw-extrinsic-metadata-swhid-authorities", | |||||
url_args={"target": Origin(url=origin["url"]).swhid()}, | |||||
request=request, | |||||
) | |||||
origin_search_result_data = ( | origin_search_result_data = ( | ||||
[{"url": origin["url"]}], | [{"url": origin["url"]}], | ||||
None, | None, | ||||
) | ) | ||||
enriched_origin_search_result = ( | enriched_origin_search_result = ( | ||||
[{"url": origin["url"], "origin_visits_url": origin_visits_url}], | [ | ||||
{ | |||||
"url": origin["url"], | |||||
"origin_visits_url": origin_visits_url, | |||||
"metadata_authorities_url": metadata_authorities_url, | |||||
} | |||||
], | |||||
None, | None, | ||||
) | ) | ||||
assert ( | assert ( | ||||
utils.enrich_origin_search_result(origin_search_result_data, request=request) | utils.enrich_origin_search_result(origin_search_result_data, request=request) | ||||
== enriched_origin_search_result | == enriched_origin_search_result | ||||
) | ) | ||||
Show All 35 Lines |