From 09ae896b28ce52953881adb3b93469482926b46c Mon Sep 17 00:00:00 2001
From: Howard Chu <hyc@openldap.org>
Date: Fri, 15 Apr 2005 04:46:01 +0000
Subject: [PATCH] ITS#3657 add test with newSuperior as child of target entry

---
 tests/scripts/test005-modrdn | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/tests/scripts/test005-modrdn b/tests/scripts/test005-modrdn
index fa495f2108..389dd38b64 100755
--- a/tests/scripts/test005-modrdn
+++ b/tests/scripts/test005-modrdn
@@ -179,6 +179,8 @@ if test $? != 0 ; then
 	exit 1
 fi
 
+# Test that you can use modrdn with an attribute value which was previously
+# present
 
 echo "Testing modrdn(deleteoldrdn=1), modrdn with new rdn already an att val..."
 $LDAPMODRDN -D "$MANAGERDN" -r -h $LOCALHOST -p $PORT1 -w $PASSWD > \
@@ -191,16 +193,11 @@ if test $RC != 0 ; then
 	exit $RC
 fi
 
-# Test that you can use modrdn with an attribute value which was previously
-# present
-
 echo "Using ldapsearch to retrieve entries using new rdn (cn=James A Jones 1)..."
 $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
 	    'cn=James A Jones 1' > $SEARCHOUT 2>&1
 RC=$?
 
-test $KILLSERVERS != no && kill -HUP $KILLPIDS
-
 if test $RC != 0 ; then
 	echo "ldapsearch failed ($RC)!"
 	exit $RC
@@ -220,5 +217,19 @@ if test $? != 0 ; then
 	exit 1
 fi
 
+echo "Testing modrdn with newSuperior as child of target "
+$LDAPMODRDN -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD > \
+	/dev/null 2>&1  -s 'cn=Sub1, ou=FooBar, cn=James A Jones 1, ou=Alumni Association, ou=People, dc=example, dc=com' 'cn=James A Jones 1' \
+	'cn=James A Jones 1, ou=Alumni Association, ou=People, dc=example, dc=com' 'cn=James A Jones 1'
+
+RC=$?
+if test $RC == 0 ; then
+	echo "ldapmodrdn succeeded, should have failed!"
+	test $KILLSERVERS != no && kill -HUP $KILLPIDS
+	exit 1
+fi
+
+test $KILLSERVERS != no && kill -HUP $KILLPIDS
+
 echo ">>>>> Test succeeded"
 exit 0
-- 
GitLab