mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-19 04:52:59 +01:00
java: add TestPackUnpack for int
This commit is contained in:
parent
b4b1f0a2c9
commit
08b716c96d
@ -14,6 +14,7 @@
|
|||||||
<property name="java.src.dir" value="${src.dir}/"/>
|
<property name="java.src.dir" value="${src.dir}/"/>
|
||||||
<property name="build.dir" value="${basedir}/build"/>
|
<property name="build.dir" value="${basedir}/build"/>
|
||||||
<property name="lib.dir" value="${basedir}/lib"/>
|
<property name="lib.dir" value="${basedir}/lib"/>
|
||||||
|
<property name="dist.dir" value="${basedir}/dist"/>
|
||||||
|
|
||||||
<property name="test.count" value="100"/>
|
<property name="test.count" value="100"/>
|
||||||
<property name="test.junit.output.format" value="plain"/>
|
<property name="test.junit.output.format" value="plain"/>
|
||||||
@ -64,6 +65,9 @@
|
|||||||
<fileset dir="${ivy.test.lib}">
|
<fileset dir="${ivy.test.lib}">
|
||||||
<include name="**/*.jar" />
|
<include name="**/*.jar" />
|
||||||
</fileset>
|
</fileset>
|
||||||
|
<fileset dir="${dist.dir}">
|
||||||
|
<include name="**/*.jar" />
|
||||||
|
</fileset>
|
||||||
</path>
|
</path>
|
||||||
<path id="test.java.classpath">
|
<path id="test.java.classpath">
|
||||||
<pathelement location="${test.java.classes}" />
|
<pathelement location="${test.java.classes}" />
|
||||||
@ -146,7 +150,7 @@
|
|||||||
</javac>
|
</javac>
|
||||||
</target>
|
</target>
|
||||||
<target name="jar" depends="compile">
|
<target name="jar" depends="compile">
|
||||||
<jar jarfile="dist/msgpack-0.0.1.jar" basedir="build" />
|
<jar jarfile="${dist.dir}/msgpack-0.0.1.jar" basedir="build" />
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<!-- test -->
|
<!-- test -->
|
||||||
@ -178,7 +182,7 @@
|
|||||||
<fail if="tests.failed">Tests Failed!</fail>
|
<fail if="tests.failed">Tests Failed!</fail>
|
||||||
</sequential>
|
</sequential>
|
||||||
</macrodef>
|
</macrodef>
|
||||||
<target name="compile-test" depends="ivy-retrieve-test,compile">
|
<target name="compile-test" depends="ivy-retrieve-test,jar">
|
||||||
<java-compiler dest="${test.java.classes}"
|
<java-compiler dest="${test.java.classes}"
|
||||||
classpath="test.java.classpath">
|
classpath="test.java.classpath">
|
||||||
<src path="${test.java.src.dir}/org" />
|
<src path="${test.java.src.dir}/org" />
|
||||||
|
52
java/test/org/msgpack/TestPackUnpack.java
Normal file
52
java/test/org/msgpack/TestPackUnpack.java
Normal file
@ -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);
|
||||||
|
}
|
||||||
|
};
|
Loading…
x
Reference in New Issue
Block a user