nkv(tm, "r000", 4, false, "v4");
nkv(tm, "r000", 3, false, "v3");
nkv(tm, "r000", 2, true, "v2");
nkv(tm, "r000", 1, false, "v1");
DeletingIterator it = new DeletingIterator(new SortedMapIterator(tm), false);
// SEEK two keys before delete
it.seek(nr("r000", 4), EMPTY_COL_FAMS, false);
assertTrue(it.hasTop());
assertEquals(nk("r000", 4), it.getTopKey());
assertEquals("v4", it.getTopValue().toString());
it.next();
assertTrue(it.hasTop());
assertEquals(nk("r000", 3), it.getTopKey());
assertEquals("v3", it.getTopValue().toString());
it.next();
assertFalse(it.hasTop());
// SEEK passed delete
it.seek(nr("r000", 1), EMPTY_COL_FAMS, false);
assertFalse(it.hasTop());
// SEEK to delete
it.seek(nr("r000", 2), EMPTY_COL_FAMS, false);
assertFalse(it.hasTop());
// SEEK right before delete
it.seek(nr("r000", 3), EMPTY_COL_FAMS, false);
assertTrue(it.hasTop());
assertEquals(nk("r000", 3), it.getTopKey());
assertEquals("v3", it.getTopValue().toString());
it.next();
assertFalse(it.hasTop());
}