• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package junit.framework;
2 
3 import java.io.PrintWriter;
4 import java.io.StringWriter;
5 
6 
7 /**
8  * A {@code TestFailure} collects a failed test together with
9  * the caught exception.
10  *
11  * @see TestResult
12  */
13 public class TestFailure {
14     protected Test fFailedTest;
15     protected Throwable fThrownException;
16 
17     /**
18      * Constructs a TestFailure with the given test and exception.
19      */
TestFailure(Test failedTest, Throwable thrownException)20     public TestFailure(Test failedTest, Throwable thrownException) {
21         fFailedTest = failedTest;
22         fThrownException = thrownException;
23     }
24 
25     /**
26      * Gets the failed test.
27      */
failedTest()28     public Test failedTest() {
29         return fFailedTest;
30     }
31 
32     /**
33      * Gets the thrown exception.
34      */
thrownException()35     public Throwable thrownException() {
36         return fThrownException;
37     }
38 
39     /**
40      * Returns a short description of the failure.
41      */
42     @Override
toString()43     public String toString() {
44         return fFailedTest + ": " + fThrownException.getMessage();
45     }
46 
47     /**
48      * Returns a String containing the stack trace of the error
49      * thrown by TestFailure.
50      */
trace()51     public String trace() {
52         StringWriter stringWriter = new StringWriter();
53         PrintWriter writer = new PrintWriter(stringWriter);
54         thrownException().printStackTrace(writer);
55         return stringWriter.toString();
56     }
57 
58     /**
59      * Returns a String containing the message from the thrown exception.
60      */
exceptionMessage()61     public String exceptionMessage() {
62         return thrownException().getMessage();
63     }
64 
65     /**
66      * Returns {@code true} if the error is considered a failure
67      * (i.e. if it is an instance of {@code AssertionFailedError}),
68      * {@code false} otherwise.
69      */
isFailure()70     public boolean isFailure() {
71         return thrownException() instanceof AssertionFailedError;
72     }
73 }