File: runtests

package info (click to toggle)
lcov 2.4-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,464 kB
  • sloc: perl: 27,911; sh: 7,320; xml: 6,982; python: 1,152; makefile: 597; cpp: 520; ansic: 176
file content (66 lines) | stat: -rwxr-xr-x 1,380 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/usr/bin/env bash
#
# Copyright IBM Corp. 2020
#
# Usage: runtests <make> <tests>
#

MAKE="$1"
shift
TESTS=""
OPTS=''
MAKE_OPTS=''
while [ $# -gt 0 ] ; do

    OPT=$1
    shift
    case $OPT in

        --script-args )
            OPTS="$OPTS $1"
            MAKE_OPTS="$MAKE_OPTS TESTCASE_ARGS=$1"
            shift
            ;;

        --coverage )
            COVER_DB=$1
            shift

            OPTS="$OPTS $OPT $COVER_DB"
            MAKE_OPTS="$MAKE_OPTS COVER_DB=../$COVER_DB"
            ;;

        * )
            TESTS="$TESTS $OPT"
            ;;
    esac
done

if [[ "${V:-0}" -lt 1 ]] ; then
        MAKE_OPTS="$MAKE_OPTS -s"
fi

if [[ -z "${_TESTS_RUNNING}" ]] ; then
        # Do this only once at start of test run
        export _TESTS_RUNNING=1

        testsuite_init
        trap testsuite_exit exit
        # Suppress test results on keyboard interrupt
        trap "trap exit ; exit 1" SIGINT
fi

for TEST in ${TESTS} ; do
        if [[ -d "${TEST}" ]] ; then
                # Enter sub-directory
                #echo enter test directory ${TEST}
                ${MAKE} -C "${TEST}" $MAKE_OPTS check || exit 1
        else
                # Enter test
                ABS_TEST="$PWD/$TEST"
                REL_TEST="${ABS_TEST##$TOPDIR}"
                test_run "${REL_TEST}" "${ABS_TEST} $OPTS" </dev/null || exit 1
        fi
done

exit 0