tox.ini
[flake8]
max-line-length = 99
extend-ignore = E203
extend-exclude =
venv
[gh-actions]
python =
3.8: py38
3.9: py39, fmt-check, lint, type-check
3.10: py310
3.11: py311
3.12: py312
[tox]
envlist =
fmt-check
lint
type-check
py{38,39,310,311,312}
skip_missing_interpreters = true
isolated_build = true
[testenv]
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/dev-requirements.txt
commands =
python -m pytest --cov=./ --cov-report=html --cov-report=term --cov-fail-under=100 test.py
[testenv:type-check]
skip_install = true
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/dev-requirements.txt
commands =
mypy cppcheck_junit.py test.py
[testenv:lint]
skip_install = true
deps =
-r{toxinidir}/dev-requirements.txt
commands =
flake8
[testenv:fmt]
skip_install = true
deps =
-r{toxinidir}/dev-requirements.txt
commands =
isort .
black .
[testenv:fmt-check]
skip_install = true
deps =
-r{toxinidir}/dev-requirements.txt
commands =
isort --check -v .
black --check .
[testenv:build]
skip_install = true
deps =
build
commands =
{envpython} -m build
[testenv:upload]
skip_install = true
deps =
twine
commands =
{envpython} -m twine upload {toxinidir}/dist/*