#! /bin/sh
# $OpenLDAP: pkg/ldap/tests/scripts/all,v 1.26.2.9 2010/04/13 20:23:59 kurt Exp $
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
## Copyright 1998-2010 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
## modification, are permitted only as authorized by the OpenLDAP
## Public License.
##
## A copy of this license is available in the file LICENSE in the
## top-level directory of the distribution or, alternatively, at
## <http://www.OpenLDAP.org/license.html>.

. $SRCDIR/scripts/defines.sh

TB="" TN=""
if test -t 1 ; then
	TB=`$SHTOOL echo -e "%B" 2>/dev/null`
	TN=`$SHTOOL echo -e "%b" 2>/dev/null`
fi

SLEEPTIME=10

echo ">>>>> Executing all LDAP tests for $BACKEND"

for CMD in $SRCDIR/scripts/test*; do
	case "$CMD" in
		*~)		continue;;
		*.bak)	continue;;
		*.orig)	continue;;
		*.sav)	continue;;
		*)		test -f "$CMD" || continue;;
	esac

	# remove cruft from prior test
	if test $PRESERVE = yes ; then
		/bin/rm -rf $TESTDIR/db.*
	else
		/bin/rm -rf $TESTDIR
	fi
	if test $BACKEND = ndb ; then
		mysql --user root <<EOF
		drop database if exists db_1;
		drop database if exists db_2;
		drop database if exists db_3;
		drop database if exists db_4;
		drop database if exists db_5;
		drop database if exists db_6;
EOF
	fi

	echo ">>>>> Starting ${TB}`basename $CMD`${TN} for $BACKEND..."
	$CMD
	RC=$?
	if test $RC -eq 0 ; then
		echo ">>>>> $CMD completed ${TB}OK${TN} for $BACKEND."
	else
		echo ">>>>> $CMD ${TB}failed${TN} for $BACKEND (exit $RC)"
		exit $RC
	fi

#	echo ">>>>> waiting $SLEEPTIME seconds for things to exit"
#	sleep $SLEEPTIME
	echo ""
done
