Introduce ShardStrategy and related code
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / datastore / ShardTest.java
index 934c064c3e3b807abe957f5136886e9291245a4a..b5a341d95c950dd859e755d135be2c3354388dbc 100644 (file)
@@ -8,6 +8,8 @@ import org.opendaylight.controller.cluster.datastore.messages.CreateTransactionC
 import org.opendaylight.controller.cluster.datastore.messages.CreateTransactionChainReply;
 import org.opendaylight.controller.cluster.datastore.messages.RegisterChangeListener;
 import org.opendaylight.controller.cluster.datastore.messages.RegisterChangeListenerReply;
+import org.opendaylight.controller.cluster.datastore.messages.UpdateSchemaContext;
+import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
 import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker;
 import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
 import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeListener;
@@ -18,10 +20,10 @@ import static org.junit.Assert.assertTrue;
 
 public class ShardTest extends AbstractActorTest{
   @Test
-  public void testOnReceiveCreateTransaction() throws Exception {
+  public void testOnReceiveCreateTransactionChain() throws Exception {
     new JavaTestKit(getSystem()) {{
       final Props props = Props.create(Shard.class);
-      final ActorRef subject = getSystem().actorOf(props, "testCreateTransaction");
+      final ActorRef subject = getSystem().actorOf(props, "testCreateTransactionChain");
 
       new Within(duration("1 seconds")) {
         protected void run() {
@@ -40,7 +42,7 @@ public class ShardTest extends AbstractActorTest{
             }
           }.get(); // this extracts the received message
 
-          assertTrue(out.matches("akka:\\/\\/test\\/user\\/testCreateTransaction\\/\\$.*"));
+          assertTrue(out.matches("akka:\\/\\/test\\/user\\/testCreateTransactionChain\\/\\$.*"));
           // Will wait for the rest of the 3 seconds
           expectNoMsg();
         }
@@ -59,6 +61,8 @@ public class ShardTest extends AbstractActorTest{
       new Within(duration("1 seconds")) {
         protected void run() {
 
+          subject.tell(new UpdateSchemaContext(TestModel.createTestContext()), getRef());
+
           subject.tell(new RegisterChangeListener(InstanceIdentifier.builder().build(), noOpDataChangeListener() , AsyncDataBroker.DataChangeScope.BASE), getRef());
 
           final String out = new ExpectMsg<String>("match hint") {