[tox]
envlist = lint,py36,py37,py38,py39,py310,pep8,doc,sphinx
skip_missing_interpreters = true
[testenv]
setenv =
PYTHONPATH = {envsitepackagesdir}
deps =
pytest
coverage
pip >= 19.1.1
#sitepackages = True
commands =
{envpython} -bb -m coverage run -m pytest --capture=no --strict-markers {posargs}
{envpython} -m coverage report -m
[testenv:lint]
basepython = python3.10
deps =
pylint
#sitepackages = True
commands =
{envpython} -m pylint -d c,r,i,W0613 -r n -f colorized --notes= --disable=star-args ./jwcrypto
[testenv:pep8]
basepython = python3.10
deps =
flake8
flake8-import-order
pep8-naming
commands =
{envpython} -m flake8 {posargs} --ignore=N802,N818 jwcrypto
[testenv:doc]
deps =
doc8
docutils
markdown
basepython = python3.10
commands =
doc8 --allow-long-titles README.md
markdown_py README.md -f {toxworkdir}/README.md.html
[testenv:sphinx]
basepython = python3.10
changedir = docs/source
deps =
sphinx
commands =
sphinx-build -v -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
[pytest]
python_files = jwcrypto/test*.py
[flake8]
exclude = .tox,*.egg,dist,build,docs/source
show-source = true
max-line-length = 79
ignore = N802
application-import-names = jwcrypto