### Question:
BASE1Header extends BaseHeader { public int getFormat() { return header[2] & 0xFF; } BASE1Header();  BASE1Header(String source, String destination);  BASE1Header(String source, String destination, int format);  BASE1Header(byte[] header); int getHLen(); void setHFormat(int hformat); int getFormat(); void setRtCtl(int i); void setFlags(int i); void setStatus(int i); void setBatchNumber(int i); void setFormat(int format); void setLen(int len); void setDestination(String dest); void setSource(String src); String getSource(); String getDestination(); void swapDirection(); boolean isRejected(); String getRejectCode(); String formatHeader(); static final int LENGTH; }### Answer:
@Test public void testGetFormat() throws Throwable { int result = new BASE1Header().getFormat(); assertEquals(2, result, "result"); }
@Test public void testGetFormatThrowsArrayIndexOutOfBoundsException() throws Throwable { byte[] header = new byte[2]; BASE1Header bASE1Header = new BASE1Header("testBASE1HeaderSource", "testBASE1HeaderDestination"); bASE1Header.unpack(header); try { bASE1Header.getFormat(); fail("Expected ArrayIndexOutOfBoundsException to be thrown"); } catch (ArrayIndexOutOfBoundsException ex) { if (isJavaVersionAtMost(JAVA_10)) { assertEquals("2", ex.getMessage(), "ex.getMessage()"); } else { assertEquals("Index 2 out of bounds for length 2", ex.getMessage(), "ex.getMessage()"); } } }