# $OpenLDAP$
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
-## Copyright 1998-2005 The OpenLDAP Foundation.
+## Copyright 1998-2006 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
exit 0
fi
-# to be removed some time...
-if test "x$TEST_META" = "xno" ; then
- echo "### disabled by \"TEST_META=no\"; unset TEST_META to re-enable"
- echo ""
- exit 0
-else
- echo "### this test is experimental; in case of problems,"
- echo "### set \"TEST_META=no\" to disable, and report thru"
- echo "### the Issue Tracking System <http://www.openldap.org/its/>"
- echo ""
+#### No longer experimental, IMHO
+###if test "x$TEST_META" = "xno" ; then
+### echo '### Test disabled by "TEST_META=no"; unset TEST_META to re-enable'
+### echo ""
+### exit 0
+###else
+### echo "### this test is experimental; in case of problems,"
+### echo "### set \"TEST_META=no\" to disable, and report thru"
+### echo "### the Issue Tracking System <http://www.openldap.org/its/>"
+### echo ""
+###fi
+
+if test x$TESTLOOPS = x ; then
+ TESTLOOPS=50
fi
rm -rf $TESTDIR
mkdir -p $TESTDIR $DBDIR1 $DBDIR2
# NOTE: this could be added to all tests...
-if test "$BACKEND" = "bdb" -o "$BACKEND" = "hdb" ; then
+if test "$BACKEND" = "bdb" || test "$BACKEND" = "hdb" ; then
if test "x$DB_CONFIG" != "x" ; then \
if test -f $DB_CONFIG ; then
echo "==> using DB_CONFIG \"$DB_CONFIG\""
fi
KILLPIDS="$PID"
+sleep 1
+
echo "Using ldapsearch to check that slapd is running..."
for i in 0 1 2 3 4 5; do
$LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT1 \
fi
KILLPIDS="$KILLPIDS $PID"
+sleep 1
+
echo "Using ldapsearch to check that slapd is running..."
for i in 0 1 2 3 4 5; do
$LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT2 \
fi
KILLPIDS="$KILLPIDS $PID"
+sleep 1
+
echo "Using ldapsearch to check that slapd is running..."
for i in 0 1 2 3 4 5; do
$LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT3 \
echo "cn=Somewhere,ou=Meta,$METABASEDN" >> $f
done
+# add a bind that resolves to a referral
+for f in $TESTDIR/$DATADIR/do_bind.* ; do
+ echo "cn=Foo,ou=Meta,$METABASEDN" >> $f
+ echo "bar" >> $f
+ echo "" >> $f
+ echo "" >> $f
+done
+
echo "Using tester for concurrent server access..."
-$SLAPDTESTER -P "$PROGDIR" -d "$TESTDIR/$DATADIR" -h $LOCALHOST -p $PORT3 -D "cn=Manager,$METABASEDN" -w $PASSWD -l 50 # -r 20
+$SLAPDTESTER -P "$PROGDIR" -d "$TESTDIR/$DATADIR" -h $LOCALHOST -p $PORT3 \
+ -D "cn=Manager,$METABASEDN" -w $PASSWD -l $TESTLOOPS -r 20 -FF
RC=$?
if test $RC != 0 ; then
$CMP $SEARCHFLT $LDIFFLT > $CMPOUT
if test $? != 0 ; then
- echo "comparison failed - meta search/modification didn't succeed"
+ echo "comparison failed - slapd-meta search/modification didn't succeed"
exit 1
fi
echo ">>>>> Test succeeded"
-exit 0
+test $KILLSERVERS != no && wait
+
+exit 0