From 6401e69f22f9b5044c53bbdb4051851cb0f4cd7a Mon Sep 17 00:00:00 2001
From: pgamba <pgamba@localhost>
Date: Tue, 10 Nov 2009 08:52:03 +0000
Subject: [PATCH] Fix#4262 ECL One should be able to disable ECL for each domain

---
 opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java |   89 +++++++++++++++-----------------------------
 1 files changed, 30 insertions(+), 59 deletions(-)

diff --git a/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java b/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
index 161679c..b6f3067 100644
--- a/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
+++ b/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
@@ -398,35 +398,43 @@
     return broker;
   }
 
+  protected void deleteEntry(DN dn)
+  {
+    try
+    {
+    if (dn.getParent().getRDN().toString().equalsIgnoreCase("cn=domains"))
+      deleteEntry(DN.decode("cn=external changelog,"+dn.toString()));
+    }
+    catch(Exception e)
+    {}
+
+    DeleteOperationBasis op;
+    op = new DeleteOperationBasis(connection, InternalClientConnection
+        .nextOperationID(), InternalClientConnection.nextMessageID(), null,
+        dn);
+    op.run();
+    if ((op.getResultCode() != ResultCode.SUCCESS) &&
+        (op.getResultCode() != ResultCode.NO_SUCH_OBJECT))
+    {
+      fail("Delete entry " + dn +
+          " failed: " + op.getResultCode().getResultCodeName());
+    }
+  }
+
   /**
    * suppress all the config entries created by the tests in this class
    */
   protected void cleanConfigEntries()
   {
     logError(Message.raw(Category.SYNC, Severity.NOTICE,
-        "ReplicationTestCase/Cleaning config entries"));
+    "ReplicationTestCase/Cleaning config entries"));
 
-    DeleteOperationBasis op;
-    // Delete entries
     try
     {
       while (true)
       {
         DN dn = configEntryList.removeLast();
-
-        logError(Message.raw(Category.SYNC, Severity.NOTICE,
-                 "cleaning config entry " + dn));
-
-        op = new DeleteOperationBasis(connection, InternalClientConnection
-            .nextOperationID(), InternalClientConnection.nextMessageID(), null,
-            dn);
-        op.run();
-        if ((op.getResultCode() != ResultCode.SUCCESS) &&
-            (op.getResultCode() != ResultCode.NO_SUCH_OBJECT))
-        {
-          fail("ReplicationTestCase/Cleaning config entries DEL " + dn +
-                   " failed: " + op.getResultCode().getResultCodeName());
-        }
+        deleteEntry(dn);
       }
     }
     catch (NoSuchElementException e) {
@@ -441,8 +449,8 @@
    */
   protected void cleanRealEntries()
   {
-  	logError(Message.raw(Category.SYNC, Severity.NOTICE,
-        "ReplicationTestCase/Cleaning entries"));
+    logError(Message.raw(Category.SYNC, Severity.NOTICE,
+    "ReplicationTestCase/Cleaning entries"));
 
     DeleteOperationBasis op;
     // Delete entries
@@ -451,23 +459,7 @@
       while (true)
       {
         DN dn = entryList.removeLast();
-
-        op = new DeleteOperationBasis(connection,
-               InternalClientConnection.nextOperationID(),
-               InternalClientConnection.nextMessageID(),
-               null,
-               dn);
-
-        op.run();
-
-        if ((op.getResultCode() != ResultCode.SUCCESS) &&
-            (op.getResultCode() != ResultCode.NO_SUCH_OBJECT))
-        {
-          logError(Message.raw(Category.SYNC, Severity.NOTICE,
-                   "ReplicationTestCase/Cleaning entries" +
-                   "DEL " + dn +
-                   " failed " + op.getResultCode().getResultCodeName()));
-        }
+        deleteEntry(dn);
       }
     }
     catch (NoSuchElementException e) {
@@ -1171,29 +1163,8 @@
    */
   protected void removeDomain(Entry domainCfgEntry)
   {
-    DeleteOperationBasis op;
-    // Delete entries
-    try
-    {
-      DN dn = domainCfgEntry.getDN();
-
-      logError(Message.raw(Category.SYNC, Severity.NOTICE,
-        "cleaning config entry " + dn));
-
-      op = new DeleteOperationBasis(connection, InternalClientConnection.
-        nextOperationID(), InternalClientConnection.nextMessageID(), null,
-        dn);
-      op.run();
-      if ((op.getResultCode() != ResultCode.SUCCESS) &&
-        (op.getResultCode() != ResultCode.NO_SUCH_OBJECT))
-      {
-        fail("Deleting config entry" + dn +
-          " failed: " + op.getResultCode().getResultCodeName());
-      }
-    } catch (NoSuchElementException e)
-    {
-      // done
-    }
+    DN dn = domainCfgEntry.getDN();
+    deleteEntry(dn);
   }
 
   /**

--
Gitblit v1.10.0