Code Review
/
controller.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Initial support for multiple-shards
[controller.git]
/
opendaylight
/
md-sal
/
sal-distributed-datastore
/
src
/
test
/
java
/
org
/
opendaylight
/
controller
/
cluster
/
datastore
/
TransactionProxyTest.java
diff --git
a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java
b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java
index 8b70e00da923d92a806c59530c2111b5cfe87b7d..89cf7e7728f8bbaec5a28b4c389869ecb43f0391 100644
(file)
--- a/
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java
+++ b/
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java
@@
-7,7
+7,6
@@
import com.google.common.util.concurrent.ListenableFuture;
import junit.framework.Assert;
import org.junit.Test;
import org.opendaylight.controller.cluster.datastore.messages.CloseTransaction;
import junit.framework.Assert;
import org.junit.Test;
import org.opendaylight.controller.cluster.datastore.messages.CloseTransaction;
-import org.opendaylight.controller.cluster.datastore.messages.CreateTransactionReply;
import org.opendaylight.controller.cluster.datastore.messages.DeleteData;
import org.opendaylight.controller.cluster.datastore.messages.MergeData;
import org.opendaylight.controller.cluster.datastore.messages.ReadDataReply;
import org.opendaylight.controller.cluster.datastore.messages.DeleteData;
import org.opendaylight.controller.cluster.datastore.messages.MergeData;
import org.opendaylight.controller.cluster.datastore.messages.ReadDataReply;
@@
-17,27
+16,38
@@
import org.opendaylight.controller.cluster.datastore.utils.ActorContext;
import org.opendaylight.controller.cluster.datastore.utils.DoNothingActor;
import org.opendaylight.controller.cluster.datastore.utils.MessageCollectorActor;
import org.opendaylight.controller.cluster.datastore.utils.MockActorContext;
import org.opendaylight.controller.cluster.datastore.utils.DoNothingActor;
import org.opendaylight.controller.cluster.datastore.utils.MessageCollectorActor;
import org.opendaylight.controller.cluster.datastore.utils.MockActorContext;
+import org.opendaylight.controller.cluster.datastore.utils.MockConfiguration;
import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
+import org.opendaylight.controller.protobuff.messages.transaction.ShardTransactionMessages.CreateTransactionReply;
import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCohort;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
import java.util.List;
import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCohort;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
import java.util.List;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
public class TransactionProxyTest extends AbstractActorTest {
public class TransactionProxyTest extends AbstractActorTest {
+ private final ActorContext testContext =
+ new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)), new MockConfiguration());
+
+ private ExecutorService transactionExecutor =
+ Executors.newSingleThreadExecutor();
+
@Test
public void testRead() throws Exception {
final Props props = Props.create(DoNothingActor.class);
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
@Test
public void testRead() throws Exception {
final Props props = Props.create(DoNothingActor.class);
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
actorContext.setExecuteRemoteOperationResponse("message");
+
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
ListenableFuture<Optional<NormalizedNode<?, ?>>> read =
ListenableFuture<Optional<NormalizedNode<?, ?>>> read =
@@
-48,7
+58,7
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertFalse(normalizedNodeOptional.isPresent());
actorContext.setExecuteRemoteOperationResponse(new ReadDataReply(
Assert.assertFalse(normalizedNodeOptional.isPresent());
actorContext.setExecuteRemoteOperationResponse(new ReadDataReply(
-
ImmutableNodes.containerNode(TestModel.TEST_QNAME)
));
+
TestModel.createTestContext(),ImmutableNodes.containerNode(TestModel.TEST_QNAME)).toSerializable(
));
read = transactionProxy.read(TestModel.TEST_PATH);
read = transactionProxy.read(TestModel.TEST_PATH);
@@
-63,12
+73,12
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
ListenableFuture<Optional<NormalizedNode<?, ?>>> read =
ListenableFuture<Optional<NormalizedNode<?, ?>>> read =
@@
-79,7
+89,7
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertFalse(normalizedNodeOptional.isPresent());
actorContext.setExecuteRemoteOperationResponse(new ReadDataReply(
Assert.assertFalse(normalizedNodeOptional.isPresent());
actorContext.setExecuteRemoteOperationResponse(new ReadDataReply(
-
null
));
+
TestModel.createTestContext(), null).toSerializable(
));
read = transactionProxy.read(TestModel.TEST_PATH);
read = transactionProxy.read(TestModel.TEST_PATH);
@@
-94,17
+104,16
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
transactionProxy.write(TestModel.TEST_PATH,
ImmutableNodes.containerNode(TestModel.NAME_QNAME));
transactionProxy.write(TestModel.TEST_PATH,
ImmutableNodes.containerNode(TestModel.NAME_QNAME));
- ActorContext testContext = new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)));
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
@@
-117,7
+126,7
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertEquals(1, listMessages.size());
Assert.assertEquals(1, listMessages.size());
- Assert.assert
True(listMessages.get(0) instanceof WriteData
);
+ Assert.assert
Equals(WriteData.SERIALIZABLE_CLASS, listMessages.get(0).getClass()
);
}
@Test
}
@Test
@@
-126,17
+135,16
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
transactionProxy.merge(TestModel.TEST_PATH,
ImmutableNodes.containerNode(TestModel.NAME_QNAME));
transactionProxy.merge(TestModel.TEST_PATH,
ImmutableNodes.containerNode(TestModel.NAME_QNAME));
- ActorContext testContext = new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)));
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
@@
-149,7
+157,7
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertEquals(1, listMessages.size());
Assert.assertEquals(1, listMessages.size());
- Assert.assert
True(listMessages.get(0) instanceof MergeData
);
+ Assert.assert
Equals(MergeData.SERIALIZABLE_CLASS, listMessages.get(0).getClass()
);
}
@Test
}
@Test
@@
-158,16
+166,15
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
transactionProxy.delete(TestModel.TEST_PATH);
transactionProxy.delete(TestModel.TEST_PATH);
- ActorContext testContext = new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)));
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
@@
-180,7
+187,7
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertEquals(1, listMessages.size());
Assert.assertEquals(1, listMessages.size());
- Assert.assert
True(listMessages.get(0) instanceof DeleteData
);
+ Assert.assert
Equals(DeleteData.SERIALIZABLE_CLASS, listMessages.get(0).getClass()
);
}
@Test
}
@Test
@@
-189,12
+196,12
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef doNothingActorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef doNothingActorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(doNothingActorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(doNothingActorRef
));
actorContext.setExecuteRemoteOperationResponse(new ReadyTransactionReply(doNothingActorRef.path()));
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse(new ReadyTransactionReply(doNothingActorRef.path()));
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
DOMStoreThreePhaseCommitCohort ready = transactionProxy.ready();
DOMStoreThreePhaseCommitCohort ready = transactionProxy.ready();
@@
-213,12
+220,11
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef doNothingActorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef doNothingActorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
- new CreateTransactionReply(doNothingActorRef.path()));
+ actorContext.setExecuteShardOperationResponse( createTransactionReply(doNothingActorRef) );
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
Assert.assertNotNull(transactionProxy.getIdentifier());
}
Assert.assertNotNull(transactionProxy.getIdentifier());
}
@@
-229,16
+235,15
@@
public class TransactionProxyTest extends AbstractActorTest {
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
final ActorRef actorRef = getSystem().actorOf(props);
final MockActorContext actorContext = new MockActorContext(this.getSystem());
- actorContext.setExecuteShardOperationResponse(
new CreateTransactionReply(actorRef.path()
));
+ actorContext.setExecuteShardOperationResponse(
createTransactionReply(actorRef
));
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
actorContext.setExecuteRemoteOperationResponse("message");
TransactionProxy transactionProxy =
new TransactionProxy(actorContext,
- TransactionProxy.TransactionType.READ_ONLY);
+ TransactionProxy.TransactionType.READ_ONLY
, transactionExecutor, TestModel.createTestContext()
);
transactionProxy.close();
transactionProxy.close();
- ActorContext testContext = new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)));
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
Object messages = testContext
.executeLocalOperation(actorRef, "messages",
ActorContext.ASK_DURATION);
@@
-253,4
+258,11
@@
public class TransactionProxyTest extends AbstractActorTest {
Assert.assertTrue(listMessages.get(0) instanceof CloseTransaction);
}
Assert.assertTrue(listMessages.get(0) instanceof CloseTransaction);
}
+
+ private CreateTransactionReply createTransactionReply(ActorRef actorRef){
+ return CreateTransactionReply.newBuilder()
+ .setTransactionActorPath(actorRef.path().toString())
+ .setTransactionId("txn-1")
+ .build();
+ }
}
}