diff options
-rw-r--r-- | vespaclient-java/src/main/java/com/yahoo/vespavisit/StdOutVisitorHandler.java | 3 | ||||
-rw-r--r-- | vespaclient-java/src/test/java/com/yahoo/vespavisit/StdOutVisitorHandlerTest.java | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/vespaclient-java/src/main/java/com/yahoo/vespavisit/StdOutVisitorHandler.java b/vespaclient-java/src/main/java/com/yahoo/vespavisit/StdOutVisitorHandler.java index 7d18390a530..d88de7d0fef 100644 --- a/vespaclient-java/src/main/java/com/yahoo/vespavisit/StdOutVisitorHandler.java +++ b/vespaclient-java/src/main/java/com/yahoo/vespavisit/StdOutVisitorHandler.java @@ -250,6 +250,9 @@ public class StdOutVisitorHandler extends VdsVisitHandler { @Override public synchronized void onDone() { if (jsonOutput && !printIds) { + if (first) { + out.print('['); + } out.println("]"); } statisticsMap.dumpAll(); diff --git a/vespaclient-java/src/test/java/com/yahoo/vespavisit/StdOutVisitorHandlerTest.java b/vespaclient-java/src/test/java/com/yahoo/vespavisit/StdOutVisitorHandlerTest.java index 53fba8cc5c0..7c68b7c4767 100644 --- a/vespaclient-java/src/test/java/com/yahoo/vespavisit/StdOutVisitorHandlerTest.java +++ b/vespaclient-java/src/test/java/com/yahoo/vespavisit/StdOutVisitorHandlerTest.java @@ -37,4 +37,16 @@ public class StdOutVisitorHandlerTest { String output = out.toString(); assertEquals("", output.trim()); } + + @Test + public void printing_zero_documents_produces_empty_output() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StdOutVisitorHandler visitorHandler = + new StdOutVisitorHandler(/*printIds*/false, false, false, false, false, false, 0, jsonOutput, new PrintStream(out, true)); + VisitorDataHandler dataHandler = visitorHandler.getDataHandler(); + dataHandler.onDone(); + String expectedOutput = jsonOutput ? "[]" : ""; + String output = out.toString().trim(); + assertEquals(expectedOutput, output); + } }
\ No newline at end of file |