X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=tests%2Frunall.sh;h=5e1c0f537a8113a337237513e3977710b7a66760;hb=bf74a86dd175816a617f2bb3c32214b5a01c4424;hp=866f45adf057a3f91144657be0ee3a0336aad448;hpb=0b8091d3f931437d2035cfa70549c5aa15b41aac;p=lttng-tools.git diff --git a/tests/runall.sh b/tests/runall.sh index 866f45adf..5e1c0f537 100755 --- a/tests/runall.sh +++ b/tests/runall.sh @@ -4,8 +4,8 @@ # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. +# as published by the Free Software Foundation; only version 2 +# of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -17,37 +17,65 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # -TEST_DIR=$(dirname $0) +#### ADD TESTS HERE #### -failed=0 -num_test=1 +# A spawned session daemon is needed for those tests +test_with_sessiond=( lttng/runall.sh ust-nevents/run ust-nprocesses/run ) -function run() { - printf "%d) Running test $@\n" $num_test - echo "==================================" +# No session daemon needed +test_no_sessiond=( test_sessions test_kernel_data_trace test_ust_data_trace ) - # Running test - ./$@ - if [ $? -ne 0 ]; then - let failed=$failed+1 - printf "\nTest $@ FAILED\n\n" - else - printf "\nTest $@ PASSED\n\n" - fi +#### END TESTS HERE #### - let num_test=$num_test+1 -} +TESTDIR=$(dirname $0) -#### ADD TESTS HERE #### +source $TESTDIR/utils.sh -#### END TESTS HERE #### +## NO Session daemon ## +for bin in ${test_no_sessiond[@]}; +do + if [ ! -e $bin ]; then + echo -e "$bin not found, passing" + continue + fi -echo "--------------------------" -if [ $failed -eq 0 ]; then - echo "All passed!" -else - echo "$failed tests failed" + ./$bin + # Test must return 0 to pass. + if [ $? -ne 0 ]; then + echo -e '\e[1;31mFAIL\e[0m' + echo "" + exit 1 + fi +done + +# With session daemon +start_sessiond +out=$? +if [ $out -eq 2 ]; then + # Kernel version is not compatible. + exit 0 +elif [ $out -ne 0 ]; then + echo "NOT bad $?" + exit 1 fi -echo "--------------------------" +for bin in ${test_with_sessiond[@]}; +do + if [ ! -e $bin ]; then + echo -e "$bin not found, passing" + continue + fi + + ./$bin + # Test must return 0 to pass. + if [ $? -ne 0 ]; then + echo -e '\e[1;31mFAIL\e[0m' + echo "" + stop_sessiond + exit 1 + fi +done + +echo "" +stop_sessiond exit 0