; a generative tox configuration, see: https://testrun.org/tox/latest/config.html#generative-envlist [tox] envlist = clean, check, {py27,py33,py34,py35,py36,pypy}, report, docs [testenv] basepython = pypy: {env:TOXPYTHON:pypy} {py27,docs,spell}: {env:TOXPYTHON:python2.7} py33: {env:TOXPYTHON:python3.3} py34: {env:TOXPYTHON:python3.4} py35: {env:TOXPYTHON:python3.5} py36: {env:TOXPYTHON:python3.6} {bootstrap,clean,check,report,coveralls,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests PYTHONUNBUFFERED=yes passenv = * usedevelop = false deps = pytest pytest-travis-fold pytest-cov commands = {posargs:py.test --cov --cov-report=term-missing -vv tests} [testenv:bootstrap] deps = jinja2 matrix skip_install = true commands = python ci/bootstrap.py passenv = * [testenv:spell] setenv = SPELLCHECK=1 commands = sphinx-build -b spelling docs dist/docs skip_install = true deps = -r{toxinidir}/docs/requirements.txt sphinxcontrib-spelling pyenchant [testenv:docs] deps = -r{toxinidir}/docs/requirements.txt commands = sphinx-build {posargs:-E} -b html docs dist/docs sphinx-build -b linkcheck docs dist/docs [testenv:check] deps = docutils check-manifest flake8 readme-renderer pygments isort skip_install = true commands = python setup.py check --strict --metadata --restructuredtext check-manifest {toxinidir} flake8 src tests setup.py isort --verbose --check-only --diff --recursive src tests setup.py [testenv:coveralls] deps = coveralls skip_install = true commands = coveralls [] [testenv:codecov] deps = codecov skip_install = true commands = coverage xml --ignore-errors codecov [] [testenv:report] deps = coverage skip_install = true commands = coverage combine --append coverage report coverage html [testenv:clean] commands = coverage erase skip_install = true deps = coverage