private List<Map<String, Object>> createDataTableList(DataTable dataTable) { List<Map<String, Object>> rowList = new ArrayList<Map<String, Object>>(); for (TableRow row : dataTable.getRows()) { rowList.add(createRowMap(row)); } return rowList; }
return new DataTable(rows);
private static String renderedDataTable(DataTable dataTable) { StringBuffer renderedTable = new StringBuffer(); renderedTable.append(" ").append(System.lineSeparator()); TableRow header = dataTable.getRows().get(0); addRow(renderedTable, header.getCells()); addSeparatorCells(renderedTable, header.getCells().size()); for(int row = 1; row < dataTable.getRows().size(); row++) { addRow(renderedTable, dataTable.getRows().get(row).getCells()); } return renderedTable.toString(); }
static DataTable applyToArgument(Map<String, String> dataTableAsMap, Step fragmentStep) { DataTable dataTable = (DataTable) fragmentStep.getArgument(); List<TableRow> resultTableRows = new ArrayList<>(); for (TableRow row : dataTable.getRows()) { List<TableCell> resultCells = new ArrayList<>(); for (TableCell cell : row.getCells()) { TableCell resultCell = new TableCell(cell.getLocation(), applyToText(dataTableAsMap, cell.getValue())); resultCells.add(resultCell); } resultTableRows.add(new TableRow(row.getLocation(), resultCells)); } return new DataTable(resultTableRows); } }
private Object[] parameters(Matcher matcher, Node argument) { Object[] parameters = new Object[matcher.groupCount() + ((argument != null) ? 1 : 0)]; Class<?>[] types = method.getParameterTypes(); int limit = (argument != null) ? (parameters.length - 1) : parameters.length; for (int i = 0; i < limit; i++) { parameters[i] = castParameter(matcher.group(i + 1), types[i]); } if (argument != null) { if (argument.getClass().equals(DocString.class)) { DocString docString = (DocString) argument; parameters[parameters.length - 1] = docString.getContent(); } else if (argument.getClass().equals(DataTable.class)) { DataTable dataTable = (DataTable) argument; parameters[parameters.length - 1] = dataTable.getRows(); } } return parameters; }
static List<Map<String, String>> getDataTable(Step step) { List<Map<String, String>> dataTableAsListOfMaps = new ArrayList<>(); Node argument = step.getArgument(); if (!(argument instanceof DataTable)) { return dataTableAsListOfMaps; } DataTable dataTable = (DataTable) step.getArgument(); for (int i = FIRST_ROW_INDEX; i < dataTable.getRows().size(); i++) { Map<String, String> dataTableRow = new HashMap<>(); List<TableRow> rows = dataTable.getRows(); for (int j = 0; j < rows.get(HEADER_INDEX).getCells().size(); j++) { String key = rows.get(HEADER_INDEX).getCells().get(j).getValue(); List<TableCell> cells = dataTable.getRows().get(i).getCells(); String value = cells.get(j).getValue(); dataTableRow.put(key, value); } dataTableAsListOfMaps.add(dataTableRow); } return dataTableAsListOfMaps; }
private String stepToString(Step step) { String phrase = step.getKeyword() + step.getText(); if ((step.getArgument() != null) && (step.getArgument().getClass().isAssignableFrom(gherkin.ast.DataTable.class))) { gherkin.ast.DataTable table = (gherkin.ast.DataTable) step.getArgument(); String tableAsString = ""; for (TableRow row : table.getRows()) { tableAsString += "|"; tableAsString += row.getCells().stream() .map(TableCell::getValue) .collect(Collectors.joining(" | ")); tableAsString += "|" + System.lineSeparator(); } phrase = phrase + System.lineSeparator() + tableAsString.trim(); } return phrase; } }
private String stepToString(Step step) { String phrase = step.getKeyword() + step.getText(); if ((step.getArgument() != null) && (step.getArgument().getClass().isAssignableFrom(gherkin.ast.DataTable.class))) { gherkin.ast.DataTable table = (gherkin.ast.DataTable) step.getArgument(); String tableAsString = ""; for (TableRow row : table.getRows()) { tableAsString += "|"; tableAsString += row.getCells().stream() .map(TableCell::getValue) .collect(Collectors.joining(" | ")); tableAsString += "|" + System.lineSeparator(); } phrase = phrase + System.lineSeparator() + tableAsString.trim(); } return phrase; } }
/** * Converts a Gherkin data table to a Cucable data table. * * @param gherkinDataTable a {@link DataTable}. * @return a {@link com.trivago.vo.DataTable}. */ private com.trivago.vo.DataTable convertGherkinDataTableToCucableDataTable( final DataTable gherkinDataTable) { com.trivago.vo.DataTable dataTable = new com.trivago.vo.DataTable(); for (TableRow row : gherkinDataTable.getRows()) { List<TableCell> cells = row.getCells(); List<String> rowValues = new ArrayList<>(); for (TableCell cell : cells) { rowValues.add(cell.getValue()); } dataTable.addRow(rowValues); } return dataTable; }
if (argument instanceof DataTable) { DataTable t = (DataTable) argument; List<TableRow> rows = t.getRows(); List<PickleRow> newRows = new ArrayList<>(rows.size()); for (TableRow row : rows) {