]> git.sur5r.net Git - openldap/blobdiff - tests/scripts/test020-proxycache
This test uses syncrepl persist, but ldbm doesn't support that. Exclude it.
[openldap] / tests / scripts / test020-proxycache
index 79c96dd9bcd7bdd214d70635fe862bb03be91815..0fc9f8b719b8cdbabf5bedb2fbafe802b1853324 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-2005 The OpenLDAP Foundation.
 ## All rights reserved.
 ##
 ## Redistribution and use in source and binary forms, with or without
@@ -23,6 +23,16 @@ if test $PROXYCACHE = pcacheno; then
        exit 0
 fi 
 
+if test $BACKLDAP = "ldapno" ; then 
+       echo "LDAP backend not available, test skipped"
+       exit 0
+fi 
+
+if test "x$LVL" = "x0" ; then
+       echo "test020 needs a minimal log level; setting to LDAP_DEBUG_NONE..."
+       LVL=2048
+fi
+
 mkdir -p $TESTDIR $DBDIR1 $DBDIR2
 
 # Test proxy caching:
@@ -44,6 +54,8 @@ if test $WAIT != 0 ; then
 fi
 KILLPIDS="$PID"
 
+sleep 1
+
 echo "Using ldapsearch to check that master slapd is running..."
 for i in 0 1 2 3 4 5; do
        $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT1 \
@@ -82,6 +94,8 @@ if test $WAIT != 0 ; then
 fi
 KILLPIDS="$KILLPIDS $CACHEPID"
 
+sleep 1
+
 echo "Using ldapsearch to check that proxy slapd is running..."
 for i in 0 1 2 3 4 5; do
        $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT2 \
@@ -94,6 +108,12 @@ for i in 0 1 2 3 4 5; do
        sleep 5
 done
 
+if test $RC != 0 ; then
+       echo "ldapsearch failed ($RC)!"
+       test $KILLSERVERS != no && kill -HUP $KILLPIDS
+       exit $RC
+fi
+
 echo "Making queries on the proxy cache..." 
 echo "Query 1: filter:(sn=Jon) attrs: all" 
 $LDAPSEARCH -x -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT2 \
@@ -145,7 +165,7 @@ if test $RC != 0 ; then
        exit $RC
 fi
 
-echo "Query 6: filter:(mail=*@example.com) cn sn title uid"  
+echo "Query 6: filter:(mail=*@mail.alumni.example.com) cn sn title uid"  
 $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT2 \
        'mail=*@mail.alumni.example.com' cn sn title uid >> $SLAVEOUT 2>&1
 RC=$?
@@ -218,7 +238,7 @@ if test $RC != 0 ; then
        exit $RC
 fi
 
-echo "Query 11: filter:(mail=*@example.com) cn sn title uid"  
+echo "Query 11: filter:(mail=jaj@mail.alumni.example.com) cn sn title uid"  
 $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT2 \
        'mail=jaj@mail.alumni.example.com' cn sn title uid >> $SLAVEOUT 2>&1
 RC=$?
@@ -257,8 +277,10 @@ else
        exit 1
 fi
 
-echo "Comparing cache output..."
-$CMP $SLAVEOUT $PROXYCACHEOUT > $CMPOUT
+echo "Filtering ldapsearch results..."
+. $LDIFFILTER < $SLAVEOUT > $SEARCHFLT
+echo "Comparing filter output..."
+$CMP $SEARCHFLT $PROXYCACHEOUT > $CMPOUT
 
 if test $? != 0 ; then
        echo "Comparison failed"