Skip to content

Commit bdda010

Browse files
committed
Add more test cases for testSerializeDeserializeLargePositions
Added more test cases to `TestDeletionVector` to exercise the logic in serialize/deserialize on some of the `RoaringBitmap` contains more than one position.
1 parent 5b4b4aa commit bdda010

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/delete/TestDeletionVector.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,12 +208,20 @@ void testSerializeDeserializeLargePositions()
208208
{
209209
long key0Pos = 42;
210210
long key2Pos = (2L << 32) + 100;
211+
long key2Pos2 = (2L << 32) + 1000;
212+
long key2Pos3 = (2L << 32) + 10000;
211213
long key5Pos = (5L << 32) + 999;
214+
long key5Pos2 = (5L << 32) + 1000;
215+
long key5Pos3 = (5L << 32) + 1111;
212216

213217
DeletionVector original = DeletionVector.builder()
214218
.add(key0Pos)
215219
.add(key2Pos)
220+
.add(key2Pos2)
221+
.add(key2Pos3)
216222
.add(key5Pos)
223+
.add(key5Pos2)
224+
.add(key5Pos3)
217225
.build()
218226
.orElseThrow();
219227

@@ -223,10 +231,21 @@ void testSerializeDeserializeLargePositions()
223231
.build()
224232
.orElseThrow();
225233

226-
assertThat(deserialized.cardinality()).isEqualTo(3);
234+
assertThat(deserialized.cardinality()).isEqualTo(7);
227235
assertThat(deserialized.isRowDeleted(key0Pos)).isTrue();
236+
237+
assertThat(deserialized.isRowDeleted(key2Pos - 1)).isFalse();
228238
assertThat(deserialized.isRowDeleted(key2Pos)).isTrue();
239+
assertThat(deserialized.isRowDeleted(key2Pos2)).isTrue();
240+
assertThat(deserialized.isRowDeleted(key2Pos3)).isTrue();
241+
assertThat(deserialized.isRowDeleted(key2Pos3 + 1)).isFalse();
242+
243+
assertThat(deserialized.isRowDeleted(key5Pos - 1)).isFalse();
229244
assertThat(deserialized.isRowDeleted(key5Pos)).isTrue();
245+
assertThat(deserialized.isRowDeleted(key5Pos2)).isTrue();
246+
assertThat(deserialized.isRowDeleted(key5Pos3)).isTrue();
247+
assertThat(deserialized.isRowDeleted(key5Pos3 + 1)).isFalse();
248+
230249
assertThat(deserialized.isRowDeleted((1L << 32) + 100)).isFalse();
231250
}
232251

0 commit comments

Comments
 (0)