diff options
Diffstat (limited to 'tox.ini')
| -rw-r--r-- | tox.ini | 104 |
1 files changed, 47 insertions, 57 deletions
@@ -1,91 +1,80 @@ [tox] -envlist = py26,py27,pypy,py33,py34,docs,pep8,py3pep8 +minversion = 2.4 +envlist = py27,pypy,py35,py36,py37,py38,docs,pep8,packaging +isolated_build = True [testenv] -# If you add a new dep here you probably need to add it in setup.py as well +extras = + test + idna: idna deps = + # This must be kept in sync with .travis/install.sh and .github/workflows/ci.yml coverage - iso8601 - pretend - pytest ./vectors -passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH + randomorder: pytest-randomly +passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH USERNAME PYTHONIOENCODING commands = pip list - python -c "from cryptography.hazmat.backends.openssl.backend import backend; print(backend.openssl_version_text())" # 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 + # the paths like .tox/py38/lib/python3.8/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 +# This target disables coverage on pypy because of performance problems with +# coverage.py on pypy. +[testenv:pypy-nocoverage] +basepython = pypy commands = - sphinx-build -W -b linkcheck docs docs/_build/html + pip list + pytest --capture=no --strict {posargs} -# Temporarily disable coverage on pypy because of performance problems with +# This target disables coverage on pypy because of performance problems with # coverage.py on pypy. -[testenv:pypy] +[testenv:pypy3-nocoverage] +basepython = pypy3 commands = pip list - python -c "from cryptography.hazmat.backends.openssl.backend import backend; print(backend.openssl_version_text())" - py.test --capture=no --strict {posargs} + pytest --capture=no --strict {posargs} -# Temporarily disable coverage on pypy3 because of performance problems with -# coverage.py on pypy3. -[testenv:pypy3] +[testenv:docs] +extras = + docs + docstest +basepython = python3 commands = - pip list - python -c "from cryptography.hazmat.backends.openssl.backend import backend; print(backend.openssl_version_text())" - py.test --capture=no --strict {posargs} + 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:pep8] -deps = - flake8 - flake8-import-order - pep8-naming +[testenv:docs-linkcheck] +extras = + docs +basepython = python2.7 commands = - flake8 . + sphinx-build -W -b linkcheck docs docs/_build/html -[testenv:py3pep8] -basepython = python3.3 -deps = - flake8 - flake8-import-order - pep8-naming +[testenv:pep8] +basepython = python3 +extras = + pep8test commands = flake8 . -[testenv:randomorder] +[testenv:packaging] deps = - {[testenv]deps} - pytest-random + check-manifest commands = - py.test --capture=no --strict --random {posargs} + check-manifest [flake8] -exclude = .tox,*.egg,.git,_build +ignore = W504 +exclude = .tox,*.egg,.git,_build,.hypothesis select = E,W,F,N,I application-import-names = cryptography,cryptography_vectors,tests @@ -97,3 +86,4 @@ 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 |
