aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/reader/output/TextOutputWriter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/cz/crcs/ectester/reader/output/TextOutputWriter.java')
-rw-r--r--src/cz/crcs/ectester/reader/output/TextOutputWriter.java72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/cz/crcs/ectester/reader/output/TextOutputWriter.java b/src/cz/crcs/ectester/reader/output/TextOutputWriter.java
new file mode 100644
index 0000000..7e62e89
--- /dev/null
+++ b/src/cz/crcs/ectester/reader/output/TextOutputWriter.java
@@ -0,0 +1,72 @@
+package cz.crcs.ectester.reader.output;
+
+import cz.crcs.ectester.reader.Util;
+import cz.crcs.ectester.reader.response.Response;
+import cz.crcs.ectester.reader.test.Test;
+
+import java.io.PrintStream;
+
+/**
+ * @author Jan Jancar johny@neuromancer.sk
+ */
+public class TextOutputWriter implements OutputWriter {
+ private PrintStream output;
+
+ public TextOutputWriter(PrintStream output) {
+ this.output = output;
+ }
+
+ @Override
+ public void begin() {
+ }
+
+ private String testPrefix(Test t) {
+ return (t.ok() ? "OK" : "NOK");
+ }
+
+ private String responseSuffix(Response r) {
+ StringBuilder suffix = new StringBuilder();
+ for (int j = 0; j < r.getNumSW(); ++j) {
+ short sw = r.getSW(j);
+ if (sw != 0) {
+ suffix.append(" ").append(Util.getSWString(sw));
+ }
+ }
+ if (suffix.length() == 0) {
+ suffix.append(" [").append(Util.getSW(r.getNaturalSW())).append("]");
+ }
+ return String.format("%4d ms : %s", r.getDuration() / 1000000, suffix);
+ }
+
+ @Override
+ public void printResponse(Response r) {
+ String out = "";
+ out += String.format("%-62s:", r.getDescription()) + " : ";
+ out += responseSuffix(r);
+ output.println(out);
+ output.flush();
+ }
+
+ @Override
+ public void printTest(Test t) {
+ if (!t.hasRun())
+ return;
+
+ String out = "";
+ if (t instanceof Test.Simple) {
+ Test.Simple test = (Test.Simple) t;
+ out += String.format("%-62s:", testPrefix(t) + " " + test.getDescription()) + " : ";
+ out += responseSuffix(test.getResponse());
+ } else if (t instanceof Test.Compound) {
+ Test.Compound test = (Test.Compound) t;
+ out += String.format("%-62s:", testPrefix(t) + " " + test.getDescription());
+ }
+
+ output.println(out);
+ output.flush();
+ }
+
+ @Override
+ public void end() {
+ }
+}