Changeset View
Changeset View
Standalone View
Standalone View
swh/web/tests/conftest.py
# Copyright (C) 2018-2019 The Software Heritage developers | # Copyright (C) 2018-2020 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 json | import json | ||||
import os | import os | ||||
import shutil | import shutil | ||||
import sys | import sys | ||||
from subprocess import run, PIPE | from subprocess import run, PIPE | ||||
import pytest | import pytest | ||||
from django.core.cache import cache | from django.core.cache import cache | ||||
from hypothesis import settings, HealthCheck | from hypothesis import settings, HealthCheck | ||||
from rest_framework.test import APIClient, APIRequestFactory | from rest_framework.test import APIClient, APIRequestFactory | ||||
from swh.model.hashutil import ALGORITHMS, hash_to_bytes | from swh.model.hashutil import ALGORITHMS, hash_to_bytes | ||||
from swh.web.common import converters | from swh.web.common import converters | ||||
from swh.web.tests.data import get_tests_data, override_storages | from swh.web.tests.data import get_tests_data, override_storages | ||||
from swh.storage.algos.snapshot import snapshot_get_latest | |||||
# Used to skip some tests | # Used to skip some tests | ||||
ctags_json_missing = ( | ctags_json_missing = ( | ||||
shutil.which("ctags") is None | shutil.which("ctags") is None | ||||
or b"+json" not in run(["ctags", "--version"], stdout=PIPE).stdout | or b"+json" not in run(["ctags", "--version"], stdout=PIPE).stdout | ||||
) | ) | ||||
fossology_missing = shutil.which("nomossa") is None | fossology_missing = shutil.which("nomossa") is None | ||||
▲ Show 20 Lines • Show All 181 Lines • ▼ Show 20 Lines | def revision_log(self, rev_id, limit=None): | ||||
return list( | return list( | ||||
map( | map( | ||||
converters.from_revision, | converters.from_revision, | ||||
self.storage.revision_log([rev_id_bytes], limit=limit), | self.storage.revision_log([rev_id_bytes], limit=limit), | ||||
) | ) | ||||
) | ) | ||||
def snapshot_get_latest(self, origin_url): | def snapshot_get_latest(self, origin_url): | ||||
snp = self.storage.snapshot_get_latest(origin_url) | snp = snapshot_get_latest(self.storage, origin_url) | ||||
return converters.from_snapshot(snp) | return converters.from_snapshot(snp.to_dict()) | ||||
def origin_get(self, origin_info): | def origin_get(self, origin_info): | ||||
origin = self.storage.origin_get(origin_info) | origin = self.storage.origin_get(origin_info) | ||||
return converters.from_origin(origin) | return converters.from_origin(origin) | ||||
def origin_visit_get(self, origin_url): | def origin_visit_get(self, origin_url): | ||||
visits = self.storage.origin_visit_get(origin_url) | visits = self.storage.origin_visit_get(origin_url) | ||||
return list(map(converters.from_origin_visit, visits)) | return list(map(converters.from_origin_visit, visits)) | ||||
▲ Show 20 Lines • Show All 80 Lines • Show Last 20 Lines |