Files
python-observabilityclient/tox.ini
Jaromir Wysoglad 2387b7614b Reduce the amount of flake8 excludes
Change-Id: I07a8ba2c085854bf2815b2a8ee706e2da7730752
Signed-off-by: Jaromir Wysoglad <jwysogla@redhat.com>
2025-10-15 14:28:13 +00:00

88 lines
2.5 KiB
INI

[tox]
minversion = 4.2.5
envlist = py3,pep8
[testenv]
usedevelop = True
setenv =
VIRTUAL_ENV={envdir}
OBSERVABILITY_CLIENT_EXEC_DIR={envdir}/bin
OS_TEST_PATH = ./observabilityclient/tests/unit
passenv =
PROMETHEUS_*
OBSERVABILITY_*
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = stestr run --slowest {posargs} --test-path {env:OS_TEST_PATH}
[testenv:pep8]
skip_install = true
deps =
pre-commit
commands =
pre-commit run -a
[testenv:venv]
commands = {posargs}
[testenv:cover]
deps =
{[testenv]deps}
pytest-cov
commands = observabilityclient {posargs} {env:$OS_TEST_PATH}
[testenv:functional]
setenv =
OS_TEST_PATH = ./observabilityclient/tests/functional
OS_TESTENV_NAME = {envname}
allowlist_externals =
bash
deps =
{[testenv]deps}
pytest
commands =
bash tools/fix_ca_bundle.sh
stestr run --slowest {posargs} --test-path {env:OS_TEST_PATH}
[testenv:docs]
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands = sphinx-build --keep-going -b html doc/source doc/build/html
[flake8]
show-source = True
# W504 line break after binary operator
ignore = W504
exclude = .venv,.git,.tox,dist,doc,*egg,build,*lib/python*
# [H101] Include your name with TODOs as in # TODO(yourname).
# [H104] Empty files should not contain license or comments
# [H106] Do not put vim configuration in source files.
# [H201] Do not write except:, use except Exception: at the very least.
# [H202] Testing for Exception being raised
# [H203] Use assertIs(Not)None to check for None.
# [H204] Use assert(Not)Equal to check for equality.
# [H205] Use assert(Greater|Less)(Equal) for comparison.
# [H23] Py3 compat
# [H301] Do not import more than one module per line (*)
# [H303] Do not use wildcard * import (*)
# [H304] Do not make relative imports
# [H306] Alphabetically order your imports by the full module path.
enable-extensions=G,H101,H104,H106,H201,H202,H203,H204,H205,H23,H301,H303,H304,H306
application-import-names = observabilityclient
[pytest]
addopts = --verbose
norecursedirs = .tox
[testenv:releasenotes]
deps =
-r{toxinidir}/doc/requirements.txt
-r{toxinidir}/requirements.txt
allowlist_externals =
sphinx-build
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html releasenotes/source releasenotes/build/html