89 lines
2.3 KiB
INI
89 lines
2.3 KiB
INI
[tox]
|
|
minversion = 2.4
|
|
envlist = py27,pypy,py34,py35,py36,py37,docs,pep8,py3pep8
|
|
|
|
[testenv]
|
|
extras =
|
|
test
|
|
idna: idna
|
|
deps =
|
|
# This must be kept in sync with Jenkinsfile and .travis/install.sh
|
|
coverage
|
|
./vectors
|
|
passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH USERNAME
|
|
commands =
|
|
pip list
|
|
# We use parallel mode and then combine here so that coverage.py will take
|
|
# the paths like .tox/py34/lib/python3.4/site-packages/cryptography/__init__.py
|
|
# and collapse them into src/cryptography/__init__.py.
|
|
coverage run --parallel-mode -m pytest --capture=no --strict {posargs}
|
|
coverage combine
|
|
coverage report -m
|
|
|
|
# This target disables coverage on pypy because of performance problems with
|
|
# coverage.py on pypy.
|
|
[testenv:pypy-nocoverage]
|
|
basepython = pypy
|
|
commands =
|
|
pip list
|
|
pytest --capture=no --strict {posargs}
|
|
|
|
# This target disables coverage on pypy because of performance problems with
|
|
# coverage.py on pypy.
|
|
[testenv:pypy3-nocoverage]
|
|
basepython = pypy3
|
|
commands =
|
|
pip list
|
|
pytest --capture=no --strict {posargs}
|
|
|
|
[testenv:docs]
|
|
extras =
|
|
docs
|
|
docstest
|
|
basepython = python3
|
|
commands =
|
|
sphinx-build -j4 -T -W -b html -d {envtmpdir}/doctrees docs docs/_build/html
|
|
sphinx-build -j4 -T -W -b latex -d {envtmpdir}/doctrees docs docs/_build/latex
|
|
sphinx-build -j4 -T -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html
|
|
sphinx-build -j4 -T -W -b spelling docs docs/_build/html
|
|
doc8 --allow-long-titles README.rst CHANGELOG.rst docs/ --ignore-path docs/_build/
|
|
python setup.py sdist
|
|
twine check dist/*
|
|
|
|
[testenv:docs-linkcheck]
|
|
extras =
|
|
docs
|
|
basepython = python2.7
|
|
commands =
|
|
sphinx-build -W -b linkcheck docs docs/_build/html
|
|
|
|
[testenv:pep8]
|
|
basepython = python3
|
|
extras =
|
|
pep8test
|
|
commands =
|
|
flake8 .
|
|
|
|
[testenv:randomorder]
|
|
deps =
|
|
{[testenv]deps}
|
|
pytest-random
|
|
commands =
|
|
pytest --capture=no --strict --random {posargs}
|
|
|
|
[flake8]
|
|
ignore = W504
|
|
exclude = .tox,*.egg,.git,_build,.hypothesis
|
|
select = E,W,F,N,I
|
|
application-import-names = cryptography,cryptography_vectors,tests
|
|
|
|
[doc8]
|
|
extensions = rst
|
|
|
|
[pytest]
|
|
addopts = -r s
|
|
markers =
|
|
requires_backend_interface: this test requires a specific backend interface
|
|
supported: parametrized test requiring only_if and skip_message
|
|
wycheproof_tests: this test runs a wycheproof fixture
|