]>
git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.runtime/src/org/argeo/slc/runtime/test/SimpleResultPart.java
1 package org
.argeo
.slc
.runtime
.test
;
3 import java
.io
.Serializable
;
5 import org
.argeo
.api
.slc
.test
.TestResultPart
;
6 import org
.argeo
.api
.slc
.test
.TestRun
;
7 import org
.argeo
.api
.slc
.test
.TestRunAware
;
8 import org
.argeo
.api
.slc
.test
.TestStatus
;
12 * Basic implementation of a result part, implementing the standard three status
13 * approach for test results.
18 public class SimpleResultPart
implements TestResultPart
, TestStatus
,
19 TestRunAware
, Serializable
{
20 private static final long serialVersionUID
= 6669675957685071901L;
24 private String testRunUuid
;
26 /** The status. Default to ERROR since it should always be explicitely set. */
27 private Integer status
= ERROR
;
28 private String message
;
29 private String exceptionMessage
;
31 public SimpleResultPart() {
34 public SimpleResultPart(Integer status
, String message
) {
35 this(status
, message
, null);
38 public SimpleResultPart(Integer status
, String message
, Exception exception
) {
40 this.message
= message
;
41 setException(exception
);
44 public String
getMessage() {
48 public void setMessage(String message
) {
49 this.message
= message
;
52 public void setStatus(Integer status
) {
56 public Integer
getStatus() {
60 public String
getExceptionMessage() {
61 return exceptionMessage
;
64 public void setException(Exception exception
) {
65 if (exception
== null)
68 StringBuffer buf
= new StringBuffer("");
69 buf
.append(exception
.toString());
71 for (StackTraceElement elem
: exception
.getStackTrace()) {
72 buf
.append('\t').append(elem
.toString()).append('\n');
75 if (exception
.getCause() != null)
76 addRootCause(buf
, exception
.getCause());
78 this.exceptionMessage
= buf
.toString();
81 protected void addRootCause(StringBuffer buf
, Throwable cause
) {
85 buf
.append("Caused by: " + cause
.getMessage());
86 for (StackTraceElement elem
: cause
.getStackTrace()) {
87 buf
.append('\t').append(elem
.toString()).append('\n');
90 if (cause
.getCause() != null) {
91 addRootCause(buf
, cause
.getCause());
96 public String
toString() {
97 StringBuffer buf
= new StringBuffer("");
98 buf
.append(SlcTestUtils
.statusToString(status
));
99 if (status
== PASSED
|| status
== FAILED
) {
101 } else if (status
== ERROR
) {
105 return buf
.toString();
114 void setTid(Long tid
) {
118 public String
getTestRunUuid() {
123 public void setTestRunUuid(String testRunUuid
) {
124 this.testRunUuid
= testRunUuid
;
127 public void notifyTestRun(TestRun testRun
) {
128 testRunUuid
= testRun
.getUuid();
131 public void setExceptionMessage(String exceptionMessage
) {
132 this.exceptionMessage
= exceptionMessage
;