do not output color in the testcases if stdout/stderr are not a /dev/pts
[ntk/apt.git] / test / integration / run-tests
CommitLineData
8d876415
DK
1#!/bin/sh
2set -e
3
adee3bae 4FAIL=0
9962ae93 5DIR=$(readlink -f $(dirname $0))
39cc8228
DK
6if [ "$1" = "-q" ]; then
7 export MSGLEVEL=2
8elif [ "$1" = "-v" ]; then
18331adf 9 export MSGLEVEL=4
39cc8228 10fi
682a3bf7
DK
11
12if expr match "$(readlink -f /proc/$$/fd/1)" '/dev/pts/[0-9]\+' > /dev/null; then
13 CTEST='\033[1;32m'
14 CHIGH='\033[1;35m'
15 CRESET='\033[0m'
16elif [ -z "${MSGLEVEL}" ]; then
17 export MSGLEVEL=2
18fi
19
8d876415 20for testcase in $(run-parts --list $DIR | grep '/test-'); do
682a3bf7
DK
21 if [ "$MSGLEVEL" -le 2 ]; then
22 echo -n "${CTEST}Testcase ${CHIGH}$(basename ${testcase})${CRESET}: "
39cc8228 23 else
682a3bf7 24 echo "${CTEST}Run Testcase ${CHIGH}$(basename ${testcase})${CRESET}"
39cc8228 25 fi
adee3bae
MV
26 if ! ${testcase}; then
27 FAIL=$((FAIL+1))
28 echo "$(basename $testcase) ... FAIL"
29 fi
682a3bf7 30 if [ "$MSGLEVEL" -le 2 ]; then
39cc8228
DK
31 echo
32 fi
8d876415 33done
adee3bae
MV
34
35echo "failures: $FAIL"
36exit $FAIL