Changeset View
Changeset View
Standalone View
Standalone View
swh/lister/tests/test_utils.py
# Copyright (C) 2018-2020 the Software Heritage developers | # Copyright (C) 2018-2020 the Software Heritage developers | ||||
# 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 | ||||
import requests | import requests | ||||
from requests.status_codes import codes | from requests.status_codes import codes | ||||
from tenacity.wait import wait_fixed | from tenacity.wait import wait_fixed | ||||
from testing.postgresql import Postgresql | |||||
from swh.lister.utils import ( | from swh.lister.utils import ( | ||||
MAX_NUMBER_ATTEMPTS, | MAX_NUMBER_ATTEMPTS, | ||||
WAIT_EXP_BASE, | WAIT_EXP_BASE, | ||||
split_range, | split_range, | ||||
throttling_retry, | throttling_retry, | ||||
) | ) | ||||
Show All 14 Lines | |||||
@pytest.mark.parametrize("total_pages,nb_pages", [(None, 1), (100, None)]) | @pytest.mark.parametrize("total_pages,nb_pages", [(None, 1), (100, None)]) | ||||
def test_split_range_errors(total_pages, nb_pages): | def test_split_range_errors(total_pages, nb_pages): | ||||
for total_pages, nb_pages in [(None, 1), (100, None)]: | for total_pages, nb_pages in [(None, 1), (100, None)]: | ||||
with pytest.raises(TypeError): | with pytest.raises(TypeError): | ||||
next(split_range(total_pages, nb_pages)) | next(split_range(total_pages, nb_pages)) | ||||
def init_db(): | |||||
"""Factorize the db_url instantiation | |||||
Returns: | |||||
db object to ease db manipulation | |||||
""" | |||||
initdb_args = Postgresql.DEFAULT_SETTINGS["initdb_args"] | |||||
initdb_args = " ".join([initdb_args, "-E UTF-8"]) | |||||
return Postgresql(initdb_args=initdb_args) | |||||
TEST_URL = "https://example.og/api/repositories" | TEST_URL = "https://example.og/api/repositories" | ||||
@throttling_retry() | @throttling_retry() | ||||
def make_request(): | def make_request(): | ||||
response = requests.get(TEST_URL) | response = requests.get(TEST_URL) | ||||
response.raise_for_status() | response.raise_for_status() | ||||
return response | return response | ||||
▲ Show 20 Lines • Show All 74 Lines • Show Last 20 Lines |