]> git.sur5r.net Git - openldap/blobdiff - tests/scripts/test020-proxycache
more tests
[openldap] / tests / scripts / test020-proxycache
index 38dddc43340c4364ff464af7c8ceb3c41cff4c6a..797d828802a91fc494f33ed1a9be4063fa0af1b6 100755 (executable)
@@ -2,7 +2,7 @@
 # $OpenLDAP$
 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
 ##
-## Copyright 1998-2003 The OpenLDAP Foundation.
+## Copyright 1998-2005 The OpenLDAP Foundation.
 ## All rights reserved.
 ##
 ## Redistribution and use in source and binary forms, with or without
@@ -18,11 +18,21 @@ CACHE_ENTRY_LIMIT=10
 
 . $SRCDIR/scripts/defines.sh
 
-if test $PROXYCACHE = no; then 
-       echo "Proxy caching requires back-meta AND (back-ldbm OR back-bdb)" 
+if test $PROXYCACHE = pcacheno; then 
+       echo "Proxy cache overlay not available, test skipped"
        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:
@@ -94,6 +104,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 +161,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=$?
@@ -180,7 +196,7 @@ CACHED=`grep CACHEABLE $LOG2 | awk '{
                        printf "1" 
        }'`
 
-if test $CACHEABILITY = $CACHED ; then
+if test "$CACHEABILITY" = "$CACHED" ; then
        echo "Successfully verified cacheability"
 else 
        echo "Error in verifying cacheability"
@@ -218,7 +234,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=$?
@@ -250,12 +266,20 @@ ANSWERED=`grep ANSWERABLE $LOG2 | awk '{
 
 test $KILLSERVERS != no && kill -HUP $KILLPIDS
 
-if test $ANSWERABILITY = $ANSWERED ; then
+if test "$ANSWERABILITY" = "$ANSWERED" ; then
        echo "Successfully verified answerability"
 else 
        echo "Error in verifying answerability"
        exit 1
 fi
 
+echo "Comparing cache output..."
+$CMP $SLAVEOUT $PROXYCACHEOUT > $CMPOUT
+
+if test $? != 0 ; then
+       echo "Comparison failed"
+       exit 1
+fi
+
 echo ">>>>> Test succeeded"
 exit 0