From ee5c50d8b2491da2966f4b0730013765ab2507bc Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 25 Apr 2024 15:47:49 +0200 Subject: Add some output to tests as they run. --- .../ectester/common/output/BaseTextTestWriter.java | 17 +++++++++++++++ .../ectester/common/output/BaseXMLTestWriter.java | 10 +++++++++ .../ectester/common/output/BaseYAMLTestWriter.java | 10 +++++++++ .../crcs/ectester/common/output/TeeTestWriter.java | 14 +++++++++++++ .../cz/crcs/ectester/common/output/TestWriter.java | 24 ++++++++++++++++------ .../cz/crcs/ectester/common/test/TestSuite.java | 2 ++ 6 files changed, 71 insertions(+), 6 deletions(-) (limited to 'common/src/main/java') diff --git a/common/src/main/java/cz/crcs/ectester/common/output/BaseTextTestWriter.java b/common/src/main/java/cz/crcs/ectester/common/output/BaseTextTestWriter.java index 5c449db..4670f95 100644 --- a/common/src/main/java/cz/crcs/ectester/common/output/BaseTextTestWriter.java +++ b/common/src/main/java/cz/crcs/ectester/common/output/BaseTextTestWriter.java @@ -113,6 +113,23 @@ public abstract class BaseTextTestWriter implements TestWriter { return line + out.toString(); } + @Override + public void beginTest(Test t) { + if (t instanceof CompoundTest) { + CompoundTest test = (CompoundTest) t; + } else { + SimpleTest test = (SimpleTest) t; + } + output.print("Running ▶ " + t.getDescription()); + output.flush(); + } + + + @Override + public void endTest(Test t) { + output.print("\33[2K\r"); + } + @Override public void outputTest(Test t, int index) { if (!t.hasRun()) diff --git a/common/src/main/java/cz/crcs/ectester/common/output/BaseXMLTestWriter.java b/common/src/main/java/cz/crcs/ectester/common/output/BaseXMLTestWriter.java index 53970dd..5157ef0 100644 --- a/common/src/main/java/cz/crcs/ectester/common/output/BaseXMLTestWriter.java +++ b/common/src/main/java/cz/crcs/ectester/common/output/BaseXMLTestWriter.java @@ -115,6 +115,16 @@ public abstract class BaseXMLTestWriter implements TestWriter { return testElem; } + @Override + public void beginTest(Test t) { + + } + + @Override + public void endTest(Test t) { + + } + @Override public void outputTest(Test t, int index) { if (!t.hasRun()) diff --git a/common/src/main/java/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java b/common/src/main/java/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java index e054563..c3a42ea 100644 --- a/common/src/main/java/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java +++ b/common/src/main/java/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java @@ -91,6 +91,16 @@ public abstract class BaseYAMLTestWriter implements TestWriter { return testObj; } + @Override + public void beginTest(Test t) { + + } + + @Override + public void endTest(Test t) { + + } + @Override public void outputTest(Test t, int index) { if (!t.hasRun()) diff --git a/common/src/main/java/cz/crcs/ectester/common/output/TeeTestWriter.java b/common/src/main/java/cz/crcs/ectester/common/output/TeeTestWriter.java index 58a0a15..7635644 100644 --- a/common/src/main/java/cz/crcs/ectester/common/output/TeeTestWriter.java +++ b/common/src/main/java/cz/crcs/ectester/common/output/TeeTestWriter.java @@ -20,6 +20,20 @@ public class TeeTestWriter implements TestWriter { } } + @Override + public void beginTest(Test t) { + for (TestWriter writer : writers) { + writer.beginTest(t); + } + } + + @Override + public void endTest(Test t) { + for (TestWriter writer : writers) { + writer.endTest(t); + } + } + @Override public void outputTest(Test t, int index) { for (TestWriter writer : writers) { diff --git a/common/src/main/java/cz/crcs/ectester/common/output/TestWriter.java b/common/src/main/java/cz/crcs/ectester/common/output/TestWriter.java index 67aeccb..7368c0a 100644 --- a/common/src/main/java/cz/crcs/ectester/common/output/TestWriter.java +++ b/common/src/main/java/cz/crcs/ectester/common/output/TestWriter.java @@ -19,20 +19,32 @@ public interface TestWriter { void begin(TestSuite suite); /** - * @param t - * @param index + * Begin the test (before it is run). + * @param t Test to begin output of. + */ + void beginTest(Test t); + + /** + * End the test (after it is run, or errored out). + * @param t Test to end output of. + */ + void endTest(Test t); + + /** + * @param t Test to output. + * @param index Index of the test. */ void outputTest(Test t, int index); /** - * @param t - * @param cause - * @param index + * @param t Test to output the error from. + * @param cause Throwable to output. + * @param index Index of the test. */ void outputError(Test t, Throwable cause, int index); /** - * + * End writing the TestSuite. */ void end(); } diff --git a/common/src/main/java/cz/crcs/ectester/common/test/TestSuite.java b/common/src/main/java/cz/crcs/ectester/common/test/TestSuite.java index b12680a..091b008 100644 --- a/common/src/main/java/cz/crcs/ectester/common/test/TestSuite.java +++ b/common/src/main/java/cz/crcs/ectester/common/test/TestSuite.java @@ -55,7 +55,9 @@ public abstract class TestSuite { */ protected T runTest(T t) { running = t; + writer.beginTest(t); t.run(); + writer.endTest(t); running = null; return t; } -- cgit v1.3