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%2FShardTransactionChainTest.java;h=d468af6664981d08ad603b1a841fefbdaccc8d47;hb=bc7b4edec3c868a14e0a0de3a3b8e1af2406448b;hp=1e681795cad92ce04d0181f2790f59e99e905c32;hpb=9340a64d067473032111bd8c3341ea6855cd9e4a;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionChainTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionChainTest.java index 1e681795ca..d468af6664 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionChainTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionChainTest.java @@ -9,7 +9,7 @@ import org.junit.Test; import org.opendaylight.controller.cluster.datastore.messages.CloseTransactionChain; import org.opendaylight.controller.cluster.datastore.messages.CloseTransactionChainReply; import org.opendaylight.controller.cluster.datastore.messages.CreateTransaction; -import org.opendaylight.controller.protobuff.messages.transaction.ShardTransactionMessages.CreateTransactionReply; +import org.opendaylight.controller.cluster.datastore.messages.CreateTransactionReply; import org.opendaylight.controller.md.cluster.datastore.model.TestModel; import org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore; @@ -19,7 +19,8 @@ public class ShardTransactionChainTest extends AbstractActorTest { private static ListeningExecutorService storeExecutor = MoreExecutors.listeningDecorator(MoreExecutors.sameThreadExecutor()); - private static final InMemoryDOMDataStore store = new InMemoryDOMDataStore("OPER", storeExecutor); + private static final InMemoryDOMDataStore store = new InMemoryDOMDataStore("OPER", storeExecutor, + MoreExecutors.sameThreadExecutor()); static { store.onGlobalContextUpdated(TestModel.createTestContext()); @@ -30,27 +31,29 @@ public class ShardTransactionChainTest extends AbstractActorTest { final Props props = ShardTransactionChain.props(store.createTransactionChain(), TestModel.createTestContext()); final ActorRef subject = getSystem().actorOf(props, "testCreateTransaction"); - new Within(duration("1 seconds")) { + new Within(duration("1 seconds")) { + @Override protected void run() { - subject.tell(new CreateTransaction("txn-1"), getRef()); + subject.tell(new CreateTransaction("txn-1", TransactionProxy.TransactionType.READ_ONLY.ordinal() ).toSerializable(), getRef()); - final String out = new ExpectMsg("match hint") { + final String out = new ExpectMsg(duration("1 seconds"), "match hint") { // do not put code outside this method, will run afterwards + @Override protected String match(Object in) { - if (in instanceof CreateTransactionReply) { - return ((CreateTransactionReply) in).getTransactionActorPath().toString(); - } else { + if (in.getClass().equals(CreateTransactionReply.SERIALIZABLE_CLASS)) { + return CreateTransactionReply.fromSerializable(in).getTransactionPath(); + }else{ throw noMatch(); } } }.get(); // this extracts the received message - assertEquals("Unexpected transaction path " + out, - "akka://test/user/testCreateTransaction/shard-txn-1", - out); + assertEquals("Unexpected transaction path " + out, + "akka://test/user/testCreateTransaction/shard-txn-1", + out); - // Will wait for the rest of the 3 seconds + // Will wait for the rest of the 3 seconds expectNoMsg(); } @@ -66,14 +69,16 @@ public class ShardTransactionChainTest extends AbstractActorTest { final ActorRef subject = getSystem().actorOf(props, "testCloseTransactionChain"); new Within(duration("1 seconds")) { + @Override protected void run() { - subject.tell(new CloseTransactionChain(), getRef()); + subject.tell(new CloseTransactionChain().toSerializable(), getRef()); - final String out = new ExpectMsg("match hint") { + final String out = new ExpectMsg(duration("1 seconds"), "match hint") { // do not put code outside this method, will run afterwards + @Override protected String match(Object in) { - if (in instanceof CloseTransactionChainReply) { + if (in.getClass().equals(CloseTransactionChainReply.SERIALIZABLE_CLASS)) { return "match"; } else { throw noMatch();