diff options
| author | Baptiste Lepilleur <gaiacrtn@free.fr> | 2002-06-13 14:31:01 +0000 |
|---|---|---|
| committer | Baptiste Lepilleur <gaiacrtn@free.fr> | 2002-06-13 14:31:01 +0000 |
| commit | abd178318ae3cdb6cc0a700e77414a33ef9297ca (patch) | |
| tree | 76bb1f6d0bf28bfe23c710487d0b20bd95878ca4 /src/cppunit/Exception.cpp | |
| parent | 3702f4f7603f1e49b4d6747c49e795bad712eab7 (diff) | |
| download | cppunit-abd178318ae3cdb6cc0a700e77414a33ef9297ca.tar.gz | |
Include/cppunit/Asserter.
include/cppunit/Asserter.h:
* src/cppunit/Asserter.cpp: added functions that take a Message as a
parameter. Existing function have a short description indicating
an assertion failure.
* include/cppunit/CompilerOuputter.h:
* src/cppunit/CompilerOuputter.cpp: removed printNotEqualMessage() and
printDefaultMessage(). Updated to use Message.
* include/cppunit/Message.h:
* src/cppunit/Message.cpp: added. Represents a message associated to an
Exception.
* include/cppunit/Exception.h:
* src/cppunit/Exception.cpp: the message associated to the exception is now
stored as a Message instead of a string.
* include/cppunit/NotEqualException.cpp: constructs a Message instead of a
string.
* include/cppunit/TestAssert.h:
* src/cppunit/TestAssert.cpp: updated to use Asserter functions that
take a message when pertinent (CPPUNIT_FAIL...).
* include/cppunit/TestCaller.h:
* src/cppunit/TestCaller.cpp: exception not caught failure has a better
short description.
* src/cppunit/TestCase.cpp: better short description when setUp() or
tearDown() fail.
* src/msvc6/testrunner/TestRunnerDlg.cpp: replace '\n' in failure message
with space.
* examples/cppunittest/ExceptionTest.cpp:
* examples/cppunittest/NotEqualExceptionTest.cpp:
* examples/cppunittest/TestCallerTest.cpp:
* examples/cppunittest/TestFailureTest.cpp:
* examples/cppunittest/TestResultCollectorTest.h:
* examples/cppunittest/TestResultCollectorTest.cpp:
* examples/cppunittest/TestResultTest.cpp:
* examples/cppunittest/XmlOutputterTest.h:
* examples/cppunittest/XmlOutputterTest.cpp: updated to use Exception/Message.
* examples/cppunittest/MessageTest.h:
* examples/cppunittest/MessageTest.cpp: added. Unit test for Message.
Diffstat (limited to 'src/cppunit/Exception.cpp')
| -rw-r--r-- | src/cppunit/Exception.cpp | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/src/cppunit/Exception.cpp b/src/cppunit/Exception.cpp index ab8cdde..2c01324 100644 --- a/src/cppunit/Exception.cpp +++ b/src/cppunit/Exception.cpp @@ -17,48 +17,39 @@ const long Exception::UNKNOWNLINENUMBER = -1; #endif -/// Construct the exception -Exception::Exception( const Exception &other ) : - std::exception( other ) +Exception::Exception( const Exception &other ) + : std::exception( other ) { m_message = other.m_message; m_sourceLine = other.m_sourceLine; } -/*! - * \deprecated Use other constructor instead. - */ -Exception::Exception( std::string message, - SourceLine sourceLine ) : - m_message( message ), - m_sourceLine( sourceLine ) +Exception::Exception( const Message &message, + const SourceLine &sourceLine ) + : m_message( message ) + , m_sourceLine( sourceLine ) { } #ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED -/*! - * \deprecated Use other constructor instead. - */ Exception::Exception( std::string message, long lineNumber, - std::string fileName ) : - m_message( message ), - m_sourceLine( fileName, lineNumber ) + std::string fileName ) + : m_message( message ) + , m_sourceLine( fileName, lineNumber ) { } #endif -/// Destruct the exception -Exception::~Exception () throw() +Exception::~Exception() throw() { } -/// Perform an assignment -Exception& +Exception & Exception::operator =( const Exception& other ) { // Don't call superclass operator =(). VC++ STL implementation @@ -76,14 +67,16 @@ Exception::operator =( const Exception& other ) } -/// Return descriptive message const char* Exception::what() const throw() -{ - return m_message.c_str (); +{ + Exception *mutableThis = const_cast<Exception *>( this ); + mutableThis->m_whatMessage = m_message.shortDescription() + "\n" + + m_message.details(); + return m_whatMessage.c_str(); } -/// Location where the error occured + SourceLine Exception::sourceLine() const { @@ -91,8 +84,14 @@ Exception::sourceLine() const } +Message +Exception::message() const +{ + return m_message; +} + + #ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED -/// The line on which the error occurred long Exception::lineNumber() const { @@ -101,7 +100,6 @@ Exception::lineNumber() const } -/// The file in which the error occurred std::string Exception::fileName() const { |
