chirp/tox.ini
Dan Smith 9260e3a8e1 Add mypy to style target (for non-driver code)
My patience with mypy is very thin, but it does catch some stuff that
other checkers don't, even outside the realm of typing. This should
at least make sure any type annotations we _do_ get are correct.

There are a lot of errors in the drivers, so limit this to just the
core code for now.
2024-02-15 15:41:20 -08:00

76 lines
1.5 KiB
INI

[tox]
envlist = style,unit,driver
[flake8]
builtins =
_,
ngettext,
[testenv]
sitepackages = True
passenv =
HOME
CHIRP_TESTS
CHIRP_TESTIMG
CHIRP_TEST_BITWISE_STRICT_BYTES
PIP_INDEX_URL
PIP_TRUSTED_HOST
allowlist_externals = bash
deps = future
[testenv:style]
sitepackages = False
deps =
pep8
flake8
mypy
commands =
python ./tools/cpep8.py {posargs}
mypy --config-file .mypy.ini chirp --exclude='/drivers/*' --exclude='chirp/share/*'
[textenv:py3clean]
commands =
py3clean chirp tests
[testenv:unit]
setenv =
PYTHONPATH=../..
deps =
-rtest-requirements.txt
commands =
pytest --disable-warnings --html=unit_report.html -v tests/unit {posargs}
[testenv:driver]
setenv =
PYTHONPATH=../..
CHIRP_DEBUG=y
deps =
{[testenv:unit]deps}
pytest-xdist
commands =
pytest --disable-warnings --html=driver_report.html -v tests/test_drivers.py -n auto {posargs}
[testenv:fast-driver]
setenv =
PYTHONPATH=../..
CHIRP_DEBUG=y
deps =
{[testenv:unit]deps}
pytest-xdist
commands =
python tools/fast-driver.py --disable-warnings --html=driver_report.html -v tests/test_drivers.py -n auto {posargs}
[pytest]
xfail_strict = true
render_collapsed = True
[testenv:makesupported]
allowlist_externals =
git
deps =
-rtest-requirements.txt
commands =
python chirp/share/make_supported.py model_support.html
python tools/py3_driver_progress.py -o tests/Python3_Driver_Testing.md tests/py3_driver_testers.txt tests/model_stats.tsv
git diff --exit-code tests/Python3_Driver_Testing.md