### Question:
ParquetTimestampUtils { public static DecodedTimestamp decode(Binary timestampBinary) { if (timestampBinary.length() != 12) { throw new PrestoException(NOT_SUPPORTED, "Parquet timestamp must be 12 bytes, actual " + timestampBinary.length()); } byte[] bytes = timestampBinary.getBytes(); long timeOfDayNanos = Longs.fromBytes(bytes[7], bytes[6], bytes[5], bytes[4], bytes[3], bytes[2], bytes[1], bytes[0]); verify(timeOfDayNanos >= 0 && timeOfDayNanos < NANOSECONDS_PER_DAY, "Invalid timeOfDayNanos: %s", timeOfDayNanos); int julianDay = Ints.fromBytes(bytes[11], bytes[10], bytes[9], bytes[8]); long epochSeconds = (julianDay - JULIAN_EPOCH_OFFSET_DAYS) * SECONDS_PER_DAY + timeOfDayNanos / NANOSECONDS_PER_SECOND; return new DecodedTimestamp(epochSeconds, (int) (timeOfDayNanos % NANOSECONDS_PER_SECOND)); } private  ParquetTimestampUtils(); static DecodedTimestamp decode(Binary timestampBinary);  }### Answer:
@Test public void testInvalidBinaryLength() { try { byte[] invalidLengthBinaryTimestamp = new byte[8]; decode(Binary.fromByteArray(invalidLengthBinaryTimestamp)); } catch (PrestoException e) { assertEquals(e.getErrorCode(), NOT_SUPPORTED.toErrorCode()); assertEquals(e.getMessage(), "Parquet timestamp must be 12 bytes, actual 8"); } }