summaryrefslogtreecommitdiff
path: root/src/test/java/com/amazon
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/com/amazon')
-rw-r--r--src/test/java/com/amazon/carbonado/qe/TestOrderingList.java26
1 files changed, 26 insertions, 0 deletions
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<StorableTestBasic> list = OrderingList.emptyList();
+ assertTrue(list == writeAndRead(list));
+
+ list = OrderingList.get(StorableTestBasic.class,
+ "+date", "-intProp", "~stringProp", "longProp", "+doubleProp");
+
+ assertTrue(list == writeAndRead(list));
+ }
+
+ private <J> 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;
+ }
}