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