# TODO(mk): Enabled tests when Python 3.6 is available in CI.
# Python 3.5 reached the end of its life on September 13th, 2020.
# The 3.5 release misses important security fixes.
[tox]
minversion = 3.4.0
skipsdist = True
envlist = py36
requires = pip == 21.1.2
           setuptools >= 30.0.0

[testenv]
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
         OS_STDOUT_NOCAPTURE=False
         OS_STDERR_NOCAPTURE=False
deps =
    -r{toxinidir}/test-requirements.txt
    -r{toxinidir}/requirements.txt
commands =
    {toxinidir}/run-tests.sh {posargs}
    {toxinidir}/run-func-tests.sh {posargs}
    # D100: Missing docstring in public module
    # D101: Missing docstring in public class
    # D102: Missing docstring in public method
    # D103: Missing docstring in public function
    # D104: Missing docstring in public package
    # D107: Missing docstring in __init__
    flake8 -v --ignore D100,D101,D102,D103,D104,D107
    pycodestyle -v
    # B108: Probable insecure usage of temp file/directory.
    bandit -r -x tests -s B108 sf_notifier

[flake8]
exclude = .git,.tox,.eggs,.pytest_cache,doc,venv
show-source = true
enable-extensions = H904

[pycodestyle]
exclude = .git,.tox,.eggs,.pytest_cache,doc,venv
