[tox] minversion = 2.0 envlist = docs,flake8,mypy,coverage,py{27,34,35,36,37,38,py},du{11,12,13,14} [testenv] usedevelop = True passenv = https_proxy http_proxy no_proxy PERL PERL5LIB PYTEST_ADDOPTS EPUBCHECK_PATH description = py{27,34,35,36,37,38,py}: Run unit tests against {envname}. du{11,12,13,14}: Run unit tests with the given version of docutils. # TODO(stephenfin) Replace this with the 'extras' config option when tox 2.4 is # widely available, likely some time after the Ubuntu 18.04 release # # https://tox.readthedocs.io/en/latest/config.html#confval-extras=MULTI-LINE-LIST deps = .[test,websupport] du11: docutils==0.11 du12: docutils==0.12 du13: docutils==0.13.1 du14: docutils==0.14 setenv = PYTHONWARNINGS = all,ignore::ImportWarning:pkgutil,ignore::ImportWarning:importlib._bootstrap,ignore::ImportWarning:importlib._bootstrap_external,ignore::ImportWarning:pytest_cov.plugin,ignore::DeprecationWarning:site,ignore::DeprecationWarning:_pytest.assertion.rewrite,ignore::DeprecationWarning:_pytest.fixtures,ignore::DeprecationWarning:distutils SPHINX_TEST_TEMPDIR = {envdir}/testbuild commands= pytest -Wall --durations 25 {posargs} [testenv:flake8] basepython = python3 description = Run style checks. commands = flake8 [testenv:pylint] basepython = python3 description = Run source code analyzer. deps = pylint {[testenv]deps} commands = pylint --rcfile utils/pylintrc sphinx [testenv:coverage] basepython = python3 description = Run code coverage checks. setenv = PYTEST_ADDOPTS = --cov sphinx --cov-config {toxinidir}/setup.cfg commands = {[testenv]commands} coverage report [testenv:mypy] basepython = python3 description = Run type checks. deps = mypy commands= mypy sphinx/ [testenv:docs] basepython = python3 description = Build documentation. commands = python setup.py build_sphinx {posargs}