- VIRTUAL_ENV={envdir}
- PYTHONWARNINGS=default::DeprecationWarning
-deps = -r{toxinidir}/test-requirements.txt
-commands = python setup.py test --slowest --testr-args='{posargs}'
+ PYTHONWARNINGS = error, ignore::DeprecationWarning:distutils.command.install, ignore::ImportWarning:importlib._bootstrap, ignore::DeprecationWarning:pip._vendor.urllib3.connection, ignore::DeprecationWarning:pip._vendor.urllib3.util.ssl_, ignore:The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives:DeprecationWarning, ignore:Creating a LegacyVersion has been deprecated and will be removed in the next major release:DeprecationWarning
+ VIRTUALENV_CREATOR = venv
+commands = mudpy_selftest mudpy/tests/fixtures/test_daemon.yaml
+
+[testenv:bandit]
+description = check for potential security risks in source code
+deps = bandit
+commands = bandit -r mudpy -x mudpy/tests {posargs}
+usedevelop = False
+
+[testenv:codespell]
+description = find common spelling mistakes in code and documentation
+deps = codespell
+commands = codespell {posargs}
+usedevelop = False
+
+[testenv:demo]
+description = start an interactive demo with the sample config
+commands = mudpy {posargs}
+
+[testenv:dist]
+description = build release artifacts and check for conformance
+allowlist_externals = rm
+deps =
+ pbr
+ twine
+ wheel
+commands =
+ rm -fr {toxinidir}/dist
+ python setup.py bdist_wheel sdist
+ twine check --strict {toxinidir}/dist/*
+usedevelop = False