blob: dc8811af7b99e16f0d2e1e9998663e818e42f731 [file] [log] [blame]
[tox]
envlist = py26,py27,pypy,py32,py33,py34,docs,pep8,py3pep8
[testenv]
# If you add a new dep here you probably need to add it in setup.py as well
deps =
coverage
iso8601
pretend
pytest
./vectors
commands =
# 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
[testenv:docs]
deps =
doc8
pyenchant
readme>=0.5.1
sphinx
sphinx_rtd_theme
sphinxcontrib-spelling
basepython = python2.7
commands =
sphinx-build -W -b html -d {envtmpdir}/doctrees docs docs/_build/html
sphinx-build -W -b latex -d {envtmpdir}/doctrees docs docs/_build/latex
sphinx-build -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html
sphinx-build -W -b spelling docs docs/_build/html
doc8 --allow-long-titles README.rst CHANGELOG.rst docs/ --ignore-path docs/_build/
python setup.py check --restructuredtext --strict
[testenv:docs-linkcheck]
deps =
sphinx
basepython = python2.7
commands =
sphinx-build -W -b linkcheck docs docs/_build/html
# Temporarily disable coverage on pypy because of performance problems with
# coverage.py on pypy.
[testenv:pypy]
commands =
py.test --capture=no --strict {posargs}
# Temporarily disable coverage on pypy3 because of performance problems with
# coverage.py on pypy3.
[testenv:pypy3]
commands =
py.test --capture=no --strict {posargs}
[testenv:pep8]
deps =
flake8
flake8-import-order
pep8-naming
commands =
flake8 .
[testenv:py3pep8]
basepython = python3.3
deps =
flake8
flake8-import-order
pep8-naming
commands =
flake8 .
[testenv:randomorder]
deps =
{[testenv]deps}
pytest-random
commands =
py.test --capture=no --strict --random {posargs}
[flake8]
exclude = .tox,*.egg
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