Blame examples/DumperPlugIn/DumperListener.h

Packit Service e31359
// //////////////////////////////////////////////////////////////////////////
Packit Service e31359
// Header file DumperListener.h for class DumperListener
Packit Service e31359
// (c)Copyright 2000, Baptiste Lepilleur.
Packit Service e31359
// Created: 2002/04/19
Packit Service e31359
// //////////////////////////////////////////////////////////////////////////
Packit Service e31359
#ifndef DUMPERLISTENER_H
Packit Service e31359
#define DUMPERLISTENER_H
Packit Service e31359
Packit Service e31359
#include <stack>
Packit Service e31359
#include <cppunit/TestListener.h>
Packit Service e31359
#include <cppunit/TestPath.h>
Packit Service e31359
Packit Service e31359
Packit Service e31359
/// TestListener that prints a flatten or hierarchical view of the test tree.
Packit Service e31359
class DumperListener : public CPPUNIT_NS::TestListener
Packit Service e31359
{
Packit Service e31359
public:
Packit Service e31359
  DumperListener( bool flatten );
Packit Service e31359
Packit Service e31359
  virtual ~DumperListener();
Packit Service e31359
Packit Service e31359
  void startTest( CPPUNIT_NS::Test *test );
Packit Service e31359
Packit Service e31359
  void endTest( CPPUNIT_NS::Test *test );
Packit Service e31359
Packit Service e31359
  void startSuite( CPPUNIT_NS::Test *suite );
Packit Service e31359
Packit Service e31359
  void endSuite( CPPUNIT_NS::Test *suite );
Packit Service e31359
Packit Service e31359
  void endTestRun( CPPUNIT_NS::Test *test, 
Packit Service e31359
                   CPPUNIT_NS::TestResult *eventManager );
Packit Service e31359
Packit Service e31359
private:
Packit Service e31359
  /// Prevents the use of the copy constructor.
Packit Service e31359
  DumperListener( const DumperListener &other );
Packit Service e31359
Packit Service e31359
  /// Prevents the use of the copy operator.
Packit Service e31359
  void operator =( const DumperListener &other );
Packit Service e31359
Packit Service e31359
  void printPath( CPPUNIT_NS::Test *test, 
Packit Service e31359
                  bool isSuite );
Packit Service e31359
Packit Service e31359
  void printFlattenedPath( bool isSuite );
Packit Service e31359
Packit Service e31359
  void printIndentedPathChild();
Packit Service e31359
Packit Service e31359
  std::string makeIndentString( int indentLevel );
Packit Service e31359
Packit Service e31359
private:
Packit Service e31359
  bool m_flatten;
Packit Service e31359
  CPPUNIT_NS::TestPath m_path;
Packit Service e31359
  
Packit Service e31359
  int m_suiteCount;
Packit Service e31359
  int m_testCount;
Packit Service e31359
  int m_suiteWithTestCount;
Packit Service e31359
Packit Service e31359
  std::stack<bool> m_suiteHasTest;
Packit Service e31359
};
Packit Service e31359
Packit Service e31359
Packit Service e31359
Packit Service e31359
// Inlines methods for DumperListener:
Packit Service e31359
// -----------------------------------
Packit Service e31359
Packit Service e31359
Packit Service e31359
Packit Service e31359
#endif  // DUMPERLISTENER_H