#ifndef CPPUNIT_TESTSUITE_H
#define CPPUNIT_TESTSUITE_H
#include <cppunit/Portability.h>
#if CPPUNIT_NEED_DLL_DECL
#pragma warning( push )
#pragma warning( disable: 4251 )
#endif
#include <cppunit/Test.h>
#include <vector>
#include <string>
using std::string;
using std::vector;
namespace CppUnit {
class TestResult;
#if CPPUNIT_NEED_DLL_DECL
template class CPPUNIT_API vector<Test *>;
#endif
class CPPUNIT_API TestSuite : public Test
{
public:
TestSuite( string name = "" );
~TestSuite();
void run( TestResult *result );
int countTestCases() const;
string getName() const;
string toString() const;
void addTest( Test *test );
const vector<Test *> &getTests() const;
virtual void deleteContents();
private:
TestSuite( const TestSuite &other );
TestSuite &operator =( const TestSuite &other );
private:
vector<Test *> m_tests;
const string m_name;
};
}
#if CPPUNIT_NEED_DLL_DECL
#pragma warning( pop )
#endif
#endif