diff options
| author | J08nY | 2017-12-03 20:59:41 +0100 |
|---|---|---|
| committer | J08nY | 2017-12-03 20:59:41 +0100 |
| commit | da09715d9ec955b4b139b45a1b2c5270ca0ebf2d (patch) | |
| tree | 2f4e711668e406f66d524e50ec4c59828e0d0d39 /src/cz/crcs/ectester/common | |
| parent | da2f36d4d313dc4cc736d8789700d78e052d1fc8 (diff) | |
| download | ECTester-da09715d9ec955b4b139b45a1b2c5270ca0ebf2d.tar.gz ECTester-da09715d9ec955b4b139b45a1b2c5270ca0ebf2d.tar.zst ECTester-da09715d9ec955b4b139b45a1b2c5270ca0ebf2d.zip | |
Introduce BaseTestable and Testable Metadata.
Diffstat (limited to 'src/cz/crcs/ectester/common')
| -rw-r--r-- | src/cz/crcs/ectester/common/output/TestWriter.java | 15 | ||||
| -rw-r--r-- | src/cz/crcs/ectester/common/output/TestableWriter.java | 39 | ||||
| -rw-r--r-- | src/cz/crcs/ectester/common/test/BaseTestable.java | 35 | ||||
| -rw-r--r-- | src/cz/crcs/ectester/common/test/Test.java | 18 | ||||
| -rw-r--r-- | src/cz/crcs/ectester/common/test/Testable.java | 23 |
5 files changed, 127 insertions, 3 deletions
diff --git a/src/cz/crcs/ectester/common/output/TestWriter.java b/src/cz/crcs/ectester/common/output/TestWriter.java new file mode 100644 index 0000000..0f3c4e6 --- /dev/null +++ b/src/cz/crcs/ectester/common/output/TestWriter.java @@ -0,0 +1,15 @@ +package cz.crcs.ectester.common.output; + +import cz.crcs.ectester.common.test.Test; +import cz.crcs.ectester.reader.test.TestSuite; + +/** + * @author Jan Jancar johny@neuromancer.sk + */ +public interface TestWriter { + void begin(TestSuite suite); + + void outputTest(Test t); + + void end(); +} diff --git a/src/cz/crcs/ectester/common/output/TestableWriter.java b/src/cz/crcs/ectester/common/output/TestableWriter.java new file mode 100644 index 0000000..2097254 --- /dev/null +++ b/src/cz/crcs/ectester/common/output/TestableWriter.java @@ -0,0 +1,39 @@ +package cz.crcs.ectester.common.output; + +import cz.crcs.ectester.common.test.BaseTestable; +import cz.crcs.ectester.common.test.Testable; + +import java.io.OutputStream; +import java.io.PrintStream; + +/** + * @author Jan Jancar johny@neuromancer.sk + */ +public class TestableWriter { + private PrintStream output; + + public TestableWriter(PrintStream output) { + this.output = output; + } + + public TestableWriter(OutputStream output) { + this(new PrintStream(output)); + } + + + public String outputTestableMeta(BaseTestable t) { + return null; + } + + public void writeTestableMeta(BaseTestable t) { + + } + + public String outputTestable(BaseTestable t) { + return null; + } + + public void writeTestable(BaseTestable t) { + + } +} diff --git a/src/cz/crcs/ectester/common/test/BaseTestable.java b/src/cz/crcs/ectester/common/test/BaseTestable.java new file mode 100644 index 0000000..6a63b13 --- /dev/null +++ b/src/cz/crcs/ectester/common/test/BaseTestable.java @@ -0,0 +1,35 @@ +package cz.crcs.ectester.common.test; + +import java.util.Collections; +import java.util.Map; + +/** + * @author Jan Jancar johny@neuromancer.sk + */ +public abstract class BaseTestable implements Testable { + protected boolean hasRun; + protected boolean ok; + protected boolean error; + + protected Map<String, Object> meta; + + @Override + public boolean hasRun() { + return hasRun; + } + + @Override + public boolean ok() { + return ok; + } + + @Override + public boolean error() { + return error; + } + + @Override + public Map<String, Object> meta() { + return Collections.unmodifiableMap(meta); + } +} diff --git a/src/cz/crcs/ectester/common/test/Test.java b/src/cz/crcs/ectester/common/test/Test.java index 750a410..5f55337 100644 --- a/src/cz/crcs/ectester/common/test/Test.java +++ b/src/cz/crcs/ectester/common/test/Test.java @@ -1,5 +1,8 @@ package cz.crcs.ectester.common.test; +import java.util.Collections; +import java.util.Map; + import static cz.crcs.ectester.common.test.Result.Value; /** @@ -8,8 +11,9 @@ import static cz.crcs.ectester.common.test.Result.Value; * @author Jan Jancar johny@neuromancer.sk */ public abstract class Test implements Testable { - protected boolean hasRun = false; + protected boolean hasRun; protected Result result; + protected Map<String, Object> meta; public Result getResult() { if (!hasRun) { @@ -39,6 +43,7 @@ public abstract class Test implements Testable { return result.ok(); } + @Override public boolean error() { if (!hasRun) { return false; @@ -46,12 +51,19 @@ public abstract class Test implements Testable { return result.compareTo(Value.ERROR); } - public abstract String getDescription(); - + @Override public boolean hasRun() { return hasRun; } + @Override + public Map<String, Object> meta() { + return Collections.unmodifiableMap(meta); + } + + public abstract String getDescription(); + + @Override public abstract void run() throws TestException; } diff --git a/src/cz/crcs/ectester/common/test/Testable.java b/src/cz/crcs/ectester/common/test/Testable.java index d05d31e..e8eb321 100644 --- a/src/cz/crcs/ectester/common/test/Testable.java +++ b/src/cz/crcs/ectester/common/test/Testable.java @@ -1,15 +1,38 @@ package cz.crcs.ectester.common.test; +import java.util.Map; + /** * @author Jan Jancar johny@neuromancer.sk */ public interface Testable { + /** + * @return Whether this testable was run. + */ boolean hasRun(); + /** + * Run this Testable. + * + * @throws TestException + */ void run() throws TestException; + /** + * @return Whether this Testable was OK. + */ boolean ok(); + /** + * @return Whether an error happened. + */ boolean error(); + + /** + * Get the metadata of this Testable. + * + * @return The metadata of the testable. + */ + Map<String, Object> meta(); } |
