use of com.google.api.ads.admanager.axis.v202205.Row in project googleads-java-lib by googleads.
the class PqlTest method testCombineResultSet_badColumns.
@Test
public void testCombineResultSet_badColumns() {
Row row1 = new Row();
row1.setValues(new Value[] { textValue1, booleanValue1, numberValue1 });
Row row2 = new Row();
row2.setValues(new Value[] { textValue2, booleanValue2, numberValue2 });
Row row3 = new Row();
row3.setValues(new Value[] { textValue3, booleanValue3 });
ResultSet resultSet1 = new ResultSet();
resultSet1.setColumnTypes(new ColumnType[] { column1, column2, column3 });
resultSet1.setRows(new Row[] { row1, row2 });
ResultSet resultSet2 = new ResultSet();
resultSet2.setColumnTypes(new ColumnType[] { column1, column2 });
resultSet2.setRows(new Row[] { row3 });
thrown.expect(IllegalArgumentException.class);
Pql.combineResultSets(resultSet1, resultSet2);
}
use of com.google.api.ads.admanager.axis.v202205.Row in project googleads-java-lib by googleads.
the class PqlTest method testGetRowStringValues.
@Test
public void testGetRowStringValues() {
Row row = new Row();
row.setValues(new Value[] { textValue1, booleanValue1, numberValue2, numberSetValue });
assertEquals(Lists.newArrayList(new String[] { "value1", "false", "1.02", "1,-1" }), Pql.getRowStringValues(row));
}
use of com.google.api.ads.admanager.axis.v202205.Row in project googleads-java-lib by googleads.
the class PqlTest method testCombineResultSet.
@Test
public void testCombineResultSet() {
Row row1 = new Row();
row1.getValues().addAll(Lists.newArrayList(textValue1, booleanValue1, numberValue1));
Row row2 = new Row();
row2.getValues().addAll(Lists.newArrayList(textValue2, booleanValue2, numberValue2));
Row row3 = new Row();
row3.getValues().addAll(Lists.newArrayList(textValue3, booleanValue3, numberValue3));
ResultSet resultSet1 = new ResultSet();
resultSet1.getColumnTypes().addAll(Lists.newArrayList(column1, column2, column3));
resultSet1.getRows().addAll(Lists.newArrayList(row1, row2));
ResultSet resultSet2 = new ResultSet();
resultSet2.getColumnTypes().addAll(Lists.newArrayList(column1, column2, column3));
resultSet2.getRows().addAll(Lists.newArrayList(row3));
ResultSet combinedResultSet = Pql.combineResultSets(resultSet1, resultSet2);
assertEquals(3, combinedResultSet.getRows().size());
assertEquals(Lists.newArrayList(column1, column2, column3), combinedResultSet.getColumnTypes());
assertEquals(Lists.newArrayList(textValue1, booleanValue1, numberValue1), combinedResultSet.getRows().get(0).getValues());
assertEquals(Lists.newArrayList(textValue2, booleanValue2, numberValue2), combinedResultSet.getRows().get(1).getValues());
assertEquals(Lists.newArrayList(textValue3, booleanValue3, numberValue3), combinedResultSet.getRows().get(2).getValues());
}
use of com.google.api.ads.admanager.axis.v202205.Row in project googleads-java-lib by googleads.
the class PqlTest method testGetRowStringValues.
@Test
public void testGetRowStringValues() {
Row row = new Row();
row.getValues().addAll(Lists.newArrayList(textValue1, booleanValue1, numberValue2, numberSetValue));
assertEquals(Lists.newArrayList("value1", "false", "1.02", "1,-1"), Pql.getRowStringValues(row));
}
use of com.google.api.ads.admanager.axis.v202205.Row in project googleads-java-lib by googleads.
the class Pql method resultSetToStringArrayList.
/**
* Gets the result set as list of string arrays, which can be transformed to a CSV using {@code
* CsvFiles} such as
*
* <pre>
* <code>
* ResultSet combinedResultSet = Pql.combineResultSet(resultSet1, resultSet2);
* //...
* combinedResultSet = Pql.combineResultSet(combinedResultSet, resultSet3);
* CsvFiles.writeCsv(Pql.resultSetToStringArrayList(combinedResultSet), filePath);
* </code>
* </pre>
*
* @param resultSet the result set to convert to a CSV compatible format
* @return a list of string arrays representing the result set
*/
public static List<String[]> resultSetToStringArrayList(ResultSet resultSet) {
List<String[]> stringArrayList = Lists.newArrayList();
stringArrayList.add(getColumnLabels(resultSet).toArray(new String[] {}));
if (resultSet.getRows() != null) {
for (Row row : resultSet.getRows()) {
try {
stringArrayList.add(getRowStringValues(row).toArray(new String[] {}));
} catch (IllegalArgumentException e) {
throw new IllegalStateException("Cannot convert result set to string array list", e);
}
}
}
return stringArrayList;
}
Aggregations