| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- #ifndef CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
- #define CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
- #include <cppunit/Portability.h>
- #include <string>
- #include <cppunit/TestRunner.h>
- CPPUNIT_NS_BEGIN
- class Outputter;
- class Test;
- class TestSuite;
- class TextOutputter;
- class TestResult;
- class TestResultCollector;
- /*!
- * \brief A text mode test runner.
- * \ingroup WritingTestResult
- * \ingroup ExecutingTest
- *
- * The test runner manage the life cycle of the added tests.
- *
- * The test runner can run only one of the added tests or all the tests.
- *
- * TestRunner prints out a trace as the tests are executed followed by a
- * summary at the end. The trace and summary print are optional.
- *
- * Here is an example of use:
- *
- * \code
- * CppUnit::TextTestRunner runner;
- * runner.addTest( ExampleTestCase::suite() );
- * runner.run( "", true ); // Run all tests and wait
- * \endcode
- *
- * The trace is printed using a TextTestProgressListener. The summary is printed
- * using a TextOutputter.
- *
- * You can specify an alternate Outputter at construction
- * or later with setOutputter().
- *
- * After construction, you can register additional TestListener to eventManager(),
- * for a custom progress trace, for example.
- *
- * \code
- * CppUnit::TextTestRunner runner;
- * runner.addTest( ExampleTestCase::suite() );
- * runner.setOutputter( CppUnit::CompilerOutputter::defaultOutputter(
- * &runner.result(),
- * std::cerr ) );
- * MyCustomProgressTestListener progress;
- * runner.eventManager().addListener( &progress );
- * runner.run( "", true ); // Run all tests and wait
- * \endcode
- *
- * \see CompilerOutputter, XmlOutputter, TextOutputter.
- */
- class CPPUNIT_API TextTestRunner : public CPPUNIT_NS::TestRunner
- {
- public:
- TextTestRunner( Outputter *outputter =NULL );
- virtual ~TextTestRunner();
- bool run( std::string testPath ="",
- bool doWait = false,
- bool doPrintResult = true,
- bool doPrintProgress = true );
- void setOutputter( Outputter *outputter );
- TestResultCollector &result() const;
- TestResult &eventManager() const;
- public: // overridden from TestRunner (to avoid hidden virtual function warning)
- virtual void run( TestResult &controller,
- const std::string &testPath = "" );
- protected:
- virtual void wait( bool doWait );
- virtual void printResult( bool doPrintResult );
- TestResultCollector *m_result;
- TestResult *m_eventManager;
- Outputter *m_outputter;
- };
- CPPUNIT_NS_END
- #endif // CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
|