1 package org
.argeo
.slc
.core
.test
.tree
;
3 import org
.apache
.commons
.logging
.Log
;
4 import org
.apache
.commons
.logging
.LogFactory
;
6 import org
.argeo
.slc
.test
.TestResultListener
;
7 import org
.argeo
.slc
.test
.TestResultPart
;
8 import org
.argeo
.slc
.test
.TestStatus
;
11 * Listener logging tree-based test results to the underlying logging system.
16 public class TreeTestResultLogger
implements TestResultListener
<TreeTestResult
> {
18 private static Log log
= LogFactory
.getLog(TreeTestResultLogger
.class);
20 private Boolean logExceptionMessages
= false;
22 public void resultPartAdded(TreeTestResult testResult
,
23 TestResultPart testResultPart
) {
24 String msg
= testResultPart
+ " - " + testResult
.getUuid() + ":"
25 + testResult
.getCurrentPath();
26 if (testResultPart
.getStatus().equals(TestStatus
.PASSED
)) {
28 } else if (testResultPart
.getStatus().equals(TestStatus
.FAILED
)) {
30 } else if (testResultPart
.getStatus().equals(TestStatus
.ERROR
)) {
31 if (logExceptionMessages
)
32 msg
= msg
+ "\n" + testResultPart
.getExceptionMessage();
36 if (!logExceptionMessages
|| log
.isDebugEnabled())
37 log
.debug(testResultPart
.getExceptionMessage());
40 log
.error("Unknow test status: " + msg
);
44 public void close(TreeTestResult testResult
) {
45 log
.info("Test result " + testResult
.getUuid() + " closed.");
48 public void setLogExceptionMessages(Boolean logExceptionMessages
) {
49 this.logExceptionMessages
= logExceptionMessages
;