### Question:
JmsMapMessage extends JmsMessage implements MapMessage { @Override public byte getByte(String name) throws JMSException { initializeReading(); Object value = map.get(name); if (value == null) { return 0; } if (value instanceof Byte) { return ((Byte) value).byteValue(); } if (value instanceof String) { return Byte.valueOf(value.toString()).byteValue(); } else { throw new MessageFormatException(" cannot read a byte from " + value.getClass().getName()); } } JmsMapMessage(JmsMessageFacade facade); @Override JmsMessage copy(); void copy(JmsMapMessage other); @Override void clearBody(); @Override boolean getBoolean(String name); @Override byte getByte(String name); @Override short getShort(String name); @Override char getChar(String name); @Override int getInt(String name); @Override long getLong(String name); @Override float getFloat(String name); @Override double getDouble(String name); @Override String getString(String name); @Override byte[] getBytes(String name); @Override Object getObject(String name); @Override Enumeration<String> getMapNames(); @Override void setBoolean(String name, boolean value); @Override void setByte(String name, byte value); @Override void setShort(String name, short value); @Override void setChar(String name, char value); @Override void setInt(String name, int value); @Override void setLong(String name, long value); @Override void setFloat(String name, float value); @Override void setDouble(String name, double value); @Override void setString(String name, String value); @Override void setBytes(String name, byte[] value); @Override void setBytes(String name, byte[] value, int offset, int length); @Override void setObject(String name, Object value); @Override boolean itemExists(String name); @Override String toString();  }### Answer:
@Test public void testGetByte() throws JMSException { JmsMapMessage msg = factory.createMapMessage(); msg.setByte(name.getMethodName(), (byte) 1); msg = (JmsMapMessage) msg.copy(); assertTrue(msg.getByte(name.getMethodName()) == (byte) 1); }