diff options
Diffstat (limited to 'src/cz/crcs/ectester/common/test/Test.java')
| -rw-r--r-- | src/cz/crcs/ectester/common/test/Test.java | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/src/cz/crcs/ectester/common/test/Test.java b/src/cz/crcs/ectester/common/test/Test.java new file mode 100644 index 0000000..3d0baf6 --- /dev/null +++ b/src/cz/crcs/ectester/common/test/Test.java @@ -0,0 +1,66 @@ +package cz.crcs.ectester.common.test; + +import static cz.crcs.ectester.common.test.Result.Value; + +/** + * An abstract test that can be run and has a Result. + * + * @author Jan Jancar johny@neuromancer.sk + */ +public abstract class Test implements Testable { + protected boolean hasRun; + protected Result result; + + public Result getResult() { + if (!hasRun) { + return null; + } + return result; + } + + public Value getResultValue() { + if (!hasRun) { + return null; + } + return result.getValue(); + } + + public String getResultCause() { + if (!hasRun) { + return null; + } + return result.getCause(); + } + + public boolean ok() { + if (!hasRun) { + return true; + } + return result.ok(); + } + + @Override + public boolean error() { + if (!hasRun) { + return false; + } + return result.compareTo(Value.ERROR); + } + + @Override + public boolean hasRun() { + return hasRun; + } + + @Override + public void reset() { + hasRun = false; + result = null; + } + + public abstract String getDescription(); + + @Override + public abstract void run() throws TestException; + +} |
