Skip to content
Snippets Groups Projects
Select Git revision
  • branch/default-vms
  • branch/default default protected
  • master
  • alex-patch-2
  • 2.9.x
  • alex-patch-1
  • 2.4.x
  • 2.3.x
  • 2.2.x
  • 2.1.x
  • 2.0.x
  • 1.8.x
  • 1.7.x
  • 1.5.x
  • 1.3.x
  • 1.2.x
  • 1.1.x
  • 1.0.x
  • 0.9.x
  • 0.8.x
20 results

tox.ini

Blame
  • tox.ini 2.36 KiB
    [tox]
    minversion = 2.4
    envlist = py27,pypy,py35,py36,py37,py38,docs,pep8,packaging
    isolated_build = True
    
    [testenv]
    extras =
        test
        idna: idna
        ssh: ssh
    deps =
        # This must be kept in sync with .travis/install.sh and .github/workflows/ci.yml
        coverage
        ./vectors
        randomorder: pytest-randomly
    passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH USERNAME PYTHONIOENCODING
    commands =
        pip list
        # We use parallel mode and then combine here so that coverage.py will take
        # 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
    
    # 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 -T -W -b html -d {envtmpdir}/doctrees docs docs/_build/html
        sphinx-build -T -W -b latex -d {envtmpdir}/doctrees docs docs/_build/latex
        sphinx-build -T -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html
        sphinx-build -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:packaging]
    deps =
        check-manifest
    commands =
        check-manifest
    
    [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