Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
5.14.5
-
None
Description
Consider this code
private void testEmptyBufferInput() throws JMSException { byte[] readList = new byte[BYTE_LIST.length - 1]; byte[] emptyList = {}; LOG.info("Streaming BYTE_LIST message testing EMPTY buffer input"); stream.writeBytes(emptyList); stream.reset(); LOG.info("Reading BYTE_LIST message testing EMPTY buffer input"); final int IS_EMPTY = 0; assertThat(stream.readBytes(readList)).isEqualTo(IS_EMPTY); }
The code above works with qpid-jms, but fails with activemq-client on the assertThat with error message java.lang.AssertionError: Not true that <-1> is equal to <0>. Judging by documentation http://docs.oracle.com/javaee/6/api/javax/jms/StreamMessage.html#readBytes(byte[]), I think that qpid-jms behavior is correct and what activemq-client does is a bug.
Attachments
Issue Links
- is related to
-
QPIDJMS-325 reading from empty buffer of a BytesMessage should return 0, not -1
- Closed