keyosk/tox.ini

65 lines
1.6 KiB
INI
Raw Normal View History

[tox]
envlist = py36, py37, py38, format, static, static-tests, docs
skip_missing_interpreters = true
2020-02-19 03:37:39 +00:00
isolated_build = true
[testenv]
description = Run unit tests (pytest+{basepython})
2020-02-19 03:37:39 +00:00
deps =
marshmallow == 3.5.0
passlib == 1.7.2
peewee == 3.13.1
pytest == 5.3.5
pytest-cov == 2.8.1
toml == 0.10.0
2020-02-19 04:02:43 +00:00
commands =
2020-02-24 01:24:39 +00:00
pytest --cov={envsitepackagesdir}/keyosk --cov-config .coveragerc tests/ --cov-report term-missing
[testenv:format]
description = Enforce file formatting (pre-commit)
skip_install = true
deps =
pre-commit == 2.1.0
commands =
2020-02-19 03:37:39 +00:00
pre-commit run --all-files
[testenv:static]
description = Static code analysis (mypy+pylint+bandit)
ignore_errors = true
2020-02-19 04:02:43 +00:00
deps =
pylint == 2.3.1
astroid == 2.2.5
mypy == 0.761
bandit == 1.6.2
2020-02-19 03:37:39 +00:00
commands =
mypy keyosk --ignore-missing-imports --no-strict-optional
pylint keyosk --rcfile .pylintrc
2020-02-19 03:37:39 +00:00
bandit --recursive keyosk
[testenv:static-tests]
description = Static code analysis for the tests (mypy+pylint+bandit)
ignore_errors = true
deps =
pytest == 5.3.5
pylint == 2.3.1
astroid == 2.2.5
mypy == 0.761
bandit == 1.6.2
commands =
mypy tests --ignore-missing-imports --no-strict-optional
pylint tests --rcfile .pylintrc
bandit --recursive tests --skip B101
2020-02-19 03:37:39 +00:00
[testenv:docs]
description = Build documentation (sphinx)
2020-02-19 03:37:39 +00:00
deps =
sphinx == 2.4.2
sphinx-autodoc-typehints == 1.10.3
2020-02-19 03:37:39 +00:00
whitelist_externals =
rm
commands =
sphinx-apidoc -o "./docs/" "keyosk"
rm "docs/modules.rst"
sphinx-build -M html "./docs/" "./docs/_build" -W
sphinx-build -M latex "./docs/" "./docs/_build" -W