From d401c84a77cb1ea0e565f3429e0b94bb3ff16bb5 Mon Sep 17 00:00:00 2001 From: Dean Troyer Date: Fri, 21 Mar 2014 11:48:01 -0500 Subject: [PATCH] Fix run_tests to not mask bash8 errors The addition of the crazy-refs check masked the bash8 exit code. So add the same pass/fail handling from exercise.sh to provide a neat summary at the end of the run. Change-Id: I169eb90c619a114cf8584bee70b7dcda67769dc5 --- run_tests.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/run_tests.sh b/run_tests.sh index 685b2037f0..b1aef4f81f 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -15,6 +15,23 @@ # # this runs a series of unit tests for devstack to ensure it's functioning +PASSES="" +FAILURES="" + +# Check the return code and add the test to PASSES or FAILURES as appropriate +# pass_fail +function pass_fail { + local result=$1 + local expected=$2 + local test_name=$3 + + if [[ $result -ne $expected ]]; then + FAILURES="$FAILURES $test_name" + else + PASSES="$PASSES $test_name" + fi +} + if [[ -n $@ ]]; then FILES=$@ else @@ -27,6 +44,7 @@ fi echo "Running bash8..." ./tools/bash8.py -v $FILES +pass_fail $? 0 bash8 # Test that no one is trying to land crazy refs as branches @@ -35,8 +53,21 @@ echo "Ensuring we don't have crazy refs" REFS=`grep BRANCH stackrc | grep -v -- '-master'` rc=$? +pass_fail $rc 1 crazy-refs if [[ $rc -eq 0 ]]; then echo "Branch defaults must be master. Found:" echo $REFS +fi + +echo "=====================================================================" +for script in $PASSES; do + echo PASS $script +done +for script in $FAILURES; do + echo FAILED $script +done +echo "=====================================================================" + +if [[ -n "$FAILURES" ]]; then exit 1 fi