X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fconcepts%2FAbstractRequestTest.java;h=48ceabef81cd87259df989c49ac9cf917350c6cb;hb=refs%2Fheads%2Fmaster;hp=d4378e9fd6072825c14f1d57f8f7a61cf78a5af9;hpb=c11dae56ca449d754db98fb8de194594c84d1f24;p=controller.git diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractRequestTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractRequestTest.java index d4378e9fd6..48ceabef81 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractRequestTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractRequestTest.java @@ -7,22 +7,37 @@ */ package org.opendaylight.controller.cluster.access.concepts; +import static java.util.Objects.requireNonNull; +import static org.hamcrest.CoreMatchers.containsString; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.Assert.assertEquals; + import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.actor.ExtendedActorSystem; import akka.serialization.JavaSerializer; import akka.testkit.TestProbe; import com.google.common.base.MoreObjects; -import org.apache.commons.lang.SerializationUtils; -import org.junit.Assert; +import org.apache.commons.lang3.SerializationUtils; import org.junit.Before; import org.junit.Test; -public abstract class AbstractRequestTest> { +public abstract class AbstractRequestTest> { private static final ActorSystem SYSTEM = ActorSystem.create("test"); protected static final ActorRef ACTOR_REF = TestProbe.apply(SYSTEM).ref(); + private static final int ACTOR_REF_SIZE = ACTOR_REF.path().toSerializationFormat().length(); + + private final T object; + private final int expectedSize; - protected abstract T object(); + protected AbstractRequestTest(final T object, final int baseSize) { + this.object = requireNonNull(object); + this.expectedSize = baseSize + ACTOR_REF_SIZE; + } + + protected final T object() { + return object; + } @Before public void setUp() { @@ -31,25 +46,27 @@ public abstract class AbstractRequestTest> { @Test public void getReplyToTest() { - Assert.assertEquals(ACTOR_REF, object().getReplyTo()); + assertEquals(ACTOR_REF, object.getReplyTo()); } @Test public void addToStringAttributesCommonTest() { - final MoreObjects.ToStringHelper result = object().addToStringAttributes(MoreObjects.toStringHelper(object())); - Assert.assertTrue(result.toString().contains("replyTo=" + ACTOR_REF)); + final var result = object.addToStringAttributes(MoreObjects.toStringHelper(object)); + assertThat(result.toString(), containsString("replyTo=" + ACTOR_REF)); } - @SuppressWarnings("unchecked") @Test public void serializationTest() { - final Object deserialize = SerializationUtils.clone(object()); + final byte[] bytes = SerializationUtils.serialize(object); + assertEquals(expectedSize, bytes.length); + @SuppressWarnings("unchecked") + final T deserialize = (T) SerializationUtils.deserialize(bytes); - Assert.assertEquals(object().getTarget(), ((T) deserialize).getTarget()); - Assert.assertEquals(object().getVersion(), ((T) deserialize).getVersion()); - Assert.assertEquals(object().getSequence(), ((T) deserialize).getSequence()); + assertEquals(object.getTarget(), deserialize.getTarget()); + assertEquals(object.getVersion(), deserialize.getVersion()); + assertEquals(object.getSequence(), deserialize.getSequence()); doAdditionalAssertions(deserialize); } - protected abstract void doAdditionalAssertions(Object deserialize); + protected abstract void doAdditionalAssertions(T deserialize); }