Initialize libbullet git in 2.0_beta.
[platform/upstream/libbullet.git] / UnitTests / cppunit / include / cppunit / TestFailure.h
1 #ifndef CPPUNIT_TESTFAILURE_H    // -*- C++ -*-
2 #define CPPUNIT_TESTFAILURE_H
3
4 #include <cppunit/Portability.h>
5 #include <string>
6
7 CPPUNIT_NS_BEGIN
8
9
10 class Exception;
11 class SourceLine;
12 class Test;
13
14
15 /*! \brief Record of a failed Test execution.
16  * \ingroup BrowsingCollectedTestResult
17  *
18  * A TestFailure collects a failed test together with
19  * the caught exception.
20  *
21  * TestFailure assumes lifetime control for any exception
22  * passed to it.
23  */
24 class CPPUNIT_API TestFailure 
25 {
26 public:
27   TestFailure( Test *failedTest,
28                Exception *thrownException,
29                bool isError );
30
31   virtual ~TestFailure ();
32
33   virtual Test *failedTest() const;
34
35   virtual Exception *thrownException() const;
36
37   virtual SourceLine sourceLine() const;
38
39   virtual bool isError() const;
40
41   virtual std::string failedTestName() const;
42
43   virtual TestFailure *clone() const;
44
45 protected:
46   Test *m_failedTest;
47   Exception *m_thrownException;
48   bool m_isError;
49
50 private: 
51   TestFailure( const TestFailure &other ); 
52   TestFailure &operator =( const TestFailure& other ); 
53 };
54
55
56 CPPUNIT_NS_END
57
58 #endif // CPPUNIT_TESTFAILURE_H