CppUnit project page FAQ

Classes | Macros
Creating custom assertions
Collaboration diagram for Creating custom assertions:

Classes

class  AdditionalMessage
 An additional Message for assertions.Provides a implicit constructor that takes a single string. This allow this class to be used as the message arguments in macros. More...
 
class  Message
 Message associated to an Exception.A message is composed of two items: More...
 
class  SourceLine
 Represents a source line location.Used to capture the failure location in assertion. More...
 

Macros

#define NORETURN
 A set of functions to help writing assertion macros.Here is an example of assertion, a simplified version of the actual assertion implemented in examples/cppunittest/XmlUniformiser.h: More...
 
#define CPPUNIT_SOURCELINE()   CPPUNIT_NS::SourceLine( __FILE__, __LINE__ )
 Constructs a SourceLine object initialized with the location where the macro is expanded. More...
 

Detailed Description

Macro Definition Documentation

#define CPPUNIT_SOURCELINE ( )    CPPUNIT_NS::SourceLine( __FILE__, __LINE__ )

Constructs a SourceLine object initialized with the location where the macro is expanded.

Used to write your own assertion macros.

See Also
Asserter for example of usage.
#define NORETURN

A set of functions to help writing assertion macros.Here is an example of assertion, a simplified version of the actual assertion implemented in examples/cppunittest/XmlUniformiser.h:

* #include <cppunit/SourceLine.h>
* #include <cppunit/TestAssert.h>
*
* void
* checkXmlEqual( std::string expectedXml,
* std::string actualXml,
* CppUnit::SourceLine sourceLine )
* {
* std::string expected = XmlUniformiser( expectedXml ).stripped();
* std::string actual = XmlUniformiser( actualXml ).stripped();
*
* if ( expected == actual )
* return;
*
* ::CppUnit::Asserter::failNotEqual( expected,
* actual,
* sourceLine );
* }
*
*
* #define CPPUNITTEST_ASSERT_XML_EQUAL( expected, actual ) \
* checkXmlEqual( expected, actual, \
*

Send comments to:
CppUnit Developers