X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fconcepts%2FAbstractIdentifierTest.java;h=8fcc9fa1f5ffe1f7eabf3326f65982ac56ed6b64;hp=080e1e46b4854a74615e1ac8d9a08bd3066cb01c;hb=b394690b52324ae91124735c4ec19acc3389d4ec;hpb=bd7cfec55803f40773eda2412e7b93a3fefd3f9c diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractIdentifierTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractIdentifierTest.java index 080e1e46b4..8fcc9fa1f5 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractIdentifierTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/concepts/AbstractIdentifierTest.java @@ -26,6 +26,8 @@ public abstract class AbstractIdentifierTest { abstract T equalObject(); + abstract int expectedSize(); + @Test public final void testEquals() { assertTrue(object().equals(object())); @@ -40,22 +42,26 @@ public abstract class AbstractIdentifierTest { assertEquals(object().hashCode(), equalObject().hashCode()); } + + @Test + public final void testSerialization() throws Exception { + assertTrue(object().equals(copy(object()))); + assertTrue(object().equals(copy(equalObject()))); + assertFalse(differentObject().equals(copy(object()))); + } + @SuppressWarnings("unchecked") - private static T copy(T obj) throws IOException, ClassNotFoundException { + private T copy(final T obj) throws IOException, ClassNotFoundException { final ByteArrayOutputStream bos = new ByteArrayOutputStream(); try (ObjectOutputStream oos = new ObjectOutputStream(bos)) { oos.writeObject(obj); } - try (ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(bos.toByteArray()))) { + final byte[] bytes = bos.toByteArray(); + assertEquals(expectedSize(), bytes.length); + + try (ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(bytes))) { return (T) ois.readObject(); } } - - @Test - public final void testSerialization() throws Exception { - assertTrue(object().equals(copy(object()))); - assertTrue(object().equals(copy(equalObject()))); - assertFalse(differentObject().equals(copy(object()))); - } }