package picard.util; import org.testng.Assert; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class UnsignedTypeUtilTest { @DataProvider(name="uByteData") public Object [][] uByteData() { return new Object [][]{ {(byte)0xFF, 255}, {(byte)0xFE, 254}, {(byte)0x80, 128}, {(byte)0x7F, 127}, {(byte)0x70, 112}, {(byte)0x02, 2}, {(byte)0x01, 1}, {(byte)0x00, 0}, }; } @DataProvider(name="uShortData") public Object [][] uShortData() { return new Object [][]{ {(short)0xFFFF, 65535}, {(short)0xFFFE, 65534}, {(short)0x8021, 32801}, {(short)0x7FFF, 32767}, {(short)0x5545, 21829}, {(short)0x0002, 2}, {(short)0x0001, 1}, {(short)0x0000, 0} }; } @DataProvider(name="uIntData") public Object [][] uIntData() { return new Object [][]{ {0xFFFFFFFF, 4294967295L}, {0xFFFFFFFE, 4294967294L}, {0x81014000, 2164342784L}, {0x7FFFFFFF, 2147483647L}, {0x10502100, 273686784L}, {0x00000002, 2L}, {0x00000001, 1L}, {0x00000000, 0L} }; } /** Convert an unsigned byte to a signed int */ @Test(dataProvider="uByteData") public void uByteToIntTest(final byte unsignedByte, final int expectedInt) { Assert.assertEquals(UnsignedTypeUtil.uByteToInt(unsignedByte), expectedInt); } /** Convert an unsigned byte to a signed short */ @Test(dataProvider="uByteData") public void uByteToShortTest(final byte unsignedByte, final int expectedInt) { final short expectedShort = (short) expectedInt; Assert.assertEquals(UnsignedTypeUtil.uByteToShort(unsignedByte), expectedShort); } /** Convert an unsigned short to an Int */ @Test(dataProvider="uShortData") public void uShortToIntTest(final short unsignedShort, final int expectedInt) { Assert.assertEquals(UnsignedTypeUtil.uShortToInt(unsignedShort), expectedInt); } /** Convert an unsigned int to a long */ @Test(dataProvider="uIntData") public void uIntToLongTest(final int unsignedInt, final long expectedLong) { Assert.assertEquals(UnsignedTypeUtil.uIntToLong(unsignedInt), expectedLong); } }