[tox] envlist = py36,py37,py38,py39,py310,py311.pypy36,pypy39,bare,coverage-report [testenv] # Prevent random setuptools/pip breakages like # https://github.com/pypa/setuptools/issues/1042 from breaking our builds. setenv = VIRTUALENV_NO_DOWNLOAD=1 deps= -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:py36] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:py37] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} [testenv:py38] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:py39] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:py310] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:py311] deps= dbus-python -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run --parallel -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:bare] deps= -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:pypy36] deps= # cryptography 3.3 is the last one not needing a Rust toolchain. cryptography<3.4 -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:pypy37] deps= # cryptography 3.3 is the last one not needing a Rust toolchain. cryptography<3.4 -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} [testenv:pypy38] deps= # cryptography 3.3 is the last one not needing a Rust toolchain. cryptography<3.4 -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:pypy39] deps= # cryptography 3.3 is the last one not needing a Rust toolchain. cryptography<3.4 -r{toxinidir}/requirements.txt -r{toxinidir}/dev-requirements.txt -r{toxinidir}/all-plugin-requirements.txt commands = python setup.py compile_catalog coverage run -m pytest {posargs} flake8 . --count --show-source --statistics [testenv:coverage-report] deps = coverage skip_install = true commands= coverage combine coverage xml coverage report