From d4579b06225c58d185765849bb205e19493d7df1 Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Tue, 20 Dec 2005 19:02:33 +0000 Subject: [PATCH] test033 updates from HEAD --- tests/scripts/test033-glue-syncrepl | 69 +++++++++++++++++++++++++---- 1 file changed, 60 insertions(+), 9 deletions(-) diff --git a/tests/scripts/test033-glue-syncrepl b/tests/scripts/test033-glue-syncrepl index 57d50b8477..7e1f878f31 100755 --- a/tests/scripts/test033-glue-syncrepl +++ b/tests/scripts/test033-glue-syncrepl @@ -12,10 +12,15 @@ ## top-level directory of the distribution or, alternatively, at ## . +if test "$BACKEND" != "bdb" && test "$BACKEND" != "hdb" ; then + echo "Test does not support $BACKEND" + exit 0 +fi + echo "running defines.sh" . $SRCDIR/scripts/defines.sh -mkdir -p $TESTDIR $DBDIR1A $DBDIR1B $DBDIR1C +mkdir -p $TESTDIR $DBDIR1A $DBDIR1B $DBDIR1C $DBDIR2A $DBDIR2B echo "Running slapadd to build glued slapd databases..." . $CONFFILTER $BACKEND $MONITORDB < $GLUECONF > $CONF1 @@ -26,8 +31,7 @@ if test $RC != 0 ; then exit $RC fi -mv $DBDIR1B $DBDIR2B -mkdir $DBDIR2A $DBDIR1B +rm -f $DBDIR1A/* $DBDIR1B/* cp -pr $DBDIR1C $DBDIR2C echo "Starting slapd 1 on TCP/IP port $PORT1..." @@ -78,13 +82,62 @@ for i in 0 1 2 3 4 5; do sleep 5 done -echo "Waiting 15 seconds for shadow subtrees to sync..." -sleep 15 +SUBTREE1="ou=Information Technology Division,ou=People,dc=example,dc=com" +SUBTREE2="ou=Groups,dc=example,dc=com" + +echo "Using ldapadd to populate subtree=\"${SUBTREE1}\" on port $PORT1..." +$LDAPADD -D "cn=Manager 1,$BASEDN" -w $PASSWD -h $LOCALHOST -p $PORT1 \ + -f $LDIFORDERED -c \ + > /dev/null 2>&1 +RC=$? +case $RC in +0) + echo "ldapadd should have failed ($RC)!" + test $KILLSERVERS != no && kill -HUP $KILLPIDS + exit -1 + ;; +10|68) + # Fine if we get alreadyExists or referrals + ;; +*) + echo "ldapadd failed ($RC)!" + test $KILLSERVERS != no && kill -HUP $KILLPIDS + exit $RC + ;; +esac + +echo "Using ldapadd to populate subtree=\"${SUBTREE2}\" on port $PORT2..." +$LDAPADD -D "cn=Manager 2,$BASEDN" -w $PASSWD -h $LOCALHOST -p $PORT2 \ + -f $LDIFORDERED -c \ + > /dev/null 2>&1 +RC=$? +case $RC in +0) + echo "ldapadd should have failed ($RC)!" + test $KILLSERVERS != no && kill -HUP $KILLPIDS + exit -1 + ;; +10|68) + # Fine if we get alreadyExists or referrals + ;; +*) + echo "ldapadd failed ($RC)!" + test $KILLSERVERS != no && kill -HUP $KILLPIDS + exit $RC + ;; +esac + +SLEEP=15 +echo "Waiting $SLEEP seconds for shadow subtrees to sync..." +sleep $SLEEP + +echo "Filtering original ldif used to create database..." +. $LDIFFILTER < $GLUESYNCOUT > $LDIFFLT for P in $PORT1 $PORT2 ; do echo "Using ldapsearch to read all the entries from port $P..." $LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $P \ - -S "" '(objectclass=*)' > $SEARCHOUT 2>&1 + -S "" '(objectclass=*)' > "${SEARCHOUT}.${P}" 2>&1 RC=$? if test $RC != 0 ; then @@ -94,9 +147,7 @@ for P in $PORT1 $PORT2 ; do fi echo "Filtering ldapsearch results..." - . $LDIFFILTER < $SEARCHOUT > $SEARCHFLT - echo "Filtering original ldif used to create database..." - . $LDIFFILTER < $GLUESYNCOUT > $LDIFFLT + . $LDIFFILTER < "${SEARCHOUT}.${P}" > $SEARCHFLT echo "Comparing filter output..." $CMP $SEARCHFLT $LDIFFLT > $CMPOUT -- 2.39.2