X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Ftest-framework.sh;h=e41073b6394179da8b93c8b54058afb076552f2d;hb=92e847fd1412448f58c5bc31295559e3266f82e2;hp=3096dc28c0c96933e7cf16c86817e2e6b5f9e559;hpb=a6940e04863dab1eeefc5280b41552e492455145;p=fs%2Flustre-release.git diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh index 3096dc2..e41073b 100644 --- a/lustre/tests/test-framework.sh +++ b/lustre/tests/test-framework.sh @@ -3058,13 +3058,19 @@ skip_env () { $FAIL_ON_SKIP_ENV && error false $@ || skip $@ } -skip () { +skip() { echo - log " SKIP: ${TESTSUITE} ${TESTNAME} $@" - [ "$ALWAYS_SKIPPED" ] && \ - skip_logged ${TESTNAME} "$@" || true - [ "$TESTSUITELOG" ] && \ - echo "${TESTSUITE}: SKIP: $TESTNAME $@" >> $TESTSUITELOG || true + log " SKIP: $TESTSUITE $TESTNAME $@" + + if [[ -n "$ALWAYS_SKIPPED" ]]; then + skip_logged $TESTNAME "$@" + else + mkdir -p $LOGDIR + echo "$@" > $LOGDIR/skip + fi + + [[ -n "$TESTSUITELOG" ]] && + echo "$TESTSUITE: SKIP: $TESTNAME $@" >> $TESTSUITELOG || true } build_test_filter() { @@ -3132,41 +3138,36 @@ run_test() { echo -n "." return 0 fi + + LAST_SKIPPED="y" + ALWAYS_SKIPPED="y" testname=EXCEPT_$1 if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" TESTNAME=test_$1 skip "skipping excluded test $1" return 0 fi testname=EXCEPT_$base if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" TESTNAME=test_$1 skip "skipping excluded test $1 (base $base)" return 0 fi testname=EXCEPT_ALWAYS_$1 if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" - ALWAYS_SKIPPED="y" TESTNAME=test_$1 skip "skipping ALWAYS excluded test $1" return 0 fi testname=EXCEPT_ALWAYS_$base if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" - ALWAYS_SKIPPED="y" TESTNAME=test_$1 skip "skipping ALWAYS excluded test $1 (base $base)" return 0 fi testname=EXCEPT_SLOW_$1 if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" TESTNAME=test_$1 skip "skipping SLOW test $1" return 0 fi testname=EXCEPT_SLOW_$base if [ ${!testname}x != x ]; then - LAST_SKIPPED="y" TESTNAME=test_$1 skip "skipping SLOW test $1 (base $base)" return 0 fi @@ -3214,11 +3215,13 @@ complete () { } pass() { - # Set TEST_STATUS here; will be used for logging the result - if [ -f $LOGDIR/err ]; then + # Set TEST_STATUS here. It will be used for logging the result. + TEST_STATUS="PASS" + + if [[ -f $LOGDIR/err ]]; then TEST_STATUS="FAIL" - else - TEST_STATUS="PASS" + elif [[ -f $LOGDIR/skip ]]; then + TEST_STATUS="SKIP" fi echo "$TEST_STATUS $@" 2>&1 | tee -a $TESTSUITELOG } @@ -3294,6 +3297,7 @@ run_one_logged() { local name=${TESTSUITE}.test_${1}.test_log.$(hostname -s).log local test_log=$LOGDIR/$name rm -rf $LOGDIR/err + rm -rf $LOGDIR/skip local SAVE_UMASK=`umask` umask 0022 @@ -3307,7 +3311,12 @@ run_one_logged() { duration=$((`date +%s` - $BEFORE)) pass "$1" "(${duration}s)" - [ -f $LOGDIR/err ] && TEST_ERROR=$(cat $LOGDIR/err) + + if [[ -f $LOGDIR/err ]]; then + TEST_ERROR=$(cat $LOGDIR/err) + elif [[ -f $LOGDIR/skip ]]; then + TEST_ERROR=$(cat $LOGDIR/skip) + fi log_sub_test_end $TEST_STATUS $duration "$RC" "$TEST_ERROR" if [ -f $LOGDIR/err ]; then @@ -3324,7 +3333,8 @@ run_one_logged() { # skip_logged(){ log_sub_test_begin $1 - log_sub_test_end "SKIP" "0" "0" "\"$2\"" + shift + log_sub_test_end "SKIP" "0" "0" "$@" } canonical_path() {