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%2Fcommands%2FAbstractRequestSuccessTest.java;h=b0038758c787e75033d67ddd72d339603e9a44fc;hb=HEAD;hp=f0bb6f325fb056faaff261cf1615edfca8981ccf;hpb=249ea1d3475edb5980ebb2044892009edce49654;p=controller.git diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractRequestSuccessTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractRequestSuccessTest.java index f0bb6f325f..b0038758c7 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractRequestSuccessTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractRequestSuccessTest.java @@ -7,8 +7,11 @@ */ package org.opendaylight.controller.cluster.access.commands; -import org.apache.commons.lang.SerializationUtils; -import org.junit.Assert; +import static java.util.Objects.requireNonNull; +import static org.junit.Assert.assertEquals; + +import org.apache.commons.lang3.SerializationUtils; +import org.eclipse.jdt.annotation.NonNull; import org.junit.Test; import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier; import org.opendaylight.controller.cluster.access.concepts.FrontendIdentifier; @@ -17,26 +20,35 @@ import org.opendaylight.controller.cluster.access.concepts.LocalHistoryIdentifie import org.opendaylight.controller.cluster.access.concepts.MemberName; import org.opendaylight.controller.cluster.access.concepts.RequestSuccess; -public abstract class AbstractRequestSuccessTest { - +public abstract class AbstractRequestSuccessTest> { private static final FrontendIdentifier FRONTEND_IDENTIFIER = FrontendIdentifier.create( MemberName.forName("test"), FrontendType.forName("one")); protected static final ClientIdentifier CLIENT_IDENTIFIER = ClientIdentifier.create(FRONTEND_IDENTIFIER, 0); - protected static final LocalHistoryIdentifier HISTORY_IDENTIFIER = new LocalHistoryIdentifier( - CLIENT_IDENTIFIER, 0); + protected static final LocalHistoryIdentifier HISTORY_IDENTIFIER = new LocalHistoryIdentifier(CLIENT_IDENTIFIER, 0); + + private final @NonNull T object; + private final int expectedSize; - protected abstract T object(); + protected AbstractRequestSuccessTest(final T object, final int expectedSize) { + this.object = requireNonNull(object); + this.expectedSize = expectedSize; + } - @SuppressWarnings("unchecked") @Test public void serializationTest() { - final Object deserialize = SerializationUtils.clone(object()); + final var bytes = SerializationUtils.serialize(object); + assertEquals(expectedSize, bytes.length); + + @SuppressWarnings("unchecked") + final var 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()); - doAdditionalAssertions((T) deserialize); + assertEquals(object.getTarget(), deserialize.getTarget()); + assertEquals(object.getVersion(), deserialize.getVersion()); + assertEquals(object.getSequence(), deserialize.getSequence()); + doAdditionalAssertions(deserialize); } - protected abstract void doAdditionalAssertions(final Object deserialize); + protected void doAdditionalAssertions(final T deserialize) { + // No-op by default + } }