package lsr.common; import static org.junit.Assert.assertEquals; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import org.junit.Test; public class PrimitivesByteArrayTest { private int[] integers = new int[] { Integer.MIN_VALUE, -1367309237, -23463, -65535, -65536, -256, -255, -1, 0, 1, 128, 255, 256, 65535, 65536, 32312343, 1000000000, Integer.MAX_VALUE}; @Test public void testIntegerToBytesAndFromBytes() { for (int i : integers) { byte[] bytes = PrimitivesByteArray.fromInt(i); assertEquals(4, bytes.length); int x = PrimitivesByteArray.toInt(bytes); assertEquals(i, x); } } @Test public void testIntegerToStreamAndFromStream() throws IOException { ByteArrayOutputStream os; ByteArrayInputStream is; for (int i : integers) { os = new ByteArrayOutputStream(); PrimitivesByteArray.fromInt(i, os); assertEquals(4, os.toByteArray().length); is = new ByteArrayInputStream(os.toByteArray()); int x = PrimitivesByteArray.toInt(is); assertEquals(0, is.available()); assertEquals(i, x); } } @Test public void testIntegerToStreamAndFromBytes() throws IOException { ByteArrayOutputStream os; for (int i : integers) { os = new ByteArrayOutputStream(); PrimitivesByteArray.fromInt(i, os); assertEquals(4, os.toByteArray().length); int x = PrimitivesByteArray.toInt(os.toByteArray()); assertEquals(i, x); } } @Test public void testIntegerToBytesAndFromStream() throws IOException { ByteArrayInputStream is; for (int i : integers) { byte[] bytes = PrimitivesByteArray.fromInt(i); assertEquals(4, bytes.length); is = new ByteArrayInputStream(bytes); int x = PrimitivesByteArray.toInt(is); assertEquals(0, is.available()); assertEquals(i, x); } } private long[] longs = new long[] { Long.MIN_VALUE, -919237074714678956L, Integer.MIN_VALUE, -1367309237, -23463, -65535, -65536, -256, -255, -1, 0, 1, 128, 255, 256, 65535, 65536, 32312343, 1000000000, 234858778534246778L, Integer.MAX_VALUE, Long.MAX_VALUE}; @Test public void testLongToBytesAndFromBytes() { for (long i : longs) { byte[] bytes = PrimitivesByteArray.fromLong(i); assertEquals(8, bytes.length); long x = PrimitivesByteArray.toLong(bytes); assertEquals(i, x); } } @Test public void testLongToStreamAndFromStream() throws IOException { ByteArrayOutputStream os; ByteArrayInputStream is; for (long i : longs) { os = new ByteArrayOutputStream(); PrimitivesByteArray.fromLong(i, os); assertEquals(8, os.toByteArray().length); is = new ByteArrayInputStream(os.toByteArray()); long x = PrimitivesByteArray.toLong(is); assertEquals(0, is.available()); assertEquals(i, x); } } @Test public void testLongToStreamAndFromBytes() throws IOException { ByteArrayOutputStream os; for (long i : longs) { os = new ByteArrayOutputStream(); PrimitivesByteArray.fromLong(i, os); assertEquals(8, os.toByteArray().length); long x = PrimitivesByteArray.toLong(os.toByteArray()); assertEquals(i, x); } } @Test public void testLongToBytesAndFromStream() throws IOException { ByteArrayInputStream is; for (long i : longs) { byte[] bytes = PrimitivesByteArray.fromLong(i); assertEquals(8, bytes.length); is = new ByteArrayInputStream(bytes); long x = PrimitivesByteArray.toLong(is); assertEquals(0, is.available()); assertEquals(i, x); } } }