X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FShardTransactionTest.java;h=314f497a2377174f9857e003eaca4c588eebb609;hp=1daec833e172edf6d688eb5de35d869a72b857b1;hb=4c1877fd363bf0663c91b85b2bf5be64d22e56aa;hpb=c3ea6ff9c64bcd51e46767a18a1370a2b3819dca diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java index 1daec833e1..314f497a23 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java @@ -19,12 +19,10 @@ import akka.actor.Status.Failure; import akka.actor.Terminated; import akka.testkit.JavaTestKit; import akka.testkit.TestActorRef; -import java.util.Collections; import java.util.concurrent.TimeUnit; import org.junit.Test; import org.mockito.InOrder; import org.mockito.Mockito; -import org.opendaylight.controller.cluster.datastore.ShardWriteTransaction.GetCompositeModificationReply; import org.opendaylight.controller.cluster.datastore.exceptions.UnknownMessageException; import org.opendaylight.controller.cluster.datastore.identifiers.ShardIdentifier; import org.opendaylight.controller.cluster.datastore.jmx.mbeans.shard.ShardStats; @@ -46,10 +44,8 @@ import org.opendaylight.controller.cluster.datastore.messages.ReadyTransaction; import org.opendaylight.controller.cluster.datastore.messages.ReadyTransactionReply; import org.opendaylight.controller.cluster.datastore.messages.WriteData; import org.opendaylight.controller.cluster.datastore.messages.WriteDataReply; -import org.opendaylight.controller.cluster.datastore.modification.CompositeModification; import org.opendaylight.controller.cluster.datastore.modification.DeleteModification; import org.opendaylight.controller.cluster.datastore.modification.MergeModification; -import org.opendaylight.controller.cluster.datastore.modification.Modification; import org.opendaylight.controller.cluster.datastore.modification.WriteModification; import org.opendaylight.controller.cluster.datastore.node.NormalizedNodeToNodeCodec; import org.opendaylight.controller.cluster.datastore.node.NormalizedNodeToNodeCodec.Encoded; @@ -61,6 +57,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; +import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.model.api.SchemaContext; @@ -80,13 +77,13 @@ public class ShardTransactionTest extends AbstractActorTest { private final ShardStats shardStats = new ShardStats(SHARD_IDENTIFIER.toString(), "DataStore"); - private final ShardDataTree store = new ShardDataTree(testSchemaContext); + private final ShardDataTree store = new ShardDataTree(testSchemaContext, TreeType.OPERATIONAL); private int txCounter = 0; private ActorRef createShard() { - return getSystem().actorOf(Shard.props(SHARD_IDENTIFIER, - Collections.emptyMap(), datastoreContext, TestModel.createTestContext())); + return getSystem().actorOf(Shard.builder().id(SHARD_IDENTIFIER).datastoreContext(datastoreContext). + schemaContext(TestModel.createTestContext()).props()); } private ActorRef newTransactionActor(TransactionType type, AbstractShardDataTreeTransaction transaction, String name) { @@ -250,19 +247,6 @@ public class ShardTransactionTest extends AbstractActorTest { }}; } - private void assertModification(final ActorRef subject, - final Class modificationType) { - new JavaTestKit(getSystem()) {{ - subject.tell(new ShardWriteTransaction.GetCompositedModification(), getRef()); - - CompositeModification compositeModification = expectMsgClass(duration("3 seconds"), - GetCompositeModificationReply.class).getModification(); - - assertTrue(compositeModification.getModifications().size() == 1); - assertEquals(modificationType, compositeModification.getModifications().get(0).getClass()); - }}; - } - @Test public void testOnReceiveWriteData() { new JavaTestKit(getSystem()) {{ @@ -275,8 +259,6 @@ public class ShardTransactionTest extends AbstractActorTest { expectMsgClass(duration("5 seconds"), ShardTransactionMessages.WriteDataReply.class); - assertModification(transaction, WriteModification.class); - // unserialized write transaction.tell(new WriteData(TestModel.TEST_PATH, ImmutableNodes.containerNode(TestModel.TEST_QNAME), DataStoreVersions.CURRENT_VERSION), @@ -301,8 +283,6 @@ public class ShardTransactionTest extends AbstractActorTest { transaction.tell(serialized, getRef()); expectMsgClass(duration("5 seconds"), ShardTransactionMessages.WriteDataReply.class); - - assertModification(transaction, WriteModification.class); }}; } @@ -318,8 +298,6 @@ public class ShardTransactionTest extends AbstractActorTest { expectMsgClass(duration("5 seconds"), ShardTransactionMessages.MergeDataReply.class); - assertModification(transaction, MergeModification.class); - //unserialized merge transaction.tell(new MergeData(TestModel.TEST_PATH, ImmutableNodes.containerNode(TestModel.TEST_QNAME), DataStoreVersions.CURRENT_VERSION), @@ -344,8 +322,6 @@ public class ShardTransactionTest extends AbstractActorTest { transaction.tell(serialized, getRef()); expectMsgClass(duration("5 seconds"), ShardTransactionMessages.MergeDataReply.class); - - assertModification(transaction, MergeModification.class); }}; } @@ -360,8 +336,6 @@ public class ShardTransactionTest extends AbstractActorTest { expectMsgClass(duration("5 seconds"), ShardTransactionMessages.DeleteDataReply.class); - assertModification(transaction, DeleteModification.class); - //unserialized transaction.tell(new DeleteData(TestModel.TEST_PATH, DataStoreVersions.CURRENT_VERSION), getRef()); @@ -399,25 +373,6 @@ public class ShardTransactionTest extends AbstractActorTest { BatchedModificationsReply reply = expectMsgClass(duration("5 seconds"), BatchedModificationsReply.class); assertEquals("getNumBatched", 3, reply.getNumBatched()); - JavaTestKit verification = new JavaTestKit(getSystem()); - transaction.tell(new ShardWriteTransaction.GetCompositedModification(), verification.getRef()); - - CompositeModification compositeModification = verification.expectMsgClass(duration("5 seconds"), - GetCompositeModificationReply.class).getModification(); - - assertEquals("CompositeModification size", 3, compositeModification.getModifications().size()); - - WriteModification write = (WriteModification)compositeModification.getModifications().get(0); - assertEquals("getPath", writePath, write.getPath()); - assertEquals("getData", writeData, write.getData()); - - MergeModification merge = (MergeModification)compositeModification.getModifications().get(1); - assertEquals("getPath", mergePath, merge.getPath()); - assertEquals("getData", mergeData, merge.getData()); - - DeleteModification delete = (DeleteModification)compositeModification.getModifications().get(2); - assertEquals("getPath", deletePath, delete.getPath()); - InOrder inOrder = Mockito.inOrder(mockModification); inOrder.verify(mockModification).write(writePath, writeData); inOrder.verify(mockModification).merge(mergePath, mergeData);