diff options
author | Endi Sukma Dewata <edewata@redhat.com> | 2011-12-01 10:23:44 -0600 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2011-12-05 19:41:23 +0000 |
commit | 8bcaa20e72e97b9392cc65bd3428a93170720b77 (patch) | |
tree | 558efab5bf357a4b26d1d36dce621333005e29a3 /pki | |
parent | 343a8af9f302fbdcc183db88676e5a281641208f (diff) | |
download | pki-8bcaa20e72e97b9392cc65bd3428a93170720b77.tar.gz pki-8bcaa20e72e97b9392cc65bd3428a93170720b77.tar.xz pki-8bcaa20e72e97b9392cc65bd3428a93170720b77.zip |
Fixed stack trace in test report.
The report generator has been fixed to show the stack trace from
the test source code.
Ticket #36
Diffstat (limited to 'pki')
-rw-r--r-- | pki/base/common/test/com/netscape/test/TestListener.java | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/pki/base/common/test/com/netscape/test/TestListener.java b/pki/base/common/test/com/netscape/test/TestListener.java index 1322f414f..af6c9bf71 100644 --- a/pki/base/common/test/com/netscape/test/TestListener.java +++ b/pki/base/common/test/com/netscape/test/TestListener.java @@ -23,7 +23,6 @@ import org.junit.runner.Result; import org.junit.runner.notification.Failure; import org.junit.runner.notification.RunListener; -import org.w3c.dom.CDATASection; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Text; @@ -217,15 +216,31 @@ public class TestListener extends RunListener { testCaseElement.appendChild(failureElement); Description description = failure.getDescription(); - String exceptionName = failure.getException().getClass().getName(); + Throwable exception = failure.getException(); + String exceptionName = exception.getClass().getName(); failureElement.setAttribute("message", failure.getMessage()); failureElement.setAttribute("type", exceptionName); Text messageElement = document.createTextNode( - exceptionName + ": " +failure.getMessage() + "\n\tat " + - description.getClassName() + "." + description.getMethodName() + "()" + exceptionName + ": " +failure.getMessage() + "\n" ); + + // print stack trace + for (StackTraceElement element : exception.getStackTrace()) { + if (!element.getClassName().equals(description.getClassName())) continue; + + String source = "Unknown Source"; + if (element.getFileName() != null && element.getLineNumber() >= 0) { + source = element.getFileName() + ":" + element.getLineNumber(); + } + + messageElement.appendData("\tat " + + element.getClassName() + "." + element.getMethodName() + + "(" + source + ")\n" + ); + } + failureElement.appendChild(messageElement); failureCount++; |