ITS#9121 extend test cases

Test for filtered dynamic attrs, memberOf, filtered memberOf
This commit is contained in:
Howard Chu 2019-12-18 20:31:21 +00:00
parent c458744e32
commit 2ad87f4235
2 changed files with 183 additions and 3 deletions

View file

@ -58,6 +58,60 @@ cn: Dynamic List
memberURL: ldap:///ou=People,dc=example,dc=com?cn,mail?sub?(objectClass=person
)
# Testing filtered search with all attrs...
dn: cn=Dynamic List,ou=Dynamic Lists,dc=example,dc=com
objectClass: groupOfURLs
cn: Dynamic List
cn: Barbara Jensen
cn: Babs Jensen
cn: Bjorn Jensen
cn: Biiff Jensen
cn: Dorothy Stevens
cn: Dot Stevens
cn: James A Jones 1
cn: James Jones
cn: Jim Jones
cn: James A Jones 2
cn: Jane Doe
cn: Jane Alverson
cn: Jennifer Smith
cn: Jen Smith
cn: John Doe
cn: Jonathon Doe
cn: Mark Elliot
cn: Mark A Elliot
cn: Ursula Hampster
memberURL: ldap:///ou=People,dc=example,dc=com?cn,mail?sub?(objectClass=person
)
mail: bjensen@mailgw.example.com
mail: bjorn@mailgw.example.com
mail: dots@mail.alumni.example.com
mail: jaj@mail.alumni.example.com
mail: jjones@mailgw.example.com
mail: jdoe@woof.net
mail: jen@mail.alumni.example.com
mail: johnd@mailgw.example.com
mail: melliot@mail.alumni.example.com
mail: uham@mail.alumni.example.com
# Testing filtered search of a listed attr...
dn: cn=Dynamic List,ou=Dynamic Lists,dc=example,dc=com
mail: bjensen@mailgw.example.com
mail: bjorn@mailgw.example.com
mail: dots@mail.alumni.example.com
mail: jaj@mail.alumni.example.com
mail: jjones@mailgw.example.com
mail: jdoe@woof.net
mail: jen@mail.alumni.example.com
mail: johnd@mailgw.example.com
mail: melliot@mail.alumni.example.com
mail: uham@mail.alumni.example.com
# Testing filtered search of a non-listed attr...
dn: cn=Dynamic List,ou=Dynamic Lists,dc=example,dc=com
objectClass: groupOfURLs
# Testing filtered search of a non-present attr...
# Testing list compare...
TRUE
@ -273,3 +327,41 @@ member: cn=John Doe,ou=Information Technology Division,ou=People,dc=example,dc
member: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
member: cn=Ursula Hampster,ou=Alumni Association,ou=People,dc=example,dc=com
# Testing memberOf functionality...
dn: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
cn: Mark Elliot
cn: Mark A Elliot
sn: Elliot
uid: melliot
postalAddress: Alumni Association $ 111 Maple St $ Anytown, MI 48109
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 199 Outer Drive $ Ypsilanti, MI 48198
homePhone: +1 313 555 0388
drink: Gasoline
title: Director, UM Alumni Association
mail: melliot@mail.alumni.example.com
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
dgMemberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com
# Testing filtered memberOf functionality...
dn: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
objectClass: OpenLDAPperson
cn: Mark Elliot
cn: Mark A Elliot
sn: Elliot
uid: melliot
postalAddress: Alumni Association $ 111 Maple St $ Anytown, MI 48109
seeAlso: cn=All Staff,ou=Groups,dc=example,dc=com
homePostalAddress: 199 Outer Drive $ Ypsilanti, MI 48198
homePhone: +1 313 555 0388
drink: Gasoline
title: Director, UM Alumni Association
mail: melliot@mail.alumni.example.com
pager: +1 313 555 7671
facsimileTelephoneNumber: +1 313 555 7762
telephoneNumber: +1 313 555 4177
dgMemberOf: cn=dynamic list of members,ou=dynamic lists,dc=example,dc=com

View file

@ -38,15 +38,14 @@ else
fi
echo "Running slapadd to build slapd database..."
. $CONFFILTER $BACKEND $MONITORDB < $MCONF > $ADDCONF
$SLAPADD -f $ADDCONF -l $LDIFORDERED
. $CONFFILTER $BACKEND $MONITORDB < $DYNLISTCONF > $CONF1
$SLAPADD -f $CONF1 -l $LDIFORDERED
RC=$?
if test $RC != 0 ; then
echo "slapadd failed ($RC)!"
exit $RC
fi
. $CONFFILTER $BACKEND $MONITORDB < $DYNLISTCONF > $CONF1
echo "Starting slapd on TCP/IP port $PORT1..."
$SLAPD -f $CONF1 -h $URI1 -d $LVL $TIMING > $LOG1 2>&1 &
@ -141,6 +140,54 @@ if test $RC != 0 ; then
exit $RC
fi
echo "Testing filtered search with all attrs..."
echo "# Testing filtered search with all attrs..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "$LISTDN" -h $LOCALHOST -p $PORT1 \
'(mail=jdoe@woof.net)' '*' \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
echo "Testing filtered search of a listed attr..."
echo "# Testing filtered search of a listed attr..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "$LISTDN" -h $LOCALHOST -p $PORT1 \
'(mail=jdoe@woof.net)' mail \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
echo "Testing filtered search of a non-listed attr..."
echo "# Testing filtered search of a non-listed attr..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "$LISTDN" -h $LOCALHOST -p $PORT1 \
'(mail=jdoe@woof.net)' objectClass \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
echo "Testing filtered search of a non-present attr..."
echo "# Testing filtered search of a non-present attr..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "$LISTDN" -h $LOCALHOST -p $PORT1 \
'(mail=nobody@nowhere)' objectClass \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
echo "Testing list compare..."
echo "# Testing list compare..." >> $SEARCHOUT
$LDAPCOMPARE -h $LOCALHOST -p $PORT1 \
@ -645,6 +692,47 @@ if test $RC != 0 ; then
exit $RC
fi
echo "Reconfiguring slapd..."
$LDAPMODIFY -x -D cn=config -h $LOCALHOST -p $PORT1 -y $CONFIGPWF > \
$TESTOUT 2>&1 << EOMODS
version: 1
dn: olcOverlay={0}dynlist,olcDatabase={$DBIX}$BACKEND,cn=config
changetype: modify
delete: olcDLattrSet
olcDLattrSet: {0}
-
add: olcDLattrSet
olcDLattrSet: groupOfURLs memberURL member@dgMemberOf
-
EOMODS
echo "==========================================================" >> $LOG1
echo "Testing memberOf functionality..."
echo "# Testing memberOf functionality..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "ou=People,$BASEDN" -h $LOCALHOST -p $PORT1 \
-D "$BABSDN" -w bjensen \
'(cn=Mark Elliot)' '*' \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
echo "Testing filtered memberOf functionality..."
echo "# Testing filtered memberOf functionality..." >> $SEARCHOUT
$LDAPSEARCH -S "" -b "ou=People,$BASEDN" -h $LOCALHOST -p $PORT1 \
-D "$BABSDN" -w bjensen \
'(&(dgMemberOf=cn=Dynamic List of Members,ou=Dynamic Lists,dc=example,dc=com)(cn=Mark Elliot))' '*' \
>> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
echo "ldapsearch failed ($RC)!"
test $KILLSERVERS != no && kill -HUP $KILLPIDS
exit $RC
fi
test $KILLSERVERS != no && kill -HUP $KILLPIDS
LDIF=$DYNLISTOUT