aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/junit/internal/ArrayComparisonFailure.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/junit/internal/ArrayComparisonFailure.java')
-rw-r--r--src/main/java/org/junit/internal/ArrayComparisonFailure.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/org/junit/internal/ArrayComparisonFailure.java b/src/main/java/org/junit/internal/ArrayComparisonFailure.java
index 8627d6e..d300e7e 100644
--- a/src/main/java/org/junit/internal/ArrayComparisonFailure.java
+++ b/src/main/java/org/junit/internal/ArrayComparisonFailure.java
@@ -16,11 +16,12 @@ public class ArrayComparisonFailure extends AssertionError {
/*
* We have to use the f prefix until the next major release to ensure
- * serialization compatibility.
- * See https://github.com/junit-team/junit/issues/976
+ * serialization compatibility.
+ * See https://github.com/junit-team/junit4/issues/976
*/
private final List<Integer> fIndices = new ArrayList<Integer>();
private final String fMessage;
+ private final AssertionError fCause;
/**
* Construct a new <code>ArrayComparisonFailure</code> with an error text and the array's
@@ -32,7 +33,8 @@ public class ArrayComparisonFailure extends AssertionError {
*/
public ArrayComparisonFailure(String message, AssertionError cause, int index) {
this.fMessage = message;
- initCause(cause);
+ this.fCause = cause;
+ initCause(fCause);
addDimension(index);
}
@@ -41,6 +43,11 @@ public class ArrayComparisonFailure extends AssertionError {
}
@Override
+ public synchronized Throwable getCause() {
+ return super.getCause() == null ? fCause : super.getCause();
+ }
+
+ @Override
public String getMessage() {
StringBuilder sb = new StringBuilder();
if (fMessage != null) {