summaryrefslogtreecommitdiff
path: root/src/cppunit/XmlTestResultOutputter.cpp
diff options
context:
space:
mode:
authorBaptiste Lepilleur <gaiacrtn@free.fr>2001-10-05 21:27:15 +0000
committerBaptiste Lepilleur <gaiacrtn@free.fr>2001-10-05 21:27:15 +0000
commitfbd454f554f13680fe62b36fb7a5829f6dc0c396 (patch)
tree4ef06f5085f7e68ebc144dd78560afec3e3aadc2 /src/cppunit/XmlTestResultOutputter.cpp
parent6a1755ef0e36aeb1ac2df0a46e5dafe08a4699ee (diff)
downloadcppunit-fbd454f554f13680fe62b36fb7a5829f6dc0c396.tar.gz
Include/cppunit/Asserter.
include/cppunit/Asserter.h : * src/cppunit/Asserter.cpp : added. Helper to create assertion macros. * src/cppunit/cppunit.dsp : * src/cppunit/Makefile.am : * include/cppunit/Makefile.am : added Asserter.h and Asserter.cpp. * include/cppunit/Exception.h : * src/cppunit/Exception.cpp : added constructor that take a SourceLine argument. Deprecated static constant and old constructor. Fixed some constness issues. * examples/cppunittest/ExceptionTest.cpp : Refactored. * NEWS : partially updated (need to be more detailed) * include/cppunit/NotEqualException.h : * src/cppunit/NotEqualException.cpp : added constructor that take a SourceLine argument. Deprecated old constructor. Added a third element to compose message. * examples/cppunittest/NotEqualExceptionTest.cpp : moved to "Core" suite. Added test for SourceLine() and additionalMessage(). Refactored. * include/cppunit/SourceLine.h : * src/cppunit/SourceLine.cpp : added. Result of applying IntroduceParameterObject refactoring on filename & line number... * include/cppunit/TestAssert.h : * src/cppunit/TestAssert.cpp : deprecated old assert functions. added functions assertEquals() and assertDoubleEquals() which use SourceLine. * src/cppunit/TestCase.cpp : Modified for SourceLine. * include/cppunit/TestFailure.h : * src/cppunit/TestFailure.cpp : added failedTestName(), and sourceLine(). * src/msvc6/testrunner/TestRunnerDlg.cpp : modified to use SourceLine. * include/cppunit/TextTestResult.h : * src/cppunit/TextTestResult.cpp : corrected include order and switched to angled brackets. Refactored. Don't print failure location if not available. Not equal failure dump additional message if available. * src/cppunit/TextTestRunner.cpp : run() now returns a boolean to indicate if the run was sucessful. * src/cppunit/XmlTestResultOutputter.cpp : replaced itoa() with OStringStream. Refactored. * examples/cppunittest/XmlUniformiser.h : * examples/cppunittest/XmlUniformiser.cpp : CPPUNITTEST_ASSERT_XML_EQUAL capture failure location. Refactored checkXmlEqual(). * examples/cppunittest/XmlUniformiserTest.h : * examples/cppunittest/XmlUniformiserTest.cpp : added test for CPPUNITTEST_ASSERT_XML_EQUAL. * include/cppunit/XmlTestResultOutputter.h : * src/cppunit/XmlTestResultOutputter.cpp : updated to use SourceLine.
Diffstat (limited to 'src/cppunit/XmlTestResultOutputter.cpp')
-rw-r--r--src/cppunit/XmlTestResultOutputter.cpp25
1 files changed, 16 insertions, 9 deletions
diff --git a/src/cppunit/XmlTestResultOutputter.cpp b/src/cppunit/XmlTestResultOutputter.cpp
index 590c617..7e81c7c 100644
--- a/src/cppunit/XmlTestResultOutputter.cpp
+++ b/src/cppunit/XmlTestResultOutputter.cpp
@@ -139,8 +139,9 @@ XmlTestResultOutputter::Node::escape( std::string value ) const
std::string
XmlTestResultOutputter::Node::asString( int value )
{
- char buffer[16];
- return ::itoa( value, buffer, 10 );
+ OStringStream stream;
+ stream << value;
+ return stream.str();
}
@@ -286,18 +287,24 @@ XmlTestResultOutputter::makeFailedTestNode( Test *test,
testNode->addNode( new Node( "FailureType",
failure->isError() ? "Error" : "Assertion" ) );
- if ( thrownException->lineNumber() != Exception::UNKNOWNLINENUMBER )
- {
- Node *locationNode = new Node( "Location" );
- testNode->addNode( locationNode );
- locationNode->addNode( new Node( "File", thrownException->fileName() ) );
- locationNode->addNode( new Node( "Line", thrownException->lineNumber() ) );
- }
+ if ( failure->sourceLine().isValid() )
+ testNode->addNode( makeFailureLocationNode( failure ) );
return testNode;
}
XmlTestResultOutputter::Node *
+XmlTestResultOutputter::makeFailureLocationNode( TestFailure *failure )
+{
+ Node *locationNode = new Node( "Location" );
+ SourceLine sourceLine = failure->sourceLine();
+ locationNode->addNode( new Node( "File", sourceLine.fileName() ) );
+ locationNode->addNode( new Node( "Line", sourceLine.lineNumber() ) );
+ return locationNode;
+}
+
+
+XmlTestResultOutputter::Node *
XmlTestResultOutputter::makeSucessfulTestNode( Test *test,
int testNumber )
{