harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Zhang" <zhanghuang...@gmail.com>
Subject Re: [classlib][sql] A RI's bug of SerialBlob.getBytes(long position, int length)?
Date Thu, 14 Dec 2006 13:01:39 GMT
On 12/14/06, Alexei Zakharov <alexei.zakharov@gmail.com> wrote:
>
> That one? If you are talking about the problem mentioned in your
> initial message


Sorry... we've agreed that the behaviour of SerialBlob.position(byte[],
long) is a bug in another thread. Yes, "This one" means the initial message
-- getByte(long, int) method. But seldom people reponsed this thread to
regard it as a bug. :)

> > 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 :)


LOL, I just noticed "less that 1"...

Regards,
>
> 2006/12/13, Andrew Zhang <zhanghuangzhu@gmail.com>:
> > Hey guys,
> >
> > How about this one? It seems a bug of RI too.
> >
> > Any comments? Thanks!
> >
> > On 12/11/06, Andrew Zhang <zhanghuangzhu@gmail.com> 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
>



-- 
Best regards,
Andrew Zhang

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message