add pretty_tox to nova functional tests

debugging tests is a lot easier when you can actually inject stderr
directly through even on successes. Add the pretty tox facility from
nova / tempest-lib into python-nova client as well for functional
tests.

Change-Id: I5c1f8244a5c743b590b74a8eb3eaf4a699555644
This commit is contained in:
Sean Dague 2015-02-23 08:20:44 -05:00
parent be41ae238d
commit 9a06348f47
2 changed files with 20 additions and 1 deletions

16
tools/pretty_tox.sh Executable file
View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
set -o pipefail
TESTRARGS=$1
# --until-failure is not compatible with --subunit see:
#
# https://bugs.launchpad.net/testrepository/+bug/1411804
#
# this work around exists until that is addressed
if [[ "$TESTARGS" =~ "until-failure" ]]; then
python setup.py testr --slowest --testr-args="$TESTRARGS"
else
python setup.py testr --slowest --testr-args="--subunit $TESTRARGS" | subunit-trace -f
fi

View File

@ -8,6 +8,7 @@ skipsdist = True
usedevelop = True
# tox is silly... these need to be separated by a newline....
whitelist_externals = find
bash
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
@ -15,7 +16,9 @@ deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
find . -type f -name "*.pyc" -delete
python setup.py testr --testr-args='{posargs}'
bash tools/pretty_tox.sh '{posargs}'
# there is also secret magic in pretty_tox.sh which lets you run in a fail only
# mode. To do this define the TRACE_FAILONLY environmental variable.
[testenv:pep8]
commands = flake8 {posargs}