That one? If you are talking about the problem mentioned in your
initial message

> public void testGetBytesJI1() throws Exception {
>         byte[] buf = { 1, 2, 3, 4, 5, 6, 7, 8 };
>         SerialBlob serialBlob = new SerialBlob(buf);
>         byte [] data = serialBlob.getBytes(2, 1);
>         assertEquals(1, data.length);
>         assertEquals(2, data[0]);
>    }
> throws SerialException with message "Invalid arguments: position cannot be
> less that 1".

then +1 from me for following the spec since I don't understand RI's
behavior at all. Please note that even the exception message itself
contains typos :)

Regards,

2006/12/13, Andrew Zhang <[EMAIL PROTECTED]>:
Hey guys,

How about this one? It seems a bug of RI too.

Any comments? Thanks!

On 12/11/06, Andrew Zhang <[EMAIL PROTECTED]> wrote:
>
> Hi folks,
> SerialBlob spec points out that getBytes(long position, int length) should
> throw SerialException if the given starting position is out of bounds. But
> RI also throws SerialException when the position is in the bound of the
> array in some other cases. Consider following code:
>
> public void testGetBytesJI1() throws Exception {
>         byte[] buf = { 1, 2, 3, 4, 5, 6, 7, 8 };
>         SerialBlob serialBlob = new SerialBlob(buf);
>         byte [] data = serialBlob.getBytes(2, 1);
>         assertEquals(1, data.length);
>         assertEquals(2, data[0]);
>    }
>
> IMO, the starting position 2 and the length 1 are both valid. But RI
> throws SerialException with message "Invalid arguments: position cannot be
> less that 1". Is it a bug of RI? Or did I missing something? Any
> suggestions? Thanks in advance!
>
> --
> Best regards,
> Andrew Zhang
>



--
Best regards,
Andrew Zhang




--
Alexei Zakharov,
Intel ESSD

Reply via email to