[tox] minversion = 2.4.0 envlist = docs,flake8,mypy,coverage,py{35,36,37,38,39},du{12,13,14,15} [testenv] usedevelop = True passenv = https_proxy http_proxy no_proxy PERL PERL5LIB PYTEST_ADDOPTS EPUBCHECK_PATH TERM description = py{35,36,37,38,39}: Run unit tests against {envname}. du{12,13,14}: Run unit tests with the given version of docutils. deps = git+https://github.com/html5lib/html5lib-python # refs: https://github.com/html5lib/html5lib-python/issues/419 du12: docutils==0.12 du13: docutils==0.13.1 du14: docutils==0.14 du15: docutils==0.15 du16: docutils==0.16 extras = test setenv = PYTHONWARNINGS = all,ignore::ImportWarning:importlib._bootstrap_external,ignore::DeprecationWarning:site,ignore::DeprecationWarning:distutils commands= pytest --durations 25 {posargs} [testenv:flake8] basepython = python3 description = Run style checks. whitelist_externals = flake8 extras = lint commands = flake8 {posargs} [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. extras = lint commands= mypy sphinx/ [testenv:docs] basepython = python3 description = Build documentation. extras = docs commands = python setup.py build_sphinx {posargs} [testenv:docslint] basepython = python3 description = Lint documentation. extras = docs commands = python utils/doclinter.py CHANGES CONTRIBUTING.rst README.rst doc/ [testenv:bindep] description = Install binary dependencies. deps = bindep commands = bindep test