passerelle/tox.ini

89 lines
2.4 KiB
INI

[tox]
toxworkdir = {env:TMPDIR:/tmp}/tox-{env:USER}/passerelle/{env:BRANCH_NAME:}
envlist = py3-django32-xmlschema14-codestyle-coverage,py3-django22-xmlschema10,pylint
[testenv]
usedevelop = True
setenv =
DJANGO_SETTINGS_MODULE=passerelle.settings
PASSERELLE_SETTINGS_FILE=tests/settings.py
BRANCH_NAME={env:BRANCH_NAME:}
WCSCTL=wcs/wcsctl.py
SETUPTOOLS_USE_DISTUTILS=stdlib
NUMPROCESSES={env:NUMPROCESSES:1}
fast: FAST=--nomigrations
coverage: COVERAGE=--junitxml=junit-{envname}.xml --cov-report xml --cov-report html --cov=passerelle/ --cov-config .coveragerc -Wignore
deps =
django22: django>=2.2,<2.3
django32: django>=3.2,<3.3
xmlschema14: xmlschema<1.5
xmlschema10: xmlschema<1.1
django32: psycopg2-binary
django22: psycopg2-binary<2.9
django32: django-model-utils>=4.2
django22: django-model-utils<4.2
pytest-cov
pytest-django
pytest-xdist
pytest!=6.0.0
WebTest
mock<4
httmock
python-dateutil
django32: django-webtest
django22: django-webtest<1.9.3
lxml
mohawk
pytest-freezegun
pytest-localserver
pytest-sftpserver
Quixote>=3.0,<3.2
vobject
django-ratelimit
bleach
dnspython
pyquery
responses
zeep<3.3
codestyle: pre-commit
ldaptools
python-ldap<=3.2 # align with Debian <= 11 (buster, bullseye)
commands =
./get_wcs.sh
py.test {posargs: --numprocesses {env:NUMPROCESSES:1} --dist loadfile {env:FAST:} {env:COVERAGE:} {env:JUNIT:} tests/}
codestyle: pre-commit run --all-files --show-diff-on-failure
[pytest]
filterwarnings = default
# to delete when using python3, it's a warning inside ElementTree
ignore:.*tree.iter().*:PendingDeprecationWarning
# pyproj warning about deprecation of '+init=authority:code which comes from using Proj(init='EPSG:4326') instead of Proj('EPSG:4326')
# I tried the new syntax but it broke some opengis tests
module:.*init.*authority.*code.*syntax is deprecated:DeprecationWarning:pyproj
# wcs root directory must be renamed to fix this one
ignore:Not importing directory.*/wcs':ImportWarning
[testenv:pylint]
setenv =
DJANGO_SETTINGS_MODULE=passerelle.settings
PASSERELLE_SETTINGS_FILE=tests/settings.py
BRANCH_NAME={env:BRANCH_NAME:}
SETUPTOOLS_USE_DISTUTILS=stdlib
NUMPROCESSES={env:NUMPROCESSES:6}
deps =
pytest-django
pytest!=6.0.0
WebTest
mock<4
httmock
pylint
pylint-django
django-webtest<1.9.3
pytest-freezegun
pyquery
responses
mohawk
ldaptools
commands =
./pylint.sh passerelle/ tests/