80b5dd2959
Create a tox environment for running the unit tests against the lower bounds of the dependencies. Create a lower-constraints.txt to be used to enforce the lower bounds in those tests. Add openstack-tox-lower-constraints job to the zuul configuration. See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html for more details. -- neutron-vpnaas-dashboard specific: horizon needs to install horizon master via tox-siblings, so horizon needs to be specified as required-projects. Change-Id: I1fc69c9809d408fdf1fb825bef58189d72fda716 Co-Authored-By: Akihiro Motoki <amotoki@gmail.com> Depends-On: https://review.openstack.org/555034 Signed-off-by: Doug Hellmann <doug@doughellmann.com> Signed-off-by: Akihiro Motoki <amotoki@gmail.com>
71 lines
2.0 KiB
INI
71 lines
2.0 KiB
INI
[tox]
|
|
envlist = py35,py27,pep8
|
|
minversion = 2.3.2
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
NOSE_WITH_OPENSTACK=1
|
|
NOSE_OPENSTACK_COLOR=1
|
|
NOSE_OPENSTACK_RED=0.05
|
|
NOSE_OPENSTACK_YELLOW=0.025
|
|
NOSE_OPENSTACK_SHOW_ELAPSED=1
|
|
deps =
|
|
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = {[unit_tests]commands}
|
|
|
|
[unit_tests]
|
|
commands = python manage.py test {posargs} --settings=neutron_vpnaas_dashboard.test.settings
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8 {posargs}
|
|
{envpython} {toxinidir}/manage.py extract_messages --module neutron_vpnaas_dashboard --verbosity 0 --check-only
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:cover]
|
|
commands =
|
|
coverage erase
|
|
coverage run {toxinidir}/manage.py test neutron_vpnaas_dashboard --settings=neutron_vpnaas_dashboard.test.settings {posargs}
|
|
coverage xml --omit '.tox/cover/*' -o 'cover/coverage.xml'
|
|
coverage html --omit '.tox/cover/*' -d 'cover/htmlcov'
|
|
|
|
[testenv:py27dj110]
|
|
basepython = python2.7
|
|
commands =
|
|
pip install django>=1.10,<1.11
|
|
{[unit_tests]commands}
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:releasenotes]
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[flake8]
|
|
exclude = .venv,.git,.tox,dist,*lib/python*,*egg,build,node_modules,.tmp
|
|
# Enable the following hacking rules which are disabled by default
|
|
# H203 Use assertIs(Not)None to check for None
|
|
# H904 Delay string interpolations at logging calls
|
|
enable-extensions=H203,H904
|
|
max-complexity = 20
|
|
|
|
# flake8-import-order configurations
|
|
import-order-style = pep8
|
|
application-import-names = neutron_vpnaas_dashboard
|
|
|
|
[hacking]
|
|
local-check-factory = horizon.hacking.checks.factory
|
|
|
|
[testenv:lower-constraints]
|
|
basepython = python3
|
|
deps =
|
|
-c{toxinidir}/lower-constraints.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/requirements.txt
|