[tox] # py3 first to avoid .testrepository incompatibility envlist = py35,py27,pypy,pep8 minversion = 1.6 skipsdist = True [testenv] setenv = VIRTUAL_ENV={envdir} LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=C PYTHONWARNINGS=default::DeprecationWarning usedevelop = True install_command = pip install {opts} {packages} 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 # Delete bytecodes from normal directories before running tests. # Note that bytecodes in dot directories will not be deleted # to keep bytecodes of python modules installed into virtualenvs. commands = sh -c "find . -type d -name '.?*' -prune -o \ \( -type d -name '__pycache__' -o -type f -name '*.py[co]' \) \ -print0 | xargs -0 rm -rf" python setup.py testr --testr-args='{posargs}' whitelist_externals = sh [testenv:pep8] commands = flake8 distribute = false [testenv:venv] commands = {posargs} [testenv:functional] setenv = OS_TEST_PATH = ./neutronclient/tests/functional/core OS_NEUTRONCLIENT_EXEC_DIR = {envdir}/bin [testenv:functional-adv-svcs] setenv = OS_TEST_PATH = ./neutronclient/tests/functional/adv-svcs OS_NEUTRONCLIENT_EXEC_DIR = {envdir}/bin [testenv:cover] commands = python setup.py test --coverage --coverage-package-name=neutronclient --testr-args='{posargs}' coverage report [testenv:docs] deps = -r{toxinidir}/doc/requirements.txt commands = sphinx-build -W -b html doc/source doc/build/html [testenv:releasenotes] deps = -r{toxinidir}/doc/requirements.txt commands = sphinx-build -a -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html [flake8] show-source = true exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools import-order-style = pep8 # H904: Delay string interpolations at logging calls enable-extensions=H904 [testenv:lower-constraints] basepython = python3 deps = -c{toxinidir}/lower-constraints.txt -r{toxinidir}/test-requirements.txt -r{toxinidir}/requirements.txt