blob: 8aba4df9223f22b45945a626a90bacd956bc847c [file] [log] [blame]
[tox]
envlist = py{py3,37,38,39,310,311,312}{,-cryptographyMinimum}{,-useWheel}{,-randomorder},py311-twistedTrunk,check-manifest,lint,py311-mypy,docs,coverage-report
[testenv]
allowlist_externals =
openssl
passenv =
ARCHFLAGS
CFLAGS
LC_ALL
LDFLAGS
PATH
LD_LIBRARY_PATH
TERM
RUSTUP_TOOLCHAIN
RUSTUP_HOME
extras =
test
deps =
coverage>=4.2
cryptographyMinimum: cryptography==41.0.5
randomorder: pytest-randomly
setenv =
# Do not allow the executing environment to pollute the test environment
# with extra packages.
PYTHONPATH=
PIP_NO_BINARY=cryptography
useWheel: PIP_NO_BINARY=
commands =
cryptographyMain: pip install -U git+https://github.com/pyca/cryptography.git
openssl version
coverage run --parallel -m OpenSSL.debug
coverage run --parallel -m pytest -v {posargs}
[testenv:py311-twistedTrunk]
deps =
pyasn1!=0.5.0
Twisted[all_non_platform] @ git+https://github.com/twisted/twisted
setenv =
commands =
python -m OpenSSL.debug
python -m twisted.trial -j4 --reporter=text twisted
[testenv:lint]
basepython = python3
deps =
ruff
skip_install = true
commands =
ruff check .
ruff format --check .
[testenv:py311-mypy]
deps =
mypy==1.1.1
skip_install = true
commands =
mypy src
[testenv:check-manifest]
deps =
check-manifest
skip_install = true
commands =
check-manifest
[testenv:docs]
extras =
docs
commands =
sphinx-build -W -b html doc doc/_build/html {posargs}
[testenv:coverage-report]
deps = coverage[toml]>=4.2
skip_install = true
commands =
coverage combine
coverage report