private void CheckReadBytes(IndexInput input, int size, int pos)
{
// Just to see that "offset" is treated properly in readBytes(), we
// add an arbitrary offset at the beginning of the array
int offset = size % 10; // arbitrary
Buffer = ArrayUtil.Grow(Buffer, offset + size);
Assert.AreEqual(pos, input.FilePointer);
long left = TEST_FILE_LENGTH - input.FilePointer;
if (left <= 0)
{
return;
}
else if (left < size)
{
size = (int)left;
}
input.ReadBytes(Buffer, offset, size);
Assert.AreEqual(pos + size, input.FilePointer);
for (int i = 0; i < size; i++)
{
Assert.AreEqual(Byten(pos + i), (byte)Buffer[offset + i], "pos=" + i + " filepos=" + (pos + i));
}
}