Test suite/platformtest.sh: Detect when tests have been skipped

Detect if some tests have been skipped, for example when telnet(1) or expect(1)
is missing: ./contrib/platformtest.sh will echo a warning message now.
This commit is contained in:
Alexander Barton 2014-06-04 12:15:23 +02:00
parent ec2bf5c5a2
commit 3de972e0bd
3 changed files with 17 additions and 6 deletions

View File

@ -27,6 +27,7 @@ COMMENT=
R_CONFIGURE=
R_MAKE=
R_CHECK=
R_CHECK_Y="?"
R_RUN=
SRC_D=`dirname "$0"`
@ -101,6 +102,8 @@ if [ -r "$SRC_D/configure" ]; then
if [ $? -eq 0 ]; then
R_CHECK=1
R_RUN=$R_CHECK
[ -r ./src/testsuite/tests-skipped.lst ] \
&& R_CHECK_Y="y" || R_CHECK_Y="Y"
else
./src/ngircd/ngircd --help 2>/dev/null \
| grep "^ngIRCd" >/dev/null
@ -180,7 +183,7 @@ fi
[ -n "$R_CONFIGURE" ] && C="Y" || C="N"
[ -n "$R_MAKE" ] && M="Y" || M="N"
[ -n "$R_CHECK" ] && T="Y" || T="N"
[ -n "$R_CHECK" ] && T="$R_CHECK_Y" || T="N"
[ -n "$R_RUN" ] && R="Y" || R="N"
[ -n "$COMMENT" ] && COMMENT=" $COMMENT"
@ -194,11 +197,15 @@ echo "Platform Compiler ngIRCd Date Tester C M
echo "--------------------------- ------------ ---------- -------- -------- - - - - -"
type printf >/dev/null 2>&1
if [ $? -eq 0 ]; then
printf "%-27s %-12s %-10s %s %-8s %s %s %s %s%s" \
printf "%-27s %-12s %-10s %s %-8s %s %s %s %s%s\n" \
"$PLATFORM" "$COMPILER" "$VERSION" "$DATE" "$USER" \
"$C" "$M" "$T" "$R" "$COMMENT"
else
echo "$PLATFORM $COMPILER $VERSION $DATE $USER" \
"$C" "$M" "$T" "$R" "$COMMENT"
fi
echo; echo
echo
if [ "$R_CHECK_Y" = "y" ]; then
echo "$NAME: Warning: Some tests have been skipped!"
echo
fi

View File

@ -1,6 +1,6 @@
#
# ngIRCd -- The Next Generation IRC Daemon
# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors
# Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors
#
# 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
@ -27,7 +27,7 @@ EXTRA_DIST = \
all:
clean-local:
rm -rf logs tests *-test ngircd-test*.log procs.tmp \
rm -rf logs tests *-test ngircd-test*.log procs.tmp tests-skipped.lst \
T-ngircd1 ngircd-test1.motd T-ngircd2 ngircd-test2.motd
maintainer-clean-local:
@ -39,6 +39,7 @@ ngircd-TEST-Binary:
cp ../ngircd/ngircd T-ngircd1
cp ../ngircd/ngircd T-ngircd2
[ -f getpid.sh ] || ln -s $(srcdir)/getpid.sh .
rm -f tests-skipped.lst
connect-test: tests.sh
rm -f connect-test

View File

@ -1,7 +1,7 @@
#!/bin/sh
#
# ngIRCd Test Suite
# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors.
# Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors.
#
# 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
@ -18,6 +18,7 @@ test=`echo ${name} | cut -d '.' -f 1`
[ -d logs ] || mkdir logs
if [ ! -r "$test" ]; then
echo "$test: test not found" >>tests-skipped.lst
echo "${name}: test \"$test\" not found!"; exit 77
exit 1
fi
@ -27,10 +28,12 @@ fi
type expect > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "$test: \"expect\" not found" >>tests-skipped.lst
echo "${name}: \"expect\" not found."; exit 77
fi
type telnet > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "$test: \"telnet\" not found" >>tests-skipped.lst
echo "${name}: \"telnet\" not found."; exit 77
fi