Blame src/cppunit/TextOutputter.cpp

Packit Service e31359
#include <cppunit/Exception.h>
Packit Service e31359
#include <cppunit/SourceLine.h>
Packit Service e31359
#include <cppunit/TestFailure.h>
Packit Service e31359
#include <cppunit/TextOutputter.h>
Packit Service e31359
#include <cppunit/TestResultCollector.h>
Packit Service e31359
Packit Service e31359
Packit Service e31359
CPPUNIT_NS_BEGIN
Packit Service e31359
Packit Service e31359
Packit Service e31359
TextOutputter::TextOutputter( TestResultCollector *result,
Packit Service e31359
                              OStream &stream )
Packit Service e31359
    : m_result( result )
Packit Service e31359
    , m_stream( stream )
Packit Service e31359
{
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
TextOutputter::~TextOutputter()
Packit Service e31359
{
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::write() 
Packit Service e31359
{
Packit Service e31359
  printHeader();
Packit Service e31359
  m_stream << "\n";
Packit Service e31359
  printFailures();
Packit Service e31359
  m_stream << "\n";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailures()
Packit Service e31359
{
Packit Service e31359
  TestResultCollector::TestFailures::const_iterator itFailure = m_result->failures().begin();
Packit Service e31359
  int failureNumber = 1;
Packit Service e31359
  while ( itFailure != m_result->failures().end() ) 
Packit Service e31359
  {
Packit Service e31359
    m_stream  <<  "\n";
Packit Service e31359
    printFailure( *itFailure++, failureNumber++ );
Packit Service e31359
  }
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailure( TestFailure *failure,
Packit Service e31359
                             int failureNumber )
Packit Service e31359
{
Packit Service e31359
  printFailureListMark( failureNumber );
Packit Service e31359
  m_stream << ' ';
Packit Service e31359
  printFailureTestName( failure );
Packit Service e31359
  m_stream << ' ';
Packit Service e31359
  printFailureType( failure );
Packit Service e31359
  m_stream << ' ';
Packit Service e31359
  printFailureLocation( failure->sourceLine() );
Packit Service e31359
  m_stream << "\n";
Packit Service e31359
  printFailureDetail( failure->thrownException() );
Packit Service e31359
  m_stream << "\n";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureListMark( int failureNumber )
Packit Service e31359
{
Packit Service e31359
  m_stream << failureNumber << ")";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureTestName( TestFailure *failure )
Packit Service e31359
{
Packit Service e31359
  m_stream << "test: " << failure->failedTestName();
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureType( TestFailure *failure )
Packit Service e31359
{
Packit Service e31359
  m_stream << "("
Packit Service e31359
           << (failure->isError() ? "E" : "F")
Packit Service e31359
           << ")";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureLocation( SourceLine sourceLine )
Packit Service e31359
{
Packit Service e31359
  if ( !sourceLine.isValid() )
Packit Service e31359
    return;
Packit Service e31359
Packit Service e31359
  m_stream << "line: " << sourceLine.lineNumber()
Packit Service e31359
           << ' ' << sourceLine.fileName();
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureDetail( Exception *thrownException )
Packit Service e31359
{
Packit Service e31359
  m_stream  <<  thrownException->message().shortDescription()  <<  "\n";
Packit Service e31359
  m_stream  <<  thrownException->message().details();
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printHeader()
Packit Service e31359
{
Packit Service e31359
  if ( m_result->wasSuccessful() )
Packit Service e31359
    m_stream << "\nOK (" << m_result->runTests () << " tests)\n" ;
Packit Service e31359
  else
Packit Service e31359
  {
Packit Service e31359
    m_stream << "\n";
Packit Service e31359
    printFailureWarning();
Packit Service e31359
    printStatistics();
Packit Service e31359
  }
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printFailureWarning()
Packit Service e31359
{
Packit Service e31359
  m_stream  << "!!!FAILURES!!!\n";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TextOutputter::printStatistics()
Packit Service e31359
{
Packit Service e31359
  m_stream  << "Test Results:\n";
Packit Service e31359
Packit Service e31359
  m_stream  <<  "Run:  "  <<  m_result->runTests()
Packit Service e31359
            <<  "   Failures: "  <<  m_result->testFailures()
Packit Service e31359
            <<  "   Errors: "  <<  m_result->testErrors()
Packit Service e31359
            <<  "\n";
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
CPPUNIT_NS_END
Packit Service e31359