X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Futils%2FActorContextTest.java;h=a2794bde9cbfdcbe28ffd63819b193aef2db97ab;hb=204f45f8b3233dbea87e2c8065914f0d2a0ded07;hp=efe73d38ad526e9a4c312949c79e0d5d64b7c7f8;hpb=ffc46de334c8a903844b9f4aff73dc68b2401659;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/ActorContextTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/ActorContextTest.java index efe73d38ad..a2794bde9c 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/ActorContextTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/ActorContextTest.java @@ -31,7 +31,6 @@ import akka.util.Timeout; import com.google.common.base.Optional; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import com.google.common.util.concurrent.Uninterruptibles; import com.typesafe.config.ConfigFactory; import java.util.Arrays; import java.util.Map; @@ -43,6 +42,7 @@ import org.opendaylight.controller.cluster.datastore.AbstractActorTest; import org.opendaylight.controller.cluster.datastore.ClusterWrapper; import org.opendaylight.controller.cluster.datastore.DataStoreVersions; import org.opendaylight.controller.cluster.datastore.DatastoreContext; +import org.opendaylight.controller.cluster.datastore.DatastoreContextFactory; import org.opendaylight.controller.cluster.datastore.config.Configuration; import org.opendaylight.controller.cluster.datastore.exceptions.NoShardLeaderException; import org.opendaylight.controller.cluster.datastore.exceptions.NotInitializedException; @@ -54,6 +54,9 @@ import org.opendaylight.controller.cluster.datastore.messages.LocalShardFound; import org.opendaylight.controller.cluster.datastore.messages.LocalShardNotFound; import org.opendaylight.controller.cluster.datastore.messages.PrimaryShardInfo; import org.opendaylight.controller.cluster.datastore.messages.RemotePrimaryShardFound; +import org.opendaylight.controller.cluster.raft.utils.EchoActor; +import org.opendaylight.controller.cluster.raft.utils.MessageCollectorActor; +import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -374,9 +377,12 @@ public class ActorContextTest extends AbstractActorTest{ DatastoreContext newContext = DatastoreContext.newBuilder().operationTimeoutInSeconds(6). shardTransactionCommitTimeoutInSeconds(8).build(); - actorContext.setDatastoreContext(newContext); + DatastoreContextFactory mockContextFactory = mock(DatastoreContextFactory.class); + Mockito.doReturn(newContext).when(mockContextFactory).getBaseDatastoreContext(); - expectMsgClass(duration("5 seconds"), DatastoreContext.class); + actorContext.setDatastoreContext(mockContextFactory); + + expectMsgClass(duration("5 seconds"), DatastoreContextFactory.class); Assert.assertSame("getDatastoreContext", newContext, actorContext.getDatastoreContext()); @@ -392,7 +398,8 @@ public class ActorContextTest extends AbstractActorTest{ TestActorRef shardManager = TestActorRef.create(getSystem(), Props.create(MessageCollectorActor.class)); - DatastoreContext dataStoreContext = DatastoreContext.newBuilder().dataStoreType("config"). + DatastoreContext dataStoreContext = DatastoreContext.newBuilder(). + logicalStoreType(LogicalDatastoreType.CONFIGURATION). shardLeaderElectionTimeout(100, TimeUnit.MILLISECONDS).build(); final String expPrimaryPath = "akka://test-system/find-primary-shard"; @@ -434,7 +441,8 @@ public class ActorContextTest extends AbstractActorTest{ TestActorRef shardManager = TestActorRef.create(getSystem(), Props.create(MessageCollectorActor.class)); - DatastoreContext dataStoreContext = DatastoreContext.newBuilder().dataStoreType("config"). + DatastoreContext dataStoreContext = DatastoreContext.newBuilder(). + logicalStoreType(LogicalDatastoreType.CONFIGURATION). shardLeaderElectionTimeout(100, TimeUnit.MILLISECONDS).build(); final DataTree mockDataTree = Mockito.mock(DataTree.class); @@ -485,7 +493,8 @@ public class ActorContextTest extends AbstractActorTest{ TestActorRef shardManager = TestActorRef.create(getSystem(), Props.create(MessageCollectorActor.class)); - DatastoreContext dataStoreContext = DatastoreContext.newBuilder().dataStoreType("config"). + DatastoreContext dataStoreContext = DatastoreContext.newBuilder(). + logicalStoreType(LogicalDatastoreType.CONFIGURATION). shardLeaderElectionTimeout(100, TimeUnit.MILLISECONDS).build(); ActorContext actorContext = @@ -537,25 +546,9 @@ public class ActorContextTest extends AbstractActorTest{ actorContext.broadcast(new TestMessage()); - expectFirstMatching(shardActorRef1, TestMessage.class); - expectFirstMatching(shardActorRef2, TestMessage.class); + MessageCollectorActor.expectFirstMatching(shardActorRef1, TestMessage.class); + MessageCollectorActor.expectFirstMatching(shardActorRef2, TestMessage.class); }}; } - private T expectFirstMatching(ActorRef actor, Class clazz) { - int count = 5000 / 50; - for(int i = 0; i < count; i++) { - try { - T message = (T) MessageCollectorActor.getFirstMatching(actor, clazz); - if(message != null) { - return message; - } - } catch (Exception e) {} - - Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS); - } - - Assert.fail("Did not receive message of type " + clazz); - return null; - } }