diff options
| author | J08nY | 2018-02-11 01:05:47 +0100 |
|---|---|---|
| committer | J08nY | 2018-02-11 01:05:47 +0100 |
| commit | 31a8bfc6f8d2990f8bc9e4a126731052e07b7e10 (patch) | |
| tree | 3da03af43e54b5dcf9261be35e2084fce2433baf /src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java | |
| parent | 708fb831fc3e3ee4ea009e0c8049b911b7fd09b8 (diff) | |
| download | ECTester-31a8bfc6f8d2990f8bc9e4a126731052e07b7e10.tar.gz ECTester-31a8bfc6f8d2990f8bc9e4a126731052e07b7e10.tar.zst ECTester-31a8bfc6f8d2990f8bc9e4a126731052e07b7e10.zip | |
Output Result causes better in YAML.
Diffstat (limited to 'src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java')
| -rw-r--r-- | src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java b/src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java index 1e13082..1452b08 100644 --- a/src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java +++ b/src/cz/crcs/ectester/common/output/BaseYAMLTestWriter.java @@ -41,11 +41,26 @@ public abstract class BaseYAMLTestWriter implements TestWriter { abstract protected Map<String, Object> deviceObject(TestSuite suite); + private Object causeObject(Object cause) { + if (cause == null) { + return null; + } else if (cause instanceof Throwable) { + StringBuilder sb = new StringBuilder(); + for (Throwable t = (Throwable) cause; t != null; t = t.getCause()) { + sb.append(t.toString()); + sb.append(System.lineSeparator()); + } + return sb.toString(); + } else { + return cause.toString(); + } + } + private Map<String, Object> resultObject(Result result) { Map<String, Object> resultObject = new HashMap<>(); resultObject.put("ok", result.ok()); resultObject.put("value", result.getValue().name()); - resultObject.put("cause", result.getCause()); + resultObject.put("cause", causeObject(result.getCause())); return resultObject; } |
