[tox] # py3 first to avoid .testrepository incompatibility envlist = py34,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 usedevelop = True install_command = pip install -U {opts} {packages} deps = -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] commands = sphinx-build -W -b html doc/source doc/build/html [testenv:releasenotes] 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,*openstack/common*,*lib/python*,*egg,tools