summaryrefslogtreecommitdiff
path: root/java/test
diff options
context:
space:
mode:
authorKazuki Ohta <kazuki.ohta@gmail.com>2010-04-17 21:16:32 +0900
committerKazuki Ohta <kazuki.ohta@gmail.com>2010-04-17 21:16:32 +0900
commit08b716c96d02e281cc096783cbe64932f70919ef (patch)
tree100eb309f7574da39d27266b06527c46db6cd8aa /java/test
parentb4b1f0a2c961529cdabd705b2581350323952f74 (diff)
downloadmsgpack-python-08b716c96d02e281cc096783cbe64932f70919ef.tar.gz
java: add TestPackUnpack for int
Diffstat (limited to 'java/test')
-rw-r--r--java/test/org/msgpack/TestPackUnpack.java52
1 files changed, 52 insertions, 0 deletions
diff --git a/java/test/org/msgpack/TestPackUnpack.java b/java/test/org/msgpack/TestPackUnpack.java
new file mode 100644
index 0000000..f8eeae7
--- /dev/null
+++ b/java/test/org/msgpack/TestPackUnpack.java
@@ -0,0 +1,52 @@
+package org.msgpack;
+
+import org.msgpack.*;
+import java.io.*;
+import java.util.*;
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+public class TestPackUnpack {
+ public Object unpackOne(ByteArrayOutputStream out) {
+ ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
+ Unpacker upk = new Unpacker(in);
+ Iterator<Object> it = upk.iterator();
+ assertEquals(true, it.hasNext());
+ Object obj = it.next();
+ assertEquals(false, it.hasNext());
+ return obj;
+ }
+
+ @Test
+ public void testInt() throws Exception {
+ testInt(0);
+ testInt(-1);
+ testInt(1);
+ testInt(Integer.MIN_VALUE);
+ testInt(Integer.MAX_VALUE);
+ Random rand = new Random();
+ for (int i = 0; i < 1000; i++)
+ testInt(rand.nextInt());
+ }
+ public void testInt(int val) throws Exception {
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ Packer pk = new Packer(out);
+ pk.pack(val);
+ Object obj = unpackOne(out);
+ int val2 = -1;
+ if (obj instanceof Byte)
+ val2 = ((Byte)obj).intValue();
+ else if (obj instanceof Integer)
+ val2 = ((Integer)obj).intValue();
+ else if (obj instanceof Short)
+ val2 = ((Short)obj).intValue();
+ else if (obj instanceof Long)
+ val2 = ((Long)obj).intValue();
+ else {
+ System.out.println("obj = " + obj.getClass());
+ assertTrue(false);
+ }
+ assertEquals(val, val2);
+ }
+};