@Test
public void testRetrieveAllColumns() throws Exception {

  // setup the table
  List<CKeyValue> values = new ArrayList<CKeyValue>();
  values.add(new CKeyValue(new byte[] { 1 }, new byte[] { 2 },
      new byte[] { 3 }, new byte[] { 4 }));
  values.add(new CKeyValue(new byte[] { 2 }, new byte[] { 2 },
      new byte[] { 3 }, new byte[] { 5 }));
  values.add(new CKeyValue(new byte[] { 3 }, new byte[] { 2 },
      new byte[] { 3 }, new byte[] { 6 }));
  values.add(new CKeyValue(new byte[] { 4 }, new byte[] { 2 },
      new byte[] { 3 }, new byte[] { 7 }));
  InMemoryTable t1 = new InMemoryTable();
  t1.put(new Put(values));
  // test that we pull back any and all columns
  SeekingCurrentIterator iter = new RetrieveColumns(new KeyOnlyFilter(t1), t1)
      .getResultIterator();
  assertTrue(iter.hasNext());
  assertCount(iter, 4, 4);
}