### Question:
ConvertUtils { public static String toSize16Hex(final BigInteger number) { validateNotNegative(number); return String.format("%016x", number).toUpperCase(); } private  ConvertUtils(); static byte[] getBytes(final String hexString); static String toHex(final byte[] bytes); static String padHex(final String hex, int hexStringSize); static byte[] fromHexToBytes(String hexString); static Pair<String, Integer> xorValues(String originalValue, String newValue); static String fromHexToString(final String hexString); static String fromStringToHex(final String plainText); static String toSize16Hex(final BigInteger number); static void validateNotNegative(final BigInteger number); static void validateNotNegative(final long number); static String toString(final BigInteger number); static BigInteger toUnsignedBigInteger(long value); static BigInteger toUnsignedBigInteger(BigInteger value); static boolean isHexString(String input); static void validateIsHexString(String input); static void validateIsHexString(String input, Integer size); static String reverseHexString(String hex); static byte[] xor(byte[] b1, byte[] b2);  }### Answer:
@Test void toSize16Hex() { Assertions.assertEquals("000000000000000A", ConvertUtils.toSize16Hex(BigInteger.TEN)); Assertions.assertEquals( "00000000000186A0", ConvertUtils.toSize16Hex(BigInteger.valueOf(100000))); Assertions.assertEquals("0000000000000000", ConvertUtils.toSize16Hex(BigInteger.ZERO)); IllegalArgumentException error = Assertions.assertThrows( IllegalArgumentException.class, () -> ConvertUtils.toSize16Hex(BigInteger.valueOf(-5))); Assertions.assertEquals("BigInteger '-5' must not be negative", error.getMessage()); }