DataTable { public int getColumnsCount() { int result = 0; for (List<String> row : data) { result = Math.max(row.size(), result); } return result; } DataTable(int pageNumber);  DataTable(Collection<Integer> pageNumbers); DataTable addRow(String... dataRow); void addRow(List<String> dataRow); void addRows(List<List<String>> dataRows); List<String> headerRow(); List<String> headerRowIgnoreBlanks(); boolean hasSameHeaderAs(DataTable other); boolean hasSameHeaderBlanksIgnoredAs(DataTable other); boolean hasSameColumnCountAs(DataTable other); List<List<String>> getData(); TreeSet<Integer> getPageNumbers(); DataTable mergeWith(DataTable other); String getPagesAsString(); boolean hasData(); int getColumnsCount(); int getRowsCount(); List<String> getColumn(int c); List<String> getRow(int r); DataTable mergeColumns(int c1, int c2); void addBlankColumn(int index); @Override String toString();  }
@Test public void getColumnCount() { assertThat(dt.getColumnsCount(), is(3)); }