gunicorn/tox.ini

72 lines
1.8 KiB
INI

[tox]
envlist =
py{37,38,39,310,311,312,py3},
lint,
docs-lint,
pycodestyle,
run-entrypoint,
run-module,
[testenv]
package = editable
commands = pytest --cov=gunicorn {posargs}
deps =
-rrequirements_test.txt
[testenv:run-entrypoint]
package = wheel
deps =
# entry point: console script (provided by setuptools from pyproject.toml)
commands = python -c 'import subprocess; cmd_out = subprocess.check_output(["gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
[testenv:run-module]
package = wheel
deps =
# runpy (provided by module.__main__)
commands = python -c 'import sys,subprocess; cmd_out = subprocess.check_output([sys.executable, "-m", "gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
[testenv:lint]
no_package = true
commands =
pylint -j0 \
--max-line-length=120 \
gunicorn \
tests/test_arbiter.py \
tests/test_config.py \
tests/test_http.py \
tests/test_invalid_requests.py \
tests/test_logger.py \
tests/test_pidfile.py \
tests/test_sock.py \
tests/test_ssl.py \
tests/test_statsd.py \
tests/test_systemd.py \
tests/test_util.py \
tests/test_valid_requests.py
deps =
pylint==2.17.4
[testenv:docs-lint]
no_package = true
allowlist_externals =
rst-lint
bash
grep
deps =
restructuredtext_lint
pygments
commands =
rst-lint README.rst docs/README.rst
bash -c "(set -o pipefail; rst-lint --encoding utf-8 docs/source/*.rst | grep -v 'Unknown interpreted text role\|Unknown directive type'); test $? == 1"
[testenv:pycodestyle]
no_package = true
commands =
pycodestyle gunicorn
deps =
pycodestyle
[pycodestyle]
max-line-length = 120
ignore = E129,W503,W504,W606