diff options
| author | frsyuki <frsyuki@users.sourceforge.jp> | 2010-09-27 04:17:20 +0900 |
|---|---|---|
| committer | frsyuki <frsyuki@users.sourceforge.jp> | 2010-09-27 04:17:20 +0900 |
| commit | 002b86198c2a4db8aa6372f12fdaa055b9157e89 (patch) | |
| tree | a6aa19a634a9f1abe42798bbe28fdba85056009c /java/src/test | |
| parent | 7161a235f180fcb23e6451c6a10bfa5a55065eff (diff) | |
| download | msgpack-python-002b86198c2a4db8aa6372f12fdaa055b9157e89.tar.gz | |
java: adds ReflectionPacker and ReflectionTemplate
Diffstat (limited to 'java/src/test')
| -rw-r--r-- | java/src/test/java/org/msgpack/TestReflectionPackerTemplate.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/java/src/test/java/org/msgpack/TestReflectionPackerTemplate.java b/java/src/test/java/org/msgpack/TestReflectionPackerTemplate.java new file mode 100644 index 0000000..ddf88a0 --- /dev/null +++ b/java/src/test/java/org/msgpack/TestReflectionPackerTemplate.java @@ -0,0 +1,46 @@ +package org.msgpack; + +import static org.msgpack.Templates.*; + +import java.util.*; +import java.io.*; + +import org.junit.Test; +import static org.junit.Assert.*; + +public class TestReflectionPackerTemplate { + + public static class StringFieldClass { + public String s1; + public String s2; + public StringFieldClass() { } + } + + @Test + public void testPackConvert() throws Exception { + tString(); + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + + MessagePacker packer = ReflectionPacker.create(StringFieldClass.class); + + StringFieldClass src = new StringFieldClass(); + + src.s1 = "kumofs"; + src.s2 = "frsyuki"; + + packer.pack(new Packer(out), src); + + Template tmpl = ReflectionTemplate.create(StringFieldClass.class); + + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + + Object obj = tmpl.unpack(new Unpacker(in)); + assertEquals(obj.getClass(), StringFieldClass.class); + + StringFieldClass dst = (StringFieldClass)obj; + assertEquals(src.s1, dst.s1); + assertEquals(src.s2, dst.s2); + } +} + |
