From 2ea552e019bd427b5b1709160a6ed7da9dd23fbd Mon Sep 17 00:00:00 2001 From: Chris Dent Date: Mon, 10 Dec 2018 11:22:54 +0000 Subject: Add python 3.7 unit and functional tox jobs Without these, if you try to run tox -epy37,functional-py37 you'll get a successful tox run, but no actual tests are run, which is rather misleading. Given the generaly availability of python 3.7 this is a bad thing. Running the tests under python 3.7 identified a few minor tests failures, also fixed here. Each is a result of a change in behavior in python 3.7: * printable unicode changes with a new Unicode 11-based unicodedata package * intentionally raising StopIteration in a generator is now considered a RuntimeError, 'return' should be used instead * an exception message is different beween python 3 and python 2, and the guard for it was mapping python 3.5 and 3.6 but not 3.7. zuul configuration is adjusted to add an experimental job for python 3.7 unit. A functional test job is not added, because we don't have 3.6 yet, and we probably want to get through that first. Closes-Bug: #1807976 Closes-Bug: #1807970 Change-Id: I37779a12d3b36eb3dc7e2733d07fe0ed23ab3da6 --- tox.ini | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'tox.ini') diff --git a/tox.ini b/tox.ini index e3e88f6ab7..d683137857 100644 --- a/tox.ini +++ b/tox.ini @@ -52,6 +52,12 @@ basepython = python3.6 commands = {[testenv:py35]commands} +[testenv:py37] +# TODO(efried): Remove this once https://github.com/tox-dev/tox/issues/425 is fixed. +basepython = python3.7 +commands = + {[testenv:py35]commands} + [testenv:pep8] description = Run style checks. @@ -105,6 +111,13 @@ setenv = {[testenv]setenv} commands = {[testenv:functional]commands} +[testenv:functional-py37] +basepython = python3.7 +envdir = {toxworkdir}/py37 +setenv = {[testenv]setenv} +commands = + {[testenv:functional]commands} + [testenv:api-samples] envdir = {toxworkdir}/shared setenv = -- cgit v1.2.1