|
From: SVN by r. <sv...@ca...> - 2009-09-30 18:15:03
|
Author: roy
Date: 2009-09-30 20:14:51 +0200 (Wed, 30 Sep 2009)
New Revision: 426
Added:
src/test/java/nl/improved/sqlclient/util/ResultBuilderTest.java
Modified:
src/main/java/nl/improved/sqlclient/util/ResultBuilder.java
Log:
fix output when no rows returned
added unit tests
Modified: src/main/java/nl/improved/sqlclient/util/ResultBuilder.java
===================================================================
--- src/main/java/nl/improved/sqlclient/util/ResultBuilder.java 2009-09-30 17:50:15 UTC (rev 425)
+++ src/main/java/nl/improved/sqlclient/util/ResultBuilder.java 2009-09-30 18:14:51 UTC (rev 426)
@@ -105,10 +105,13 @@
result.append(horizontalSeperator);
}
}
- result.append('\n');
Iterator<Cell> cells = rows.iterator();
int prevRow = 0;
- result.append(verticalSeparator);
+ boolean rowsAvailable = cells.hasNext();
+ if (rowsAvailable) {
+ result.append('\n');
+ result.append(verticalSeparator);
+ }
while (cells.hasNext()) {
Cell cell = cells.next();
if (cell != null && cell.row != prevRow) {
@@ -137,12 +140,12 @@
}
}
result.append('\n');
- if (horizontalSeperatorEnabled) {
+ if (rowsAvailable && horizontalSeperatorEnabled) {
for (int i = 0; i < rowLength-1; i++) {
result.append(horizontalSeperator);
}
+ result.append('\n');
}
- result.append('\n');
if (footer != null) {
result.append(footer);
result.append('\n');
Added: src/test/java/nl/improved/sqlclient/util/ResultBuilderTest.java
===================================================================
--- src/test/java/nl/improved/sqlclient/util/ResultBuilderTest.java 2009-09-30 17:50:15 UTC (rev 425)
+++ src/test/java/nl/improved/sqlclient/util/ResultBuilderTest.java 2009-09-30 18:14:51 UTC (rev 426)
@@ -0,0 +1,56 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package nl.improved.sqlclient.util;
+
+import java.util.Arrays;
+import junit.framework.TestCase;
+import nl.improved.sqlclient.util.ResultBuilder.Alignment;
+
+/**
+ *
+ * @author roy
+ */
+public class ResultBuilderTest extends TestCase {
+
+ public ResultBuilderTest(String testName) {
+ super(testName);
+ }
+
+
+ /**
+ * Test of toString method, of class ResultBuilder.
+ */
+ public void testToString() {
+ ResultBuilder instance = new ResultBuilder();
+ instance.setHeader(Arrays.asList(new String[]{"ID"}));
+ String expected =
+ "----\n" +
+ "|ID|\n"+
+ "----\n" ;
+ assertEquals(expected, instance.toString());
+ expected =
+ "----\n" +
+ "|ID|\n"+
+ "----\n" +
+ "| 1|\n"+
+ "----\n" ;
+ instance.set(0, 0, "1", Alignment.RIGHT);
+ assertEquals(expected, instance.toString());
+ expected =
+ "----\n" +
+ "|ID|\n"+
+ "----\n" +
+ "| 1|\n"+
+ "----\n"+
+ "F\n";
+ instance.setFooter("F");
+ //System.out.println("---------");
+ //System.out.println(instance.toString());
+ //System.out.println("---------");
+ assertEquals(expected, instance.toString());
+ }
+
+}
|