Bug 7521: Convert byte[] to ShardManagerSnapshot in DatastoreSnapshot
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / datastore / DataChangeListenerProxyTest.java
index b2ee4a49fee1b40ee86730da0044f5f987b090a9..d5416a0d5be8944c51b1dc382f7091691cf3032d 100644 (file)
@@ -1,96 +1,99 @@
+/*
+ * Copyright (c) 2014, 2015 Cisco Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
 
 package org.opendaylight.controller.cluster.datastore;
 
 import akka.actor.ActorRef;
 import akka.actor.Props;
-import junit.framework.Assert;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import org.junit.Assert;
 import org.junit.Test;
 import org.opendaylight.controller.cluster.datastore.messages.DataChanged;
 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.MockClusterWrapper;
 import org.opendaylight.controller.cluster.datastore.utils.MockConfiguration;
+import org.opendaylight.controller.cluster.raft.utils.DoNothingActor;
+import org.opendaylight.controller.cluster.raft.utils.MessageCollectorActor;
 import org.opendaylight.controller.md.cluster.datastore.model.CompositeModel;
-import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
 import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
 public class DataChangeListenerProxyTest extends AbstractActorTest {
 
-  private static class MockDataChangedEvent implements AsyncDataChangeEvent<YangInstanceIdentifier, NormalizedNode<?, ?>> {
-    Map<YangInstanceIdentifier,NormalizedNode<?,?>> createdData = new HashMap();
-    Map<YangInstanceIdentifier,NormalizedNode<?,?>> updatedData = new HashMap();
-    Map<YangInstanceIdentifier,NormalizedNode<?,?>> originalData = new HashMap();
-
-
-
-    @Override
-    public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getCreatedData() {
-      createdData.put(YangInstanceIdentifier.builder().build(), CompositeModel.createDocumentOne(CompositeModel.createTestContext()));
-      return createdData;
-    }
-
-    @Override
-    public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getUpdatedData() {
-      updatedData.put(YangInstanceIdentifier.builder().build(), CompositeModel.createTestContainer());
-      return updatedData;
-
-    }
-
-    @Override
-    public Set<YangInstanceIdentifier> getRemovedPaths() {
-      Set<YangInstanceIdentifier>ids = new HashSet();
-      ids.add( CompositeModel.TEST_PATH);
-      return ids;
-    }
-
-    @Override
-    public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getOriginalData() {
-      originalData.put(YangInstanceIdentifier.builder().build(), CompositeModel.createFamily());
-      return originalData;
-    }
-
-    @Override public NormalizedNode<?, ?> getOriginalSubtree() {
-      return CompositeModel.createFamily() ;
-    }
-
-    @Override public NormalizedNode<?, ?> getUpdatedSubtree() {
-      return CompositeModel.createTestContainer();
+    private static class MockDataChangedEvent
+            implements AsyncDataChangeEvent<YangInstanceIdentifier, NormalizedNode<?, ?>> {
+        Map<YangInstanceIdentifier,NormalizedNode<?,?>> createdData = new HashMap<>();
+        Map<YangInstanceIdentifier,NormalizedNode<?,?>> updatedData = new HashMap<>();
+        Map<YangInstanceIdentifier,NormalizedNode<?,?>> originalData = new HashMap<>();
+
+        @Override
+        public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getCreatedData() {
+            createdData.put(YangInstanceIdentifier.EMPTY, CompositeModel.createDocumentOne(
+                    CompositeModel.createTestContext()));
+            return createdData;
+        }
+
+        @Override
+        public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getUpdatedData() {
+            updatedData.put(YangInstanceIdentifier.EMPTY, CompositeModel.createTestContainer());
+            return updatedData;
+
+        }
+
+        @Override
+        public Set<YangInstanceIdentifier> getRemovedPaths() {
+            Set<YangInstanceIdentifier> ids = new HashSet<>();
+            ids.add(CompositeModel.TEST_PATH);
+            return ids;
+        }
+
+        @Override
+        public Map<YangInstanceIdentifier, NormalizedNode<?, ?>> getOriginalData() {
+            originalData.put(YangInstanceIdentifier.EMPTY, CompositeModel.createFamily());
+            return originalData;
+        }
+
+        @Override public NormalizedNode<?, ?> getOriginalSubtree() {
+            return CompositeModel.createFamily() ;
+        }
+
+        @Override public NormalizedNode<?, ?> getUpdatedSubtree() {
+            return CompositeModel.createTestContainer();
+        }
     }
-  }
 
 
-  @Test
+    @Test
     public void testOnDataChanged() throws Exception {
         final Props props = Props.create(MessageCollectorActor.class);
         final ActorRef actorRef = getSystem().actorOf(props);
 
-        DataChangeListenerProxy dataChangeListenerProxy =
-            new DataChangeListenerProxy(TestModel.createTestContext(),
+        DataChangeListenerProxy dataChangeListenerProxy = new DataChangeListenerProxy(
                 getSystem().actorSelection(actorRef.path()));
 
         dataChangeListenerProxy.onDataChanged(new MockDataChangedEvent());
 
         //Check if it was received by the remote actor
-        ActorContext
-            testContext = new ActorContext(getSystem(), getSystem().actorOf(Props.create(DoNothingActor.class)), new MockClusterWrapper(), new MockConfiguration());
+        ActorContext testContext = new ActorContext(getSystem(), getSystem().actorOf(
+                Props.create(DoNothingActor.class)), new MockClusterWrapper(), new MockConfiguration());
         Object messages = testContext
-            .executeLocalOperation(actorRef, "messages",
-                ActorContext.ASK_DURATION);
+            .executeOperation(actorRef, MessageCollectorActor.GET_ALL_MESSAGES);
 
         Assert.assertNotNull(messages);
 
         Assert.assertTrue(messages instanceof List);
 
-        List<Object> listMessages = (List<Object>) messages;
+        List<?> listMessages = (List<?>) messages;
 
         Assert.assertEquals(1, listMessages.size());