diff options
Diffstat (limited to 'src/cppunit/XmlTestResultOutputter.cpp')
| -rw-r--r-- | src/cppunit/XmlTestResultOutputter.cpp | 25 |
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 ) { |
