From 9f20ea13826234ac2c508ea1d50a0822b68d42dc Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Mon, 17 Nov 2014 15:14:49 -0500 Subject: [PATCH] make run_tests.sh run devstack unit tests run_tests.sh was created as an entry point for bashate. We stopped using it now that we know how to run bashate directly in the gate. We lost running an unrelated bashate test when that happened. Devstack does have unit tests. We don't run them. We should. Especially when working on things like the LIBS_FROM_GIT which is sufficiently tricky that we really need to add unit tests to ensure that we don't break it. Change-Id: Ife067855569e2eae4c085471d326e8086de37332 --- run_tests.sh | 47 +++++++++------------------------------------- tests/test_refs.sh | 24 +++++++++++++++++++++++ 2 files changed, 33 insertions(+), 38 deletions(-) create mode 100755 tests/test_refs.sh diff --git a/run_tests.sh b/run_tests.sh index bf90332698..3ba7e1023d 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -18,47 +18,18 @@ 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 - LIBS=`find lib -type f | grep -v \.md` - SCRIPTS=`find . -type f -name \*\.sh` - EXTRA="functions functions-common stackrc openrc exerciserc eucarc" - FILES="$SCRIPTS $LIBS $EXTRA" -fi - -echo "Running bash8..." - -tox -ebashate -pass_fail $? 0 bash8 - - # Test that no one is trying to land crazy refs as branches -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 +for testfile in tests/test_*.sh; do + $testfile + if [[ $? -eq 0 ]]; then + PASSES="$PASSES $testfile" + else + FAILURES="$FAILURES $testfile" + fi +done +# Summary display now that all is said and done echo "=====================================================================" for script in $PASSES; do echo PASS $script diff --git a/tests/test_refs.sh b/tests/test_refs.sh new file mode 100755 index 0000000000..bccca5dff7 --- /dev/null +++ b/tests/test_refs.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + + +echo "Ensuring we don't have crazy refs" + +REFS=`grep BRANCH stackrc | grep -v -- '-master'` +rc=$? +if [[ $rc -eq 0 ]]; then + echo "Branch defaults must be master. Found:" + echo $REFS + exit 1 +fi