Skip to content

Commit a2de0d2

Browse files
committed
random seeking
1 parent 8ad7174 commit a2de0d2

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

x-pack/plugin/searchable-snapshots/src/test/java/org/elasticsearch/index/store/SearchableSnapshotIndexInputTests.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ private byte[] randomReadAndSlice(IndexInput indexInput, int length) throws IOEx
115115
int readPos = (int) indexInput.getFilePointer();
116116
byte[] output = new byte[length];
117117
while (readPos < length) {
118-
switch (randomIntBetween(0, 3)) {
118+
switch (randomIntBetween(0, 4)) {
119119
case 0:
120120
// Read by one byte at a time
121121
output[readPos++] = indexInput.readByte();
@@ -146,6 +146,18 @@ private byte[] randomReadAndSlice(IndexInput indexInput, int length) throws IOEx
146146
indexInput.seek(readPos);
147147
assertEquals(readPos, indexInput.getFilePointer());
148148
break;
149+
case 4:
150+
// Seek at a random position and read a single byte,
151+
// then seek back to original position
152+
final int lastReadPos = readPos;
153+
readPos = randomIntBetween(0, length - 1);
154+
indexInput.seek(readPos);
155+
assertEquals(readPos, indexInput.getFilePointer());
156+
randomReadAndSlice(indexInput, 1);
157+
readPos = lastReadPos;
158+
indexInput.seek(readPos);
159+
assertEquals(readPos, indexInput.getFilePointer());
160+
break;
149161
default:
150162
fail();
151163
}

0 commit comments

Comments
 (0)