00001 
#ifndef CPPUNIT_TESTCOMPSITE_H    // -*- C++ -*-
00002 
#define CPPUNIT_TESTCOMPSITE_H
00003 
00004 
#include <cppunit/Test.h>
00005 
#include <string>
00006 
00007 
CPPUNIT_NS_BEGIN
00008 
00009 
00017 class CPPUNIT_API TestComposite : 
public Test
00018 {
00019 
public:
00020   TestComposite( 
const std::string &name = 
"" );
00021 
00022   ~TestComposite();
00023 
00024   
void run( 
TestResult *result );
00025 
00026   
int countTestCases() 
const;
00027   
00028   std::string 
getName() 
const;
00029 
00030 
private:
00031   TestComposite( 
const TestComposite &other );
00032   TestComposite &operator =( 
const TestComposite &other ); 
00033 
00034   
virtual void doStartSuite( 
TestResult *controller );
00035   
virtual void doRunChildTests( 
TestResult *controller );
00036   
virtual void doEndSuite( 
TestResult *controller );
00037 
00038 
private:
00039   const std::string m_name;
00040 };
00041 
00042 
00043 
CPPUNIT_NS_END
00044 
00045 
#endif // CPPUNIT_TESTCOMPSITE_H