From 01105d718e8469e8e6b02b2ecbc0ec4922122c0f Mon Sep 17 00:00:00 2001
From: mrossign <mrossign@localhost>
Date: Mon, 19 Jan 2009 10:15:38 +0000
Subject: [PATCH] fixed failing assured replication test

---
 opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/AssuredReplicationServerTest.java |   43 ++++++++++++++++++++++++++++++-------------
 1 files changed, 30 insertions(+), 13 deletions(-)

diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/AssuredReplicationServerTest.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/AssuredReplicationServerTest.java
index 8853dc5..fb6b2ab 100644
--- a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/AssuredReplicationServerTest.java
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/server/AssuredReplicationServerTest.java
@@ -3767,13 +3767,31 @@
           LONG_TIMEOUT));
       }
 
-      // Check DS2 is degraded
-      sleep(7000);
-      dsInfos = fakeRd1.getDsList();
-      dsInfo = dsInfos.get(0);
-      assertEquals(dsInfo.getDsId(), FDS2_ID);
-      assertEquals(dsInfo.getStatus(), ServerStatus.DEGRADED_STATUS);
+      // Wait for DS2 being degraded
+      boolean error = true;
+      for (int count = 0; count < 12; count++)
+      {
+        dsInfos = fakeRd1.getDsList();
+        if (dsInfos == null)
+          continue;
+        if (dsInfos.size() == 0)
+          continue;
+        dsInfo = dsInfos.get(0);
+        if ( (dsInfo.getDsId() == FDS2_ID) &&
+            (dsInfo.getStatus() == ServerStatus.DEGRADED_STATUS) )
+        {
+          error = false;
+          break;
+        }
+        else
+        {
+          sleep(1000);
+        }
+      }
+      if (error)
+        fail("DS2 not in degraded status");
 
+      sleep(500); // Sleep a while as counters are updated just after sending thread is unblocked
       assertEquals(fakeRd1.getAssuredSrSentUpdates(), 4);
       assertEquals(fakeRd1.getAssuredSrAcknowledgedUpdates(), 0);
       assertEquals(fakeRd1.getAssuredSrNotAcknowledgedUpdates(), 4);
@@ -3864,8 +3882,8 @@
 
       fakeRd2.startListenService();
 
-      // Wait for DS2 being degraded
-      boolean error = true;
+      // Wait for DS2 being back to normal
+      error = true;
       for (int count = 0; count < 12; count++)
       {
         dsInfos = fakeRd1.getDsList();
@@ -3888,7 +3906,6 @@
       if (error)
         fail("DS2 not back to normal status");
 
-      sleep(500); // Sleep a while as counters are updated just after sending thread is unblocked
       // DS2 should also change status so reset its assured monitoring data so no received sr updates
       assertEquals(fakeRd1.getAssuredSrSentUpdates(), 5);
       assertEquals(fakeRd1.getAssuredSrAcknowledgedUpdates(), 1);
@@ -3912,8 +3929,8 @@
       assertEquals(fakeRd2.getAssuredSrWrongStatusUpdates(), 0);
       assertEquals(fakeRd2.getAssuredSrReplayErrorUpdates(), 0);
       assertEquals(fakeRd2.getAssuredSrServerNotAcknowledgedUpdates().size(), 0);
-      assertEquals(fakeRd2.getAssuredSrReceivedUpdates(), 0); // status changed to normal so reset of monitoring data
-      assertEquals(fakeRd2.getAssuredSrReceivedUpdatesAcked(), 0);
+      assertEquals(fakeRd2.getAssuredSrReceivedUpdates(), 4);
+      assertEquals(fakeRd2.getAssuredSrReceivedUpdatesAcked(), 4);
       assertEquals(fakeRd2.getAssuredSrReceivedUpdatesNotAcked(), 0);
 
       assertEquals(fakeRd1.getReceivedUpdates(), 0);
@@ -3963,8 +3980,8 @@
       assertEquals(fakeRd2.getAssuredSrWrongStatusUpdates(), 0);
       assertEquals(fakeRd2.getAssuredSrReplayErrorUpdates(), 0);
       assertEquals(fakeRd2.getAssuredSrServerNotAcknowledgedUpdates().size(), 0);
-      assertEquals(fakeRd2.getAssuredSrReceivedUpdates(), 1);
-      assertEquals(fakeRd2.getAssuredSrReceivedUpdatesAcked(), 1);
+      assertEquals(fakeRd2.getAssuredSrReceivedUpdates(), 5);
+      assertEquals(fakeRd2.getAssuredSrReceivedUpdatesAcked(), 5);
       assertEquals(fakeRd2.getAssuredSrReceivedUpdatesNotAcked(), 0);
 
       assertEquals(fakeRd1.getReceivedUpdates(), 0);

--
Gitblit v1.10.0