BUG-5247: Fix Optional.get() on absent return
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / datastore / entityownership / DistributedEntityOwnershipIntegrationTest.java
index bad8647abfafa984caa78176043b460c2952fb44..0b4935734f474089eea1b553b1e27b082dba3349 100644 (file)
@@ -123,7 +123,7 @@ public class DistributedEntityOwnershipIntegrationTest {
         }
     }
 
-    private DistributedEntityOwnershipService newOwnershipService(DistributedDataStore datastore) {
+    private static DistributedEntityOwnershipService newOwnershipService(DistributedDataStore datastore) {
         DistributedEntityOwnershipService service = new DistributedEntityOwnershipService(datastore,
                 EntityOwnerSelectionStrategyConfig.newBuilder().build());
         service.start();
@@ -400,8 +400,11 @@ public class DistributedEntityOwnershipIntegrationTest {
         boolean passed = false;
         for(int i=0;i<100;i++) {
             Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS);
-            if(!leaderEntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
+            if(!leaderEntityOwnershipService.getOwnershipState(ENTITY1).isPresent() ||
+                    !leaderEntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
+                    follower1EntityOwnershipService.getOwnershipState(ENTITY1).isPresent() &&
                     !follower1EntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
+                    follower2EntityOwnershipService.getOwnershipState(ENTITY1).isPresent() &&
                     !follower2EntityOwnershipService.getOwnershipState(ENTITY1).get().hasOwner() &&
                     leaderChangeCaptor.getAllValues().size() > 0 && !leaderChangeCaptor.getValue().hasOwner() &&
                     leaderChangeCaptor.getAllValues().size() > 0 && !follower1ChangeCaptor.getValue().hasOwner() &&