r21700: Run mktestsetup as an external program. This guarantees that it can be used...
[ira/wip.git] / source / script / tests / test_ldap.sh
1 #!/bin/sh
2 # test some simple LDAP and CLDAP operations
3
4 if [ $# -lt 3 ]; then
5 cat <<EOF
6 Usage: test_ldap.sh SERVER USERNAME PASSWORD
7 EOF
8 exit 1;
9 fi
10
11 SERVER="$1"
12 USERNAME="$2"
13 PASSWORD="$3"
14
15 incdir=`dirname $0`
16 . $incdir/test_functions.sh
17
18
19 p=ldap
20 for options in "" "--option=socket:testnonblock=true" "-U$USERNAME%$PASSWORD --option=socket:testnonblock=true" "-U$USERNAME%$PASSWORD"; do
21     testit "TESTING PROTOCOL $p with options $options" ../testprogs/blackbox/test_ldb.sh $p $SERVER $options
22 done
23 # see if we support ldaps
24 if grep ENABLE_GNUTLS.1 include/config.h > /dev/null; then
25     p=ldaps
26     for options in "" "-U$USERNAME%$PASSWORD"; do
27         testit "TESTING PROTOCOL $p with options $options" ../testprogs/blackbox/test_ldb.sh $p $SERVER $options
28     done
29 fi
30 for t in LDAP-CLDAP LDAP-BASIC LDAP-SCHEMA LDAP-UPTODATENESS
31 do
32         testit "$t" bin/smbtorture $TORTURE_OPTIONS "-U$USERNAME%$PASSWORD" //$SERVER/_none_ $t
33 done
34
35 # only do the ldb tests when not in quick mode - they are quite slow, and ldb
36 # is now pretty well tested by the rest of the quick tests anyway
37 test "$TORTURE_QUICK" = "yes" || {
38    LDBDIR=lib/ldb
39    export LDBDIR
40    testit "ldb tests" $LDBDIR/tests/test-tdb.sh
41 }
42
43 SCRIPTDIR=../testprogs/ejs
44
45 testit "ejs ldap test" $SCRIPTDIR/ldap.js $CONFIGURATION $SERVER -U$USERNAME%$PASSWORD 
46
47 testok $0 $failed