Blame include/cppunit/extensions/TestFixtureFactory.h
|
Packit |
8c9aa0 |
#ifndef CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
|
|
Packit |
8c9aa0 |
#define CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
#include <cppunit/Portability.h>
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
CPPUNIT_NS_BEGIN
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
class TestFixture;
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
/*! \brief Abstract TestFixture factory (Implementation).
|
|
Packit |
8c9aa0 |
*
|
|
Packit |
8c9aa0 |
* Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
|
|
Packit |
8c9aa0 |
*/
|
|
Packit |
8c9aa0 |
class TestFixtureFactory
|
|
Packit |
8c9aa0 |
{
|
|
Packit |
8c9aa0 |
public:
|
|
Packit |
8c9aa0 |
//! Creates a new TestFixture instance.
|
|
Packit |
8c9aa0 |
virtual TestFixture *makeFixture() =0;
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
virtual ~TestFixtureFactory() {}
|
|
Packit |
8c9aa0 |
};
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
/*! \brief Concret TestFixture factory (Implementation).
|
|
Packit |
8c9aa0 |
*
|
|
Packit |
8c9aa0 |
* Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
|
|
Packit |
8c9aa0 |
*/
|
|
Packit |
8c9aa0 |
template<class TestFixtureType>
|
|
Packit |
8c9aa0 |
class ConcretTestFixtureFactory : public CPPUNIT_NS::TestFixtureFactory
|
|
Packit |
8c9aa0 |
{
|
|
Packit |
8c9aa0 |
/*! \brief Returns a new TestFixture instance.
|
|
Packit |
8c9aa0 |
* \return A new fixture instance. The fixture instance is returned by
|
|
Packit |
8c9aa0 |
* the TestFixtureFactory passed on construction. The actual type
|
|
Packit |
8c9aa0 |
* is that of the fixture on which the static method suite()
|
|
Packit |
8c9aa0 |
* was called.
|
|
Packit |
8c9aa0 |
*/
|
|
Packit |
8c9aa0 |
TestFixture *makeFixture()
|
|
Packit |
8c9aa0 |
{
|
|
Packit |
8c9aa0 |
return new TestFixtureType();
|
|
Packit |
8c9aa0 |
}
|
|
Packit |
8c9aa0 |
};
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
CPPUNIT_NS_END
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
|
|
Packit |
8c9aa0 |
#endif // CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
|
|
Packit |
8c9aa0 |
|