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%2Factors%2FShardSnapshotActorTest.java;h=0a5c40d29d3ae6b96f5765bfd549e10aff177a70;hb=HEAD;hp=4ba5e02f33b66d38b90995646672fdbff81267af;hpb=9bce68c4712d00951d121be68b09578bc6e09151;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/actors/ShardSnapshotActorTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/actors/ShardSnapshotActorTest.java index 4ba5e02f33..0a5c40d29d 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/actors/ShardSnapshotActorTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/actors/ShardSnapshotActorTest.java @@ -9,56 +9,56 @@ package org.opendaylight.controller.cluster.datastore.actors; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; import akka.actor.ActorRef; import akka.testkit.javadsl.TestKit; -import java.io.ByteArrayInputStream; +import com.google.common.io.ByteSource; import java.io.ByteArrayOutputStream; import java.io.ObjectInputStream; +import java.time.Duration; import java.util.Optional; import org.junit.Test; import org.opendaylight.controller.cluster.datastore.AbstractActorTest; import org.opendaylight.controller.cluster.datastore.persisted.MetadataShardDataTreeSnapshot; import org.opendaylight.controller.cluster.datastore.persisted.ShardDataTreeSnapshot; import org.opendaylight.controller.cluster.datastore.persisted.ShardSnapshotState; +import org.opendaylight.controller.cluster.io.InputOutputStreamFactory; import org.opendaylight.controller.cluster.raft.base.messages.CaptureSnapshotReply; import org.opendaylight.controller.md.cluster.datastore.model.TestModel; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; public class ShardSnapshotActorTest extends AbstractActorTest { - private static final NormalizedNode DATA = ImmutableNodes.containerNode(TestModel.TEST_QNAME); + private static final InputOutputStreamFactory STREAM_FACTORY = InputOutputStreamFactory.simple(); + + private static final NormalizedNode DATA = ImmutableNodes.containerNode(TestModel.TEST_QNAME); private static void testSerializeSnapshot(final String testName, final ShardDataTreeSnapshot snapshot, final boolean withInstallSnapshot) throws Exception { final TestKit kit = new TestKit(getSystem()); - final ActorRef snapshotActor = getSystem().actorOf(ShardSnapshotActor.props(), testName); + final ActorRef snapshotActor = getSystem().actorOf(ShardSnapshotActor.props(STREAM_FACTORY), testName); kit.watch(snapshotActor); - final NormalizedNode expectedRoot = snapshot.getRootNode().get(); + final NormalizedNode expectedRoot = snapshot.getRootNode().orElseThrow(); ByteArrayOutputStream installSnapshotStream = withInstallSnapshot ? new ByteArrayOutputStream() : null; ShardSnapshotActor.requestSnapshot(snapshotActor, snapshot, Optional.ofNullable(installSnapshotStream), kit.getRef()); - final CaptureSnapshotReply reply = kit.expectMsgClass(kit.duration("3 seconds"), CaptureSnapshotReply.class); + final CaptureSnapshotReply reply = kit.expectMsgClass(Duration.ofSeconds(3), CaptureSnapshotReply.class); assertNotNull("getSnapshotState is null", reply.getSnapshotState()); assertEquals("SnapshotState type", ShardSnapshotState.class, reply.getSnapshotState().getClass()); assertEquals("Snapshot", snapshot, ((ShardSnapshotState)reply.getSnapshotState()).getSnapshot()); if (installSnapshotStream != null) { final ShardDataTreeSnapshot deserialized; - try (ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream( - installSnapshotStream.toByteArray()))) { - deserialized = ShardDataTreeSnapshot.deserialize(in); + try (ObjectInputStream in = new ObjectInputStream(STREAM_FACTORY.createInputStream( + ByteSource.wrap(installSnapshotStream.toByteArray())))) { + deserialized = ShardDataTreeSnapshot.deserialize(in).getSnapshot(); } assertEquals("Deserialized snapshot type", snapshot.getClass(), deserialized.getClass()); - - final Optional> maybeNode = deserialized.getRootNode(); - assertTrue("isPresent", maybeNode.isPresent()); - assertEquals("Root node", expectedRoot, maybeNode.get()); + assertEquals("Root node", Optional.of(expectedRoot), deserialized.getRootNode()); } }