45 lines
1.3 KiB
INI
45 lines
1.3 KiB
INI
# Benefits of using tox:
|
|
#
|
|
# 1. makes sure we are testing west as installed by setup.py
|
|
# 2. avoid touching user global / system config files
|
|
# 3. avoid touching any git repositories outside of tmpdirs
|
|
# 4. ensure global / system config settings have no effect on the tests
|
|
|
|
[tox]
|
|
envlist=py3
|
|
|
|
[flake8]
|
|
# We explicitly disable the following errors:
|
|
#
|
|
# - E126: continuation line over-indented for hanging indent
|
|
# - E261: at least two spaces before inline comment
|
|
# - E302: expected 2 blank lines, found 1
|
|
# - E305: expected 2 blank lines after class or function definition, found 1
|
|
# - W504: line break after binary operator
|
|
ignore = E126,E261,E302,E305,W504
|
|
# Don't lint setup.py, the .tox or python virtualenv directory, or the build directory
|
|
exclude = setup.py,.tox,.venv,build
|
|
max-line-length = 100
|
|
|
|
[mypy]
|
|
mypy_path=src
|
|
ignore_missing_imports=True
|
|
|
|
[testenv]
|
|
deps =
|
|
setuptools-scm
|
|
pytest
|
|
pytest-cov
|
|
types-PyYAML
|
|
flake8
|
|
mypy
|
|
ruff
|
|
setenv =
|
|
# For instance: ./.tox/py3/tmp/
|
|
TOXTEMPDIR={envtmpdir}
|
|
commands =
|
|
python -m pytest --cov-report=html --cov=west {posargs:tests} --basetemp='{envtmpdir}/pytest with space/'
|
|
python -m flake8 --config='{toxinidir}'/tox.ini '{toxinidir}'
|
|
python -m ruff check '{toxinidir}'
|
|
python -m mypy --config-file='{toxinidir}'/tox.ini --package=west
|