00001 #ifndef CPPUNIT_TESTFAILURE_H // -*- C++ -*-
00002 #define CPPUNIT_TESTFAILURE_H
00003
00004 #include <cppunit/Portability.h>
00005 #include <string>
00006
00007 CPPUNIT_NS_BEGIN
00008
00009
00010 class Exception;
00011 class SourceLine;
00012 class Test;
00013
00014
00024 class CPPUNIT_API TestFailure
00025 {
00026 public:
00027 TestFailure( Test *failedTest,
00028 Exception *thrownException,
00029 bool isError );
00030
00031 virtual ~TestFailure ();
00032
00033 virtual Test *failedTest() const;
00034
00035 virtual Exception *thrownException() const;
00036
00037 virtual SourceLine sourceLine() const;
00038
00039 virtual bool isError() const;
00040
00041 virtual std::string failedTestName() const;
00042
00043 virtual TestFailure *clone() const;
00044
00045 protected:
00046 Test *m_failedTest;
00047 Exception *m_thrownException;
00048 bool m_isError;
00049
00050 private:
00051 TestFailure( const TestFailure &other );
00052 TestFailure &operator =( const TestFailure& other );
00053 };
00054
00055
00056 CPPUNIT_NS_END
00057
00058 #endif // CPPUNIT_TESTFAILURE_H