]> git.sur5r.net Git - openldap/blobdiff - tests/scripts/test011-glue-slapadd
ITS#7455
[openldap] / tests / scripts / test011-glue-slapadd
index 929a7f99258a7cc2818acb720b1e5cea1367b527..a465db4ed05c5a730e1d0fb1b120a338b0d67513 100755 (executable)
@@ -2,7 +2,7 @@
 # $OpenLDAP$
 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
 ##
-## Copyright 1998-2004 The OpenLDAP Foundation.
+## Copyright 1998-2012 The OpenLDAP Foundation.
 ## All rights reserved.
 ##
 ## Redistribution and use in source and binary forms, with or without
@@ -36,6 +36,8 @@ if test $WAIT != 0 ; then
 fi
 KILLPIDS="$PID"
 
+sleep 1
+
 echo "Using ldapsearch to retrieve all the entries..."
 for i in 0 1 2 3 4 5; do
        $LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 > $SEARCHOUT 2>&1
@@ -47,17 +49,16 @@ for i in 0 1 2 3 4 5; do
        sleep 5
 done
 
-test $KILLSERVERS != no && kill -HUP $KILLPIDS
-
 if test $RC != 0 ; then
        echo "ldapsearch failed ($RC)!"
+       test $KILLSERVERS != no && kill -HUP $KILLPIDS
        exit $RC
 fi
 
 echo "Filtering ldapsearch results..."
-. $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
+$LDIFFILTER -s ldif=e < $SEARCHOUT > $SEARCHFLT
 echo "Filtering original ldif used to create database..."
-. $LDIFFILTER < $LDIFGLUED > $LDIFFLT
+$LDIFFILTER -s ldif=e < $LDIFGLUED > $LDIFFLT
 echo "Comparing filter output..."
 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
 
@@ -65,8 +66,33 @@ if test $? != 0 ; then
        echo "comparison failed - database was not created correctly"
        echo $SEARCHFLT $LDIFFLT
        $DIFF $SEARCHFLT $LDIFFLT
+       test $KILLSERVERS != no && kill -HUP $KILLPIDS
+       exit 1
+fi
+
+if test $BACKEND != null ; then
+echo "Testing sizelimit..."
+$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 -s one -z 2 > $SEARCHOUT 2>&1
+RC=$?
+if test $RC = 0 ; then
+       echo "sizelimit not detected at end of search."
+       test $KILLSERVERS != no && kill -HUP $KILLPIDS
+       exit 1
+fi
+
+$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 -z 9 objectclass=OpenLDAPPerson > $SEARCHOUT 2>&1
+RC=$?
+if test $RC = 0 ; then
+       echo "sizelimit not detected at middle of search."
+       test $KILLSERVERS != no && kill -HUP $KILLPIDS
        exit 1
 fi
+fi
+
+test $KILLSERVERS != no && kill -HUP $KILLPIDS
 
 echo ">>>>> Test succeeded"
+
+test $KILLSERVERS != no && wait
+
 exit 0