### Question:
DataConvertingUtility { public static Long readVariableULong(byte[] data) { if (data == null) { return null; } Long val = 0L; for (byte b : data) { val <<= 8; val += (b & 0xFF); } return val; } private  DataConvertingUtility(); static Long readVariableULong(byte[] data); static Map<String, String> parseUriQuery(String uriQuery); static Map<String, List<String>> parseUriQueryMult(String uriQuery); static byte[] convertVariableUInt(long value); static String decodeToString(byte[] byteString); static byte[] encodeString(String payload); static byte[] intToByteArray(int value); static byte[] combine(byte[] arr1, byte[] arr2);  }### Answer:
@Test public void readVariableULongTest() throws Exception { assertEquals(1, readVariableULong(new byte[]{1}).longValue()); assertEquals(0xf1, readVariableULong(new byte[]{(byte) 0xf1}).longValue()); assertTrue(readVariableULong(new byte[]{(byte) 0xf1}) > 0); assertEquals(0x0101, readVariableULong(new byte[]{1, 1}).longValue()); assertEquals(0x010101, readVariableULong(new byte[]{1, 1, 1}).longValue()); assertEquals(0x01010101, readVariableULong(new byte[]{1, 1, 1, 1}).longValue()); assertEquals(0xff0101, readVariableULong(new byte[]{((byte) 0xff), 1, 1}).longValue()); assertNull(readVariableULong(null)); }