aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java')
-rw-r--r--src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java b/src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java
deleted file mode 100644
index 5d45ba3..0000000
--- a/src/main/java/org/junit/internal/matchers/StacktracePrintingMatcher.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.junit.internal.matchers;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
-import org.hamcrest.Description;
-import org.hamcrest.Factory;
-import org.hamcrest.Matcher;
-
-/**
- * A matcher that delegates to throwableMatcher and in addition appends the
- * stacktrace of the actual Throwable in case of a mismatch.
- */
-public class StacktracePrintingMatcher<T extends Throwable> extends
- org.hamcrest.TypeSafeMatcher<T> {
-
- private final Matcher<T> throwableMatcher;
-
- public StacktracePrintingMatcher(Matcher<T> throwableMatcher) {
- this.throwableMatcher = throwableMatcher;
- }
-
- public void describeTo(Description description) {
- throwableMatcher.describeTo(description);
- }
-
- @Override
- protected boolean matchesSafely(T item) {
- return throwableMatcher.matches(item);
- }
-
- @Override
- protected void describeMismatchSafely(T item, Description description) {
- throwableMatcher.describeMismatch(item, description);
- description.appendText("\nStacktrace was: ");
- description.appendText(readStacktrace(item));
- }
-
- private String readStacktrace(Throwable throwable) {
- StringWriter stringWriter = new StringWriter();
- throwable.printStackTrace(new PrintWriter(stringWriter));
- return stringWriter.toString();
- }
-
- @Factory
- public static <T extends Throwable> Matcher<T> isThrowable(
- Matcher<T> throwableMatcher) {
- return new StacktracePrintingMatcher<T>(throwableMatcher);
- }
-
- @Factory
- public static <T extends Exception> Matcher<T> isException(
- Matcher<T> exceptionMatcher) {
- return new StacktracePrintingMatcher<T>(exceptionMatcher);
- }
-}