From 75b6bc02e74ac98d4b05640ba4ca65f4a22ee43d Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Tue, 22 Jan 2008 02:50:57 +0000 Subject: OrderingList is now Serializable. --- .../com/amazon/carbonado/qe/TestOrderingList.java | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'src/test') diff --git a/src/test/java/com/amazon/carbonado/qe/TestOrderingList.java b/src/test/java/com/amazon/carbonado/qe/TestOrderingList.java index 8af7a2e..b1b951a 100644 --- a/src/test/java/com/amazon/carbonado/qe/TestOrderingList.java +++ b/src/test/java/com/amazon/carbonado/qe/TestOrderingList.java @@ -18,6 +18,8 @@ package com.amazon.carbonado.qe; +import java.io.*; + import java.util.List; import junit.framework.TestCase; @@ -222,4 +224,28 @@ public class TestOrderingList extends TestCase { assertEquals("+intProp", array[1]); assertEquals("+stringProp", array[2]); } + + public void testSerialization() throws Exception { + OrderingList list = OrderingList.emptyList(); + assertTrue(list == writeAndRead(list)); + + list = OrderingList.get(StorableTestBasic.class, + "+date", "-intProp", "~stringProp", "longProp", "+doubleProp"); + + assertTrue(list == writeAndRead(list)); + } + + private J writeAndRead(J obj) throws Exception { + ByteArrayOutputStream bout = new ByteArrayOutputStream(); + ObjectOutputStream oout = new ObjectOutputStream(bout); + oout.writeObject(obj); + oout.close(); + + ByteArrayInputStream bin = new ByteArrayInputStream(bout.toByteArray()); + ObjectInputStream oin = new ObjectInputStream(bin); + obj = (J) oin.readObject(); + oin.close(); + + return obj; + } } -- cgit v1.2.3