48 lines
1.5 KiB
INI
48 lines
1.5 KiB
INI
[tox]
|
|
envlist = py39, lint, pylint, typing, cov
|
|
skip_missing_interpreters = True
|
|
ignore_basepython_conflict = True
|
|
|
|
[testenv]
|
|
basepython = {env:PYTHON3_PATH:python3}
|
|
# pip version duplicated in homeassistant/package_constraints.txt
|
|
pip_version = pip>=21.0,<22.1
|
|
install_command = python -m pip install --use-deprecated legacy-resolver {opts} {packages}
|
|
commands =
|
|
{envpython} -X dev -m pytest --timeout=9 --durations=10 -n auto --dist=loadfile -qq -o console_output_style=count -p no:sugar {posargs}
|
|
{toxinidir}/script/check_dirty
|
|
deps =
|
|
-r{toxinidir}/requirements_test_all.txt
|
|
|
|
[testenv:cov]
|
|
commands =
|
|
{envpython} -X dev -m pytest --timeout=9 --durations=10 -n auto --dist=loadfile -qq -o console_output_style=count -p no:sugar --cov --cov-report= {posargs}
|
|
{toxinidir}/script/check_dirty
|
|
deps =
|
|
-r{toxinidir}/requirements_test_all.txt
|
|
|
|
[testenv:pylint]
|
|
skip_install = True
|
|
ignore_errors = True
|
|
deps =
|
|
-r{toxinidir}/requirements_all.txt
|
|
-r{toxinidir}/requirements_test.txt
|
|
commands =
|
|
pylint {env:PYLINT_ARGS:} {posargs} homeassistant
|
|
|
|
[testenv:lint]
|
|
deps =
|
|
-r{toxinidir}/requirements_test.txt
|
|
commands =
|
|
python -m script.gen_requirements_all validate
|
|
python -m script.hassfest --action validate
|
|
pre-commit run codespell {posargs: --all-files}
|
|
pre-commit run flake8 {posargs: --all-files}
|
|
pre-commit run bandit {posargs: --all-files}
|
|
|
|
[testenv:typing]
|
|
deps =
|
|
-r{toxinidir}/requirements_test_all.txt
|
|
commands =
|
|
mypy homeassistant
|