LCOV - code coverage report
Current view: top level - usr/include/cppunit/extensions - TestFixtureFactory.h (source / functions) Hit Total Coverage
Test: jami-coverage-filtered.info Lines: 3 3 100.0 %
Date: 2025-08-24 09:11:10 Functions: 47 51 92.2 %

          Line data    Source code
       1             : #ifndef CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
       2             : #define CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
       3             : 
       4             : #include <cppunit/Portability.h>
       5             : 
       6             : 
       7             : CPPUNIT_NS_BEGIN
       8             : 
       9             : 
      10             : class TestFixture;
      11             : 
      12             : /*! \brief Abstract TestFixture factory (Implementation).
      13             :  *
      14             :  * Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
      15             :  */
      16             : class TestFixtureFactory
      17             : {
      18             : public:
      19             :   //! Creates a new TestFixture instance.
      20             :   virtual TestFixture *makeFixture() =0;
      21             : 
      22          46 :   virtual ~TestFixtureFactory() {}
      23             : };
      24             : 
      25             : 
      26             : /*! \brief Concret TestFixture factory (Implementation).
      27             :  *
      28             :  * Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
      29             :  */
      30             : template<class TestFixtureType>
      31             : class ConcretTestFixtureFactory : public CPPUNIT_NS::TestFixtureFactory
      32             : {
      33             :   /*! \brief Returns a new TestFixture instance.
      34             :    * \return A new fixture instance. The fixture instance is returned by
      35             :    *         the TestFixtureFactory passed on construction. The actual type 
      36             :    *         is that of the fixture on which the static method suite() 
      37             :    *         was called.
      38             :    */
      39         287 :   TestFixture *makeFixture()
      40             :   {
      41         287 :     return new TestFixtureType();
      42             :   }
      43             : };
      44             : 
      45             : 
      46             : CPPUNIT_NS_END
      47             : 
      48             : 
      49             : #endif // CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
      50             : 

Generated by: LCOV version 1.14