Fix failure of testCloseCandidateRegistrationInQuickSuccession 88/29688/2
authorMoiz Raja <moraja@cisco.com>
Fri, 13 Nov 2015 21:32:13 +0000 (13:32 -0800)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 10 Dec 2015 18:44:18 +0000 (18:44 +0000)
Moved checking of whether the ownershipchange event occurred with
hasOwner=false to the loop so that we pass the test only when all
listeners receive that event with hasOwner=false

Change-Id: I463272822e6a39f310fef5996b541e1d06c79548
Signed-off-by: Moiz Raja <moraja@cisco.com>
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/entityownership/DistributedEntityOwnershipIntegrationTest.java

index 69cf4e0ff9a5255ea44234b77abb29100d31425a..9572b3dd6054282ac9e35ba4d2c9bade7393ab1f 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.controller.cluster.datastore.entityownership;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.AdditionalMatchers.or;
 import static org.mockito.Mockito.atMost;
@@ -305,17 +304,16 @@ public class DistributedEntityOwnershipIntegrationTest {
             Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS);
             if(!leaderEntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
                     !follower1EntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
-                    !follower2EntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner()) {
+                    !follower2EntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
+                    leaderChangeCaptor.getValue() != null && !leaderChangeCaptor.getValue().hasOwner() &&
+                    follower1ChangeCaptor.getValue() != null && !follower1ChangeCaptor.getValue().hasOwner() &&
+                    follower2ChangeCaptor.getValue() != null && !follower2ChangeCaptor.getValue().hasOwner()) {
                 passed = true;
                 break;
             }
         }
 
         assertTrue("No ownership change message was sent with hasOwner=false", passed);
-
-        assertFalse(leaderChangeCaptor.getAllValues().get(leaderChangeCaptor.getAllValues().size()-1).hasOwner());
-        assertFalse(follower1ChangeCaptor.getAllValues().get(follower1ChangeCaptor.getAllValues().size()-1).hasOwner());
-        assertFalse(follower2ChangeCaptor.getAllValues().get(follower2ChangeCaptor.getAllValues().size()-1).hasOwner());
     }
 
     private void verifyGetOwnershipState(DistributedEntityOwnershipService service, Entity entity,