From 2922b68570ca6e532d485cf4b4f24bb1cd69f781 Mon Sep 17 00:00:00 2001 From: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Mon, 30 Oct 2017 17:04:49 +0100 Subject: [PATCH] Clean up dependencies to enable tests on build --- MANIFEST.in | 1 + debian/control | 6 +++++- requirements-test.txt | 3 +++ requirements.txt | 6 ++---- setup.py | 28 +++++++++++++++++++--------- 5 files changed, 30 insertions(+), 14 deletions(-) create mode 100644 requirements-test.txt diff --git a/MANIFEST.in b/MANIFEST.in index b13dc0f7..81c908b3 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -2,4 +2,5 @@ include Makefile include README include requirements.txt include requirements-swh.txt +include requirements-test.txt include version.txt diff --git a/debian/control b/debian/control index 367b7029..ab4b458b 100644 --- a/debian/control +++ b/debian/control @@ -6,14 +6,18 @@ Build-Depends: debhelper (>= 9), dh-python (>= 2), python3-all, python3-dateutil, + python3-debian, python3-nose, + python3-requests-mock, python3-setuptools, python3-sqlalchemy (>= 1.0), python3-swh.core, python3-swh.scheduler (>= 0.0.14~), python3-swh.storage, python3-swh.storage.schemata, - python3-vcversioner + python3-testing.postgresql, + python3-vcversioner, + python3-xmltodict Standards-Version: 3.9.6 Homepage: https://forge.softwareheritage.org/source/swh-lister/ diff --git a/requirements-test.txt b/requirements-test.txt new file mode 100644 index 00000000..3eb878af --- /dev/null +++ b/requirements-test.txt @@ -0,0 +1,3 @@ +nose +requests_mock +testing.postgresql diff --git a/requirements.txt b/requirements.txt index 9a284d83..4f3f5887 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,8 +1,6 @@ +SQLAlchemy arrow -nose +python_debian requests -requests_mock setuptools -SQLAlchemy -testing.postgresql xmltodict diff --git a/setup.py b/setup.py index e1d86ac6..d2934ba6 100644 --- a/setup.py +++ b/setup.py @@ -1,17 +1,26 @@ #!/usr/bin/env python3 +import os + from setuptools import setup, find_packages -def parse_requirements(): +def parse_requirements(name=None): + if name: + reqf = 'requirements-%s.txt' % name + else: + reqf = 'requirements.txt' + requirements = [] - for reqf in ('requirements.txt', 'requirements-swh.txt'): - with open(reqf) as f: - for line in f.readlines(): - line = line.strip() - if not line or line.startswith('#'): - continue - requirements.append(line) + if not os.path.exists(reqf): + return requirements + + with open(reqf) as f: + for line in f.readlines(): + line = line.strip() + if not line or line.startswith('#'): + continue + requirements.append(line) return requirements @@ -23,7 +32,8 @@ setup( url='https://forge.softwareheritage.org/diffusion/DLSGH/', packages=find_packages(), scripts=['bin/ghlister'], - install_requires=parse_requirements(), + install_requires=parse_requirements() + parse_requirements('swh'), + test_requires=parse_requirements('test'), setup_requires=['vcversioner'], vcversioner={'version_module_paths': ['swh/lister/_version.py']}, include_package_data=True, -- GitLab