]> git.sur5r.net Git - openldap/blobdiff - tests/scripts/test005-modrdn
Fix initializer
[openldap] / tests / scripts / test005-modrdn
index 9029a1c2976d654642426e46ae69af14b3cf4fda..213a0c9ef075291d7df11b4ce8fb61c3ca1f4d10 100755 (executable)
@@ -1,16 +1,24 @@
 #! /bin/sh
 # $OpenLDAP$
 
-if test $# -eq 0 ; then
-       SRCDIR="."
-else
+SRCDIR="."
+if test $# -ge 1 ; then
        SRCDIR=$1; shift
 fi
-if test $# -eq 1 ; then
+BACKEND=bdb
+if test $# -ge 1 ; then
        BACKEND=$1; shift
 fi
+MONITORDB=no
+if test $# -ge 1 ; then
+       MONITORDB=$1; shift
+fi
+WAIT=0
+if test $# -ge 1 ; then
+       WAIT=1; shift
+fi
 
-echo "running defines.sh $SRCDIR $BACKEND"
+echo "running defines.sh"
 . $SRCDIR/scripts/defines.sh
 
 echo "Cleaning up in $DBDIR..."
@@ -18,7 +26,8 @@ echo "Cleaning up in $DBDIR..."
 rm -f $DBDIR/[!C]*
 
 echo "Running slapadd to build slapd database..."
-$SLAPADD -f $CONF -l $LDIF
+. $CONFFILTER $BACKEND $MONITORDB < $CONF > $DBCONF
+$SLAPADD -f $DBCONF -l $LDIFORDERED
 RC=$?
 if test $RC != 0 ; then
        echo "slapadd failed ($RC)!"
@@ -26,19 +35,24 @@ if test $RC != 0 ; then
 fi
 
 echo "Starting slapd on TCP/IP port $PORT..."
-$SLAPD -f $CONF -h $MASTERURI -d $LVL $TIMING > $MASTERLOG 2>&1 &
+$SLAPD -f $DBCONF -h $MASTERURI -d $LVL $TIMING > $MASTERLOG 2>&1 &
 PID=$!
+if test $WAIT != 0 ; then
+    echo PID $PID
+    read foo
+fi
 echo "Testing slapd modrdn operations..."
 
 # Make sure we can search the database
 for i in 0 1 2 3 4 5; do
-       $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+       $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'objectClass=*' > $INITOUT 2>&1
        RC=$?
-       if test $RC = 1 ; then
-               echo "Waiting 5 seconds for slapd to start..."
-               sleep 5
+       if test $RC = 0 ; then
+               break
        fi
+       echo "Waiting 5 seconds for slapd to start..."
+       sleep 5
 done
 
 if test $RC != 0 ; then
@@ -50,7 +64,7 @@ fi
 # -r used to do remove of old rdn
 
 echo "Testing modrdn(deleteoldrdn=0)..."
-$LDAPMODRDN -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
+$LDAPMODRDN -D "$MANAGERDN" -h $LOCALHOST -p $PORT -w $PASSWD > \
        $TESTOUT 2>&1 'cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US' 'cn=James A Jones III'
 
 RC=$?
@@ -61,7 +75,7 @@ if test $RC != 0 ; then
 fi
 
 echo "Testing modrdn(deleteoldrdn=1)..."
-$LDAPMODRDN -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD >> \
+$LDAPMODRDN -D "$MANAGERDN" -r -h $LOCALHOST -p $PORT -w $PASSWD >> \
        $TESTOUT 2>&1 'cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US' 'cn=James A Jones II'
 
 RC=$?
@@ -74,7 +88,7 @@ fi
 # Ensure the new rdn's can be found
 
 echo "Using ldapsearch to retrieve entries using new rdn (cn=James A Jones III)..."
-$LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'cn=James A Jones III' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
@@ -87,9 +101,9 @@ fi
 LDIF=$MODRDNOUTMASTER1
 
 echo "Filtering ldapsearch results..."
-. $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
+. $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
 echo "Filtering original ldif used to create database..."
-. $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
+. $LDIFFILTER < $LDIF > $LDIFFLT
 echo "Comparing filter output..."
 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
 
@@ -101,7 +115,7 @@ fi
 
 
 echo "Using ldapsearch to retrieve entries using new rdn (cn=James A Jones II)..."
-$LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'cn=James A Jones II' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
@@ -114,9 +128,9 @@ fi
 LDIF=$MODRDNOUTMASTER2
 
 echo "Filtering ldapsearch results..."
-. $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
+. $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
 echo "Filtering original ldif used to create database..."
-. $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
+. $LDIFFILTER < $LDIF > $LDIFFLT
 echo "Comparing filter output..."
 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
 
@@ -130,7 +144,7 @@ fi
 # an attribute.
 
 echo "Using ldapsearch to retrieve entries using removed rdn (cn=James A Jones 2)..."
-$LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'cn=James A Jones 2' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
@@ -138,7 +152,7 @@ if test $RC != 0 ; then
        echo "ldapsearch failed ($RC)!"
        exit $RC
 fi
-$CMP $SEARCHOUT /dev/null > $CMPOUT
+$CMP $SEARCHOUT - < /dev/null > $CMPOUT
 if test $? != 0 ; then
        echo "failure: ldapsearch found attribute that was to be removed!"
        kill -HUP $PID
@@ -146,7 +160,7 @@ if test $? != 0 ; then
 fi
 
 echo "Using ldapsearch to retrieve all the entries..."
-$LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'objectClass=*' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
@@ -158,9 +172,9 @@ fi
 LDIF=$MODRDNOUTMASTER0
 
 echo "Filtering ldapsearch results..."
-. $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
+. $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
 echo "Filtering original ldif used to create database..."
-. $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
+. $LDIFFILTER < $LDIF > $LDIFFLT
 echo "Comparing filter output..."
 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
 
@@ -172,7 +186,7 @@ fi
 
 
 echo "Testing modrdn(deleteoldrdn=1), modrdn with new rdn already an att val..."
-$LDAPMODRDN -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD > \
+$LDAPMODRDN -D "$MANAGERDN" -r -h $LOCALHOST -p $PORT -w $PASSWD > \
        /dev/null 2>&1 'cn=James A Jones III, ou=Alumni Association, ou=People, o=University of Michigan, c=US' 'cn=James A Jones 1'
 
 RC=$?
@@ -186,26 +200,26 @@ fi
 # present
 
 echo "Using ldapsearch to retrieve entries using new rdn (cn=James A Jones 1)..."
-$LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
            'cn=James A Jones 1' > $SEARCHOUT 2>&1
 RC=$?
+
+kill -HUP $PID
+
 if test $RC != 0 ; then
        echo "ldapsearch failed ($RC)!"
-       kill -HUP $PID
        exit $RC
 fi
 
-
 LDIF=$MODRDNOUTMASTER3
 
 echo "Filtering ldapsearch results..."
-. $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
+. $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
 echo "Filtering original ldif used to create database..."
-. $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
+. $LDIFFILTER < $LDIF > $LDIFFLT
 echo "Comparing filter output..."
 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
 
-kill -HUP $PID
 if test $? != 0 ; then
        echo "comparison failed - modrdn operations did not complete correctly"
        exit 1
@@ -213,8 +227,4 @@ fi
 
 echo ">>>>> Test succeeded"
 
-
-
-# echo "modrdn test not yet written"
-
 exit 0