diff --git a/misc/make-deps.sh b/misc/make-deps.sh index 8d2e1262..f1431a84 100755 --- a/misc/make-deps.sh +++ b/misc/make-deps.sh @@ -114,6 +114,7 @@ if ! in_env; then fi if in_env; then + fold_start "Build ragel" # TODO: consider bumping to new package manager version RAGEL_VERSION='6.10' # current stable version RAGEL_TMP='/tmp/ragel/' @@ -129,6 +130,7 @@ if in_env; then make sudo make install cd - + fold_end "Build ragel" fi # attempt to workaround old ubuntu diff --git a/test.sh b/test.sh index 0c0ac740..cd3754a8 100755 --- a/test.sh +++ b/test.sh @@ -31,7 +31,8 @@ function run-testsuite() { # if not running all tests or if this test is not explicitly selected, skip it if test -z "$testsuite" || test "test-$testsuite" = "$testname"; then fold_start "$testname" - "$@" || failures=$([ -n "$failures" ] && echo "$failures\\n$@" || echo "$@") + description="$testname ($@)" + "$@" || failures=$([ -n "$failures" ] && echo "$failures\\n$description" || echo "$description") fold_end "$testname" fi } diff --git a/test/test-commit-message.sh b/test/test-commit-message.sh index cdb4bc8f..f194b454 100755 --- a/test/test-commit-message.sh +++ b/test/test-commit-message.sh @@ -10,11 +10,12 @@ echo running "$0" ROOT=$(dirname "${BASH_SOURCE}")/.. cd "${ROOT}" || exit 1 -commit_title_regex='^\([a-z0-9]\(\(, \)\|[a-z0-9]\)\+[a-z0-9]: \)\+[A-Z0-9][^:]\+[^:.]$' +commit_title_regex='^\([a-z0-9]\(\(, \)\|[a-z0-9]\)*[a-z0-9]: \)\+[A-Z0-9][^:]\+[^:.]$' # Testing the regex itself. # Correct patterns. +[[ $(echo "ci: Bar" | grep -c "$commit_title_regex") -eq 1 ]] [[ $(echo "foo, bar: Bar" | grep -c "$commit_title_regex") -eq 1 ]] [[ $(echo "foo: Bar" | grep -c "$commit_title_regex") -eq 1 ]] [[ $(echo "f1oo, b2ar: Bar" | grep -c "$commit_title_regex") -eq 1 ]] @@ -183,5 +184,13 @@ then test_commit_message_common_bugs $commit done fi +else # assume local branch + commits=$(git log --no-merges --format=%H origin/master..HEAD) + for commit in $commits + do + test_commit_message $commit + test_commit_message_body $commit + test_commit_message_common_bugs $commit + done fi echo 'PASS' diff --git a/test/test-shell.sh b/test/test-shell.sh index 5155c2dc..acc071b7 100755 --- a/test/test-shell.sh +++ b/test/test-shell.sh @@ -26,20 +26,20 @@ failures="" count=0 # loop through tests -for i in $DIR/test/shell/*.sh; do - [ -x "$i" ] || continue # file must be executable - ii=`basename "$i"` # short name +for test_script in $DIR/test/shell/*.sh; do + [ -x "$test_script" ] || continue # file must be executable + test_name=`basename "$test_script"` # short name # if ARGV has test names, only execute those! if [ "$1" != '' ]; then - [ "$ii" != "$1" ] && continue + [ "$test_name" != "$1" ] && continue fi cd $DIR/test/shell/ >/dev/null # shush the cd operation mkdir -p '/tmp/mgmt/' # directory for mgmt to put files in - #echo "Running: $ii" + #echo "Running: $test_name" export MGMT_TMPDIR='/tmp/mgmt/' # we can add to env like this count=`expr $count + 1` set +o errexit # don't kill script on test failure - out=$($i 2>&1) # run and capture stdout & stderr + out=$($test_script 2>&1) # run and capture stdout & stderr e=$? # save exit code set -o errexit # re-enable killing on script failure cd - >/dev/null @@ -48,12 +48,12 @@ for i in $DIR/test/shell/*.sh; do fi rm -rf '/tmp/mgmt/' # clean up after test if [ $e -ne 0 ]; then - echo -e "FAIL\t$ii" # fail + echo -e "FAIL\t$test_name" # fail # store failures... failures=$( # prepend previous failures if any [ -n "${failures}" ] && echo "$failures" && echo "$LINE" - echo "Script: $ii" + echo "Script: $test_name" # if we see 124, it might be the exit value of timeout! [ $e -eq 124 ] && echo "Exited: $e (timeout?)" || echo "Exited: $e" if [ "$out" = "" ]; then @@ -64,7 +64,7 @@ for i in $DIR/test/shell/*.sh; do fi ) else - echo -e "ok\t$ii" # pass + echo -e "ok\t$test_name" # pass fi done