From f15609f3f7a6b13a2c39465b0f1260942b6fd26a Mon Sep 17 00:00:00 2001 From: Victor Seva Date: Sat, 7 Mar 2015 13:21:26 +0100 Subject: [PATCH] MT#11921 run_test: select by FORMAT envVar - FORMAT can be JUNIT, TAP or TEXT Change-Id: I294a22c2ca9d2283c4f2eb37d5fb5825da4aff98 (cherry picked from commit 9870438d302393370275719e4e3f9c7f050edd76) --- run_tests.sh | 53 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 40 insertions(+), 13 deletions(-) diff --git a/run_tests.sh b/run_tests.sh index 3961b56..aba9218 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -1,27 +1,54 @@ #!/bin/bash +if [ -z "${FORMAT}" ] ; then + FORMAT=TAP +fi + +case ${FORMAT} in + "TAP") EXT=tap; OUT_FORCE=true ;; + "JUNIT") EXT=xml; OUT_FORCE=false ;; + "TEXT") EXT=txt; OUT_FORCE=true ;; + *) echo "ERROR: Unknown format ${FORMAT}"; exit 1 ;; +esac + mkdir -p reports rm -rf reports/* -if [[ ! -z "$@" ]]; then - for i in $@; do - f="tests/$i.lua" - if [ ! -f $f ]; then - echo "No $f found" - else - echo "testing $f -> reports/${i}.tap" - cat< reports/${i}.tap -require "tests/$i" +function do_test() { + echo "testing $1 -> reports/${1}.${EXT}" + if ${OUT_FORCE} ; then + cat< reports/${1}.${EXT} +require "tests/${1}" +---- Control test output: +local lu = LuaUnit +lu:setOutputType('${FORMAT}') +lu:setVerbosity(1) +lu:run() +EOF + else + cat< reports/test_all.tap -#EOF \ No newline at end of file +for i in $(find tests -name '*.lua' ! -name test_\*) ; do + do_test "$(basename "$i" .lua)" +done