mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Valery Kharseko
17.32.2024 19898792d82508306ccfdedbd5482068b4f7767e
opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendDeleteOperation.java
@@ -13,6 +13,7 @@
 *
 * Copyright 2008-2009 Sun Microsystems, Inc.
 * Portions Copyright 2011-2016 ForgeRock AS.
 * Portions Copyright 2022-2024 3A Systems, LLC.
 */
package org.opends.server.workflowelement.localbackend;
@@ -281,8 +282,8 @@
      {
        if (dn.isInScopeOf(entryDN, SearchScope.WHOLE_SUBTREE)) {
           setResultCodeAndMessageNoInfoDisclosure(entry,ResultCode.NOT_ALLOWED_ON_NONLEAF, ERR_DELETE_HAS_SUB_BACKEND.get(entryDN, dn));
        }
        return;
              return;
         }
      }
      // Actually perform the delete.
opendj-server-legacy/src/test/java/org/openidentityplatform/opendj/OverlappingBackendTestSuite.java
@@ -30,6 +30,7 @@
import java.util.Set;
import static org.assertj.core.api.Assertions.assertThat;
import static org.testng.Assert.assertEquals;
@Test(sequential = true)
public class OverlappingBackendTestSuite extends DirectoryServerTestCase {
@@ -125,5 +126,26 @@
        hasUserRoot(search("o=test"));
        hasUserRoot2(search("o=test"));
        hasUserRoot2(search("ou=eus,o=test"));
        int resultCode = TestCaseUtils.applyModifications(true,
                "dn: uid=user.1,o=test,ou=es,o=test",
                "changetype: modify",
                "add: description",
                "description: user.1");
        assertEquals(resultCode, 0);
        resultCode = TestCaseUtils.applyModifications(true,
                "dn: uid=user.2,o=test,ou=eus,o=test",
                "changetype: modify",
                "add: description",
                "description: user.2");
        assertEquals(resultCode, 0);
        hasUserRoot(search("o=test"));
        hasUserRoot2(search("o=test"));
        hasUserRoot2(search("ou=eus,o=test"));
        TestCaseUtils.deleteEntry(DN.valueOf("uid=user.1,o=test,ou=es,o=test"));
        TestCaseUtils.deleteEntry(DN.valueOf("uid=user.2,o=test,ou=eus,o=test"));
      }
}