aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/common
diff options
context:
space:
mode:
authorJ08nY2017-11-12 12:38:04 +0100
committerJ08nY2017-11-12 12:38:04 +0100
commita2f5316ad96b6e78844c371f8dd5483095cf4af3 (patch)
tree03720bacdc19b2c644b06120b96a35b3897d41cd /src/cz/crcs/ectester/common
parent84a3a55be957900e0417a5afa77b65bfa6d19270 (diff)
downloadECTester-a2f5316ad96b6e78844c371f8dd5483095cf4af3.tar.gz
ECTester-a2f5316ad96b6e78844c371f8dd5483095cf4af3.tar.zst
ECTester-a2f5316ad96b6e78844c371f8dd5483095cf4af3.zip
Introduce ECTesterStandalone.
Diffstat (limited to 'src/cz/crcs/ectester/common')
-rw-r--r--src/cz/crcs/ectester/common/output/OutputLogger.java62
-rw-r--r--src/cz/crcs/ectester/common/test/Result.java4
-rw-r--r--src/cz/crcs/ectester/common/test/Test.java2
-rw-r--r--src/cz/crcs/ectester/common/test/Testable.java4
4 files changed, 68 insertions, 4 deletions
diff --git a/src/cz/crcs/ectester/common/output/OutputLogger.java b/src/cz/crcs/ectester/common/output/OutputLogger.java
new file mode 100644
index 0000000..b876c5b
--- /dev/null
+++ b/src/cz/crcs/ectester/common/output/OutputLogger.java
@@ -0,0 +1,62 @@
+package cz.crcs.ectester.common.output;
+
+import cz.crcs.ectester.reader.output.TeeOutputStream;
+
+import java.io.*;
+import java.util.LinkedList;
+import java.util.List;
+
+/**
+ * @author Petr Svenda petr@svenda.com
+ * @author Jan Jancar johny@neuromancer.sk
+ */
+public class OutputLogger {
+ private OutputStream out;
+ private PrintStream print;
+
+ public OutputLogger(boolean systemOut, String... filePaths) throws IOException {
+ List<OutputStream> streams = new LinkedList<>();
+ for (String filePath : filePaths) {
+ if (filePath != null) {
+ streams.add(new FileOutputStream(filePath));
+ }
+ }
+ if (systemOut) {
+ streams.add(System.out);
+ }
+ this.out = new TeeOutputStream(streams.toArray(new OutputStream[0]));
+ this.print = new PrintStream(this.out);
+ }
+
+ public OutputLogger(String filePath) throws IOException {
+ this(true, filePath);
+ }
+
+ public OutputStream getOutputStream() {
+ return this.out;
+ }
+
+ public PrintStream getPrintStream() {
+ return this.print;
+ }
+
+ public void println() {
+ print.println();
+ }
+
+ public void println(String logLine) {
+ print.println(logLine);
+ }
+
+ public void print(String logLine) {
+ print.print(logLine);
+ }
+
+ public void flush() {
+ print.flush();
+ }
+
+ public void close() {
+ print.close();
+ }
+}
diff --git a/src/cz/crcs/ectester/common/test/Result.java b/src/cz/crcs/ectester/common/test/Result.java
index 523a9d7..11fcb4d 100644
--- a/src/cz/crcs/ectester/common/test/Result.java
+++ b/src/cz/crcs/ectester/common/test/Result.java
@@ -46,7 +46,7 @@ public class Result {
}
/**
- *
+ * A result value of a Test.
*/
public enum Value {
SUCCESS(true),
@@ -86,7 +86,7 @@ public class Result {
}
/**
- *
+ * A possible expected value result of a Test.
*/
public enum ExpectedValue {
SUCCESS,
diff --git a/src/cz/crcs/ectester/common/test/Test.java b/src/cz/crcs/ectester/common/test/Test.java
index 8c025b8..5973d0f 100644
--- a/src/cz/crcs/ectester/common/test/Test.java
+++ b/src/cz/crcs/ectester/common/test/Test.java
@@ -7,7 +7,7 @@ import static cz.crcs.ectester.common.test.Result.Value;
*
* @author Jan Jancar johny@neuromancer.sk
*/
-public abstract class Test {
+public abstract class Test implements Testable {
protected boolean hasRun = false;
protected Result result;
diff --git a/src/cz/crcs/ectester/common/test/Testable.java b/src/cz/crcs/ectester/common/test/Testable.java
index e033b0a..d05d31e 100644
--- a/src/cz/crcs/ectester/common/test/Testable.java
+++ b/src/cz/crcs/ectester/common/test/Testable.java
@@ -1,13 +1,15 @@
package cz.crcs.ectester.common.test;
/**
- *
* @author Jan Jancar johny@neuromancer.sk
*/
public interface Testable {
boolean hasRun();
+
void run() throws TestException;
+
boolean ok();
+
boolean error();
}