### Question:
QueryResultRows extends AbstractIterator<List<Object>> implements Iterable<List<Object>> { public static QueryResultRows empty(Session session) { return new QueryResultRows(session, Optional.empty(), ImmutableList.of(), null); } private  QueryResultRows(Session session, Optional<List<ColumnAndType>> columns, List<Page> pages, Consumer<Throwable> exceptionConsumer); boolean isEmpty(); Optional<List<Column>> getColumns(); @VisibleForTesting long getTotalRowsCount(); Optional<Long> getUpdateCount(); @Override Iterator<List<Object>> iterator(); @Override String toString(); static QueryResultRows empty(Session session); static Builder queryResultRowsBuilder(Session session);  }### Answer:
@Test public void shouldNotThrowWhenDataAndColumnsAreMissing() { QueryResultRows.empty(getSession()); }