armada/tox.ini
Felipe Monteiro 354cc14c59 Use stestr as the test runner for unit tests
This patchset changes Armada to use stestr instead of pytest
for running unit tests as it is the officially sanctioned
test runner in OpenStack [0].

[0] https://openstack.nimeyo.com/119685/openstack-dev-recent-changes-in-testr-and-migrating-stestr

Change-Id: I4f1320968990d9d9cc4d50cac0f2eecc3a0d331c
2018-06-08 21:50:03 +00:00

76 lines
1.8 KiB
INI

[tox]
skipsdist = True
envlist = py35, pep8, cover, bandit
[testenv]
deps=
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
passenv=HTTP_PROXY HTTPS_PROXY http_proxy https_proxy NO_PROXY no_proxy
setenv=
VIRTUAL_ENV={envdir}
basepython = python3.5
usedevelop = True
install_command = pip install {opts} {packages}
whitelist_externals =
find
flake8
rm
commands =
find . -type f -name "*.pyc" -delete
rm -Rf .testrepository/times.dbm
[testenv:py35]
commands =
{[testenv]commands}
stestr run {posargs}
stestr slowest
[testenv:docs]
deps = -r{toxinidir}/doc/requirements.txt
commands =
rm -rf doc/build
sphinx-build -W -b html doc/source doc/build/html
[testenv:genconfig]
commands =
oslo-config-generator --config-file=etc/armada/config-generator.conf
[testenv:genpolicy]
commands =
oslopolicy-sample-generator --config-file=etc/armada/policy-generator.conf
[testenv:releasenotes]
deps = -r{toxinidir}/doc/requirements.txt
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[testenv:pep8]
deps =
.[bandit]
{[testenv]deps}
commands =
flake8 {posargs}
# Run security linter as part of the pep8 gate instead of a separate zuul job.
bandit -r armada -x armada/tests -n 5
[testenv:bandit]
commands =
bandit -r armada -x armada/tests -n 5
[testenv:cover]
setenv = {[testenv]setenv}
PYTHON=coverage run --source armada --parallel-mode
commands =
coverage erase
find . -type f -name "*.pyc" -delete
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
coverage report
[flake8]
filename = *.py
ignore =
exclude = .git,.tox,dist,*lib/python*,*egg,build,releasenotes,doc/*,hapi,venv