1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00

r7463: - move some more stuff into functions

- try to kill all jobs return by jobs -p

metze
(This used to be commit e4f5e52a84)
This commit is contained in:
Stefan Metzmacher 2005-06-10 15:32:16 +00:00 committed by Gerald (Jerry) Carter
parent 46b829513a
commit 67c606b863
3 changed files with 118 additions and 28 deletions

View File

@ -148,7 +148,7 @@ basics: idl proto_exists
test: @DEFAULT_TEST_TARGET@
test-swrap: all
SOCKET_WRAPPER_DIR=`pwd`/prefix-test ./script/tests/selftest.sh `pwd`/prefix-test
./script/tests/selftest.sh `pwd`/prefix-test SOCKET_WRAPPER
test-noswrap: all
./script/tests/selftest.sh `pwd`/prefix-test

View File

@ -12,6 +12,7 @@ then
fi
PREFIX=$1
export PREFIX
TMPDIR=$PREFIX/tmp
LIBDIR=$PREFIX/lib
PIDDIR=$PREFIX/pid
@ -20,6 +21,18 @@ PRIVATEDIR=$PREFIX/private
NCALRPCDIR=$PREFIX/ncalrpc
LOCKDIR=$PREFIX/lockdir
SMBD_TEST_FIFO="$PREFIX/smbd_test.fifo"
export SMBD_TEST_FIFO
SMBD_TEST_LOG="$PREFIX/smbd_test.log"
export SMBD_TEST_LOG
DO_SOCKET_WRAPPER=$2
if [ x"$DO_SOCKET_WRAPPER" = x"SOCKET_WRAPPER" ];then
SOCKET_WRAPPER_DIR="$PREFIX/socket_wrapper_dir"
export SOCKET_WRAPPER_DIR
echo "SOCKET_WRAPPER_DIR=$SOCKET_WRAPPER_DIR"
fi
incdir=`dirname $0`
. $incdir/test_functions.sh
@ -41,7 +54,7 @@ cat >$CONFFILE<<EOF
path = $TMPDIR
read only = no
ntvfs handler = posix
posix:sharedelay = 5000
posix:sharedelay = 100000
EOF
ADDARG="-s $CONFFILE"
@ -49,20 +62,8 @@ if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
ADDARG="$ADDARG --option=\"torture:progress=no\""
fi
SMBD_TEST_FIFO="$PREFIX/smbd_test.fifo"
export SMBD_TEST_FIFO
smbd_check_or_start
rm -f $SMBD_TEST_FIFO
mkfifo $SMBD_TEST_FIFO
($SRCDIR/bin/smbd -d1 -s $CONFFILE -M single -i < $SMBD_TEST_FIFO;
ret=$?;
rm -f $SMBD_TEST_FIFO;
echo "smbd exists with status $ret";
exit $ret;
)||exit $? &
sleep 2
START=`date`
(
failed=0

View File

@ -1,15 +1,66 @@
testit() {
name=$1
shift 1
trap "rm -f test.$$" EXIT
cmdline="$*"
smbd_check_or_start() {
if [ -n "$SMBD_TEST_FIFO" ];then
if [ ! -p "$SMBD_TEST_FIFO" ];then
echo "TEST SKIPPED: $name (reason: smbd is down)";
if [ -p "$SMBD_TEST_FIFO" ];then
return 0;
fi
if [ -n "$SOCKET_WRAPPER_DIR" ];then
if [ -d "$SOCKET_WRAPPER_DIR" ]; then
rm -f $SOCKET_WRAPPER_DIR/*
else
mkdir -p $SOCKET_WRAPPER_DIR
fi
fi
rm -f $SMBD_TEST_FIFO
mkfifo $SMBD_TEST_FIFO
rm -f $SMBD_TEST_LOG
echo -n "STARTING SMBD..."
((
$SRCDIR/bin/smbd -d1 -s $CONFFILE -M single -i < $SMBD_TEST_FIFO > $SMBD_TEST_LOG 2>&1;
ret=$?;
rm -f $SMBD_TEST_FIFO;
if [ -n "$SOCKET_WRAPPER_DIR" -a -d "$SOCKET_WRAPPER_DIR" ]; then
rm -f $SOCKET_WRAPPER_DIR/*
fi
echo "smbd exists with status $ret";
echo "smbd exists with status $ret" >>$SMBD_TEST_LOG;
exit $ret;
) || exit $? &) 2>/dev/null || exit $?
sleep 2
echo "DONE"
fi
return 0;
}
smbd_check_only() {
if [ -n "$SMBD_TEST_FIFO" ];then
if [ -p "$SMBD_TEST_FIFO" ];then
return 0;
fi
return 1;
fi
return 0;
}
smbd_have_test_log() {
if [ -n "$SMBD_TEST_LOG" ];then
if [ -r "$SMBD_TEST_LOG" ];then
return 0;
fi
fi
return 1;
}
testit() {
name=$1
shift 1
SMBD_IS_UP="no"
TEST_LOG="$PREFIX/test_log.$$"
trap "rm -f $TEST_LOG" EXIT
cmdline="$*"
if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
echo "--==--==--==--==--==--==--==--==--==--==--"
@ -20,11 +71,29 @@ testit() {
else
echo "Testing $name"
fi
( $cmdline > test.$$ 2>&1 )
smbd_check_only && SMBD_IS_UP="yes"
if [ x"$SMBD_IS_UP" = x"no" ];then
if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
echo "=========================================="
echo "TEST SKIPPED: $name (reason SMBD is down)"
echo "=========================================="
else
echo "TEST SKIPPED: $name (reason SMBD is down)"
fi
return 1
fi
smbd_have_test_log && echo "" >$SMBD_TEST_LOG
( $cmdline > $TEST_LOG 2>&1 )
status=$?
if [ x"$status" != x"0" ]; then
cat test.$$;
rm -f test.$$;
echo "TEST OUTPUT:"
cat $TEST_LOG;
smbd_have_test_log && echo "SMBD OUTPUT:";
smbd_have_test_log && cat $SMBD_TEST_LOG;
rm -f $TEST_LOG;
if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
echo "=========================================="
echo "TEST FAILED: $name (status $status)"
@ -34,7 +103,7 @@ testit() {
fi
return 1;
fi
rm -f test.$$;
rm -f $TEST_LOG;
if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
echo "ALL OK: $cmdline"
echo "=========================================="
@ -47,10 +116,20 @@ testit() {
testok() {
name=`basename $1`
failed=$2
JOBS=`jobs -p`
for J in $JOBS;do
kill $J >/dev/null 2>&1;
done
JOBS=`jobs -p`
for J in $JOBS;do
kill -s 9 $J >/dev/null 2>&1;
done
if [ x"$failed" = x"0" ];then
:
else
echo "$failed TESTS FAILED ($name)";
echo "$failed TESTS FAILED or SKIPPED ($name)";
fi
exit $failed
}
@ -58,6 +137,16 @@ testok() {
teststatus() {
name=`basename $1`
failed=$2
JOBS=`jobs -p`
for J in $JOBS;do
kill $J >/dev/null 2>&1;
done
JOBS=`jobs -p`
for J in $JOBS;do
kill -s 9 $J >/dev/null 2>&1;
done
if [ x"$failed" = x"0" ];then
echo "TEST STATUS: $failed";
else