
Previously the lint test was failing to run because there was no configuration file for it. This patch adds the .eslintrc file and fixes the found lint issues. This patch also adds tox environments to run the lint and karma tests. Change-Id: Idcef4c3ce4e9455acceed645c2530355989a7ee2
81 lines
2.5 KiB
INI
81 lines
2.5 KiB
INI
[tox]
|
|
minversion = 3.18.0
|
|
envlist = py38,pep8
|
|
skipsdist = True
|
|
# Automatic envs (pyXX) will only use the python version appropriate to that
|
|
# env and ignore basepython inherited from [testenv] if we set
|
|
# ignore_basepython_conflict.
|
|
ignore_basepython_conflict = True
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
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
|
|
PYTHONDONTWRITEBYTECODE=1
|
|
DJANGO_SETTINGS_MODULE=designatedashboard.settings
|
|
allowlist_externals = find
|
|
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
|
-r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
|
|
commands =
|
|
find . -type f -name "*.pyc" -delete
|
|
{toxinidir}/manage.py test designatedashboard --settings=designatedashboard.tests.settings
|
|
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
|
|
|
[testenv:pep8]
|
|
commands = flake8
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:cover]
|
|
commands =
|
|
coverage erase
|
|
coverage run {toxinidir}/manage.py test designatedashboard --settings=designatedashboard.tests.settings {posargs}
|
|
coverage xml --include 'designatedashboard/*' -o cover/coverage.xml
|
|
coverage html --include 'designatedashboard/*' -d cover
|
|
|
|
[testenv:docs]
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
commands = sphinx-build -W -b html -d doc/build/doctrees doc/source doc/build/html
|
|
|
|
[testenv:pdf-docs]
|
|
deps = -r{toxinidir}/doc/requirements.txt
|
|
envdir = {toxworkdir}/docs
|
|
allowlist_externals =
|
|
make
|
|
commands =
|
|
sphinx-build -W -b latex doc/source doc/build/pdf
|
|
make -C doc/build/pdf
|
|
|
|
[flake8]
|
|
# E123, E125 skipped as they are invalid PEP-8.
|
|
# 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
|
|
show-source = True
|
|
ignore = E123,E125,F405,W504
|
|
builtins = _
|
|
exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,releasenotes,node_modules
|
|
|
|
[testenv:releasenotes]
|
|
commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[testenv:eslint]
|
|
# npm must be installed on the system, for example
|
|
# sudo apt-get install npm
|
|
commands = npm install
|
|
npm run lint
|
|
|
|
[testenv:karma]
|
|
# npm must be installed on the system, for example
|
|
# sudo apt-get install npm
|
|
commands = npm install
|
|
npm test
|