Run unittests across many Python versions
diff --git a/tox.ini b/tox.ini
index a335e3c..48d3973 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,25 +1,50 @@
[tox]
minversion = 3.4.0
-envlist = unittest, bandit, build
+envlist = {py27, py35, py36, py37, py38}-{unittest}, cover, bandit, build
+isolated_build = true
+skip_missing_interpreters = true
[testenv]
-basepython = python3
usedevelop = True
setenv =
- VIRTUAL_ENV={envdir}
- PYTHONWARNINGS=default::DeprecationWarning
-install_command = pip install {opts} {packages}
+ VIRTUAL_ENV={envdir}
+ PYTHONWARNINGS=default::DeprecationWarning
+deps = pip >= 19.3.1
+install_command =
+ pip install {opts} {packages}
[testenv:unittest]
deps =
- discover
- -r{toxinidir}/requirements.txt
-commands = discover -s examples/pyasn1_modules-example-switch/tests -s tests
+ discover
+ -r{toxinidir}/requirements.txt
+commands =
+ discover -s examples/pyasn1_modules-example-switch/tests -s tests
+
+[testenv:py27-unittest]
+deps = {[testenv:unittest]deps}
+commands = {[testenv:unittest]commands}
+
+[testenv:py35-unittest]
+deps = {[testenv:unittest]deps}
+commands = {[testenv:unittest]commands}
+
+[testenv:py36-unittest]
+deps = {[testenv:unittest]deps}
+commands = {[testenv:unittest]commands}
+
+[testenv:py37-unittest]
+deps = {[testenv:unittest]deps}
+commands = {[testenv:unittest]commands}
+
+[testenv:py38-unittest]
+deps = {[testenv:unittest]deps}
+commands = {[testenv:unittest]commands}
[testenv:cover]
+basepython = python3.7
setenv =
- {[testenv]setenv}
- PYTHON=coverage run --parallel-mode
+ {[testenv]setenv}
+ PYTHON=coverage run --parallel-mode
deps =
coverage
discover