Tagging module iproute2 - iproute2-2.6.16-2
[iproute2.git] / testsuite / lib / generic.sh
1
2 export DEST="127.0.0.1"
3
4 ts_log()
5 {
6         echo "$@"
7 }
8
9 ts_err()
10 {
11         ts_log "$@" | tee >> $ERRF
12 }
13
14 ts_cat()
15 {
16         cat "$@"
17 }
18
19 ts_err_cat()
20 {
21         ts_cat "$@" | tee >> $ERRF
22 }
23
24 ts_tc()
25 {
26         SCRIPT=$1; shift
27         DESC=$1; shift
28         TMP_ERR=`mktemp /tmp/tc_testsuite.XXXXXX` || exit
29         TMP_OUT=`mktemp /tmp/tc_testsuite.XXXXXX` || exit
30
31         $TC $@ 2> $TMP_ERR > $TMP_OUT
32
33         if [ -s $TMP_ERR ]; then
34                 ts_err "${SCRIPT}: ${DESC} failed:"
35                 ts_err "command: $TC $@"
36                 ts_err "stderr output:"
37                 ts_err_cat $TMP_ERR
38                 if [ -s $TMP_OUT ]; then
39                         ts_err "stdout output:"
40                         ts_err_cat $TMP_OUT
41                 fi
42         elif [ -s $TMP_OUT ]; then
43                 echo "${SCRIPT}: ${DESC} succeeded with output:"
44                 cat $TMP_OUT
45         else
46                 echo "${SCRIPT}: ${DESC} succeeded"
47         fi
48
49         rm $TMP_ERR $TMP_OUT
50 }
51
52 ts_ip()
53 {
54         SCRIPT=$1; shift
55         DESC=$1; shift
56         TMP_ERR=`mktemp /tmp/tc_testsuite.XXXXXX` || exit
57         TMP_OUT=`mktemp /tmp/tc_testsuite.XXXXXX` || exit
58
59         $IP $@ 2> $TMP_ERR > $TMP_OUT
60
61         if [ -s $TMP_ERR ]; then
62                 ts_err "${SCRIPT}: ${DESC} failed:"
63                 ts_err "command: $IP $@"
64                 ts_err "stderr output:"
65                 ts_err_cat $TMP_ERR
66                 if [ -s $TMP_OUT ]; then
67                         ts_err "stdout output:"
68                         ts_err_cat $TMP_OUT
69                 fi
70         elif [ -s $TMP_OUT ]; then
71                 echo "${SCRIPT}: ${DESC} succeeded with output:"
72                 cat $TMP_OUT
73         else
74                 echo "${SCRIPT}: ${DESC} succeeded"
75         fi
76
77         rm $TMP_ERR $TMP_OUT
78 }
79
80 ts_qdisc_available()
81 {
82         HELPOUT=`$TC qdisc add $1 help 2>&1`
83         if [ "`echo $HELPOUT | grep \"^Unknown qdisc\"`" ]; then
84                 return 0;
85         else
86                 return 1;
87         fi
88 }