106 lines
3.1 KiB
INI
106 lines
3.1 KiB
INI
[tox]
|
|
envlist = py27,py36,py37,py3-dj111,pep8,releasenotes
|
|
minversion = 2.5.0
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
setenv =
|
|
VIRTUAL_ENV={envdir}
|
|
INTEGRATION_TESTS=0
|
|
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 heat_dashboard.test --settings=heat_dashboard.test.settings --exclude-tag integration
|
|
|
|
[testenv:integration]
|
|
# Run integration tests only
|
|
passenv = AVCONV_INSTALLED
|
|
setenv =
|
|
PYTHONHASHSEED=0
|
|
INTEGRATION_TESTS=1
|
|
SELENIUM_HEADLESS=1
|
|
HORIZON_INTEGRATION_TESTS_CONFIG_FILE=heat_dashboard/test/integration/horizon.conf
|
|
basepython = python2.7
|
|
commands = python manage.py test heat_dashboard.test.integration --settings=heat_dashboard.test.settings --tag integration
|
|
|
|
[testenv:pep8]
|
|
commands = flake8 {posargs}
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:cover]
|
|
commands =
|
|
coverage erase
|
|
coverage run --source=heat_dashboard {toxinidir}/manage.py test heat_dashboard.test.tests --settings=heat_dashboard.test.settings {posargs}
|
|
coverage xml
|
|
coverage html
|
|
|
|
[testenv:py3-dj111]
|
|
basepython = python3
|
|
commands =
|
|
pip install django>=1.11,<2
|
|
{[unit_tests]commands}
|
|
|
|
[testenv:docs]
|
|
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:releasenotes]
|
|
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
|
|
-r{toxinidir}/doc/requirements.txt
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[hacking]
|
|
local-check-factory = horizon.hacking.checks.factory
|
|
|
|
[flake8]
|
|
exclude = .venv,.git,.tox,dist,*lib/python*,*egg,build,panel_template,dash_template,local_settings.py,*/local/*,*/test/test_plugins/*,.ropeproject,node_modules,.tmp
|
|
# F405 TEMPLATES may be undefined, or defined from star imports
|
|
# (because it is not easy to avoid this in openstack_dashboard.test.settings)
|
|
# W504 line break after binary operator
|
|
# (W503 and W504 are incompatible and we need to choose one of them.
|
|
# Existing codes follows W503, so we disable W504.)
|
|
ignore = F405,W504
|
|
max-complexity = 20
|
|
import-order-style = pep8
|
|
|
|
[testenv:npm]
|
|
passenv =
|
|
HOME
|
|
DISPLAY
|
|
CHROME_BIN
|
|
commands =
|
|
nodeenv -p
|
|
npm install
|
|
npm run {posargs:test}
|
|
|
|
[doc8]
|
|
# File extensions to check
|
|
extensions = .rst, .yaml
|
|
# Maximal line length should be 80 but we have some overlong lines.
|
|
# Let's not get far more in.
|
|
max-line-length = 80
|
|
# Disable some doc8 checks:
|
|
# D000: Check RST validity
|
|
# - cannot handle "none" for code-block directive
|
|
ignore = D000
|
|
|
|
[testenv:lower-constraints]
|
|
basepython = python3
|
|
deps =
|
|
-c{toxinidir}/lower-constraints.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
-r{toxinidir}/requirements.txt
|