Edit

kc3-lang/ftgl/mac/Includes/cppunit/extensions/TestDecorator.h

Branch :

  • Show log

    Commit

  • Author : henry
    Date : 2002-12-17 08:40:46
    Hash : 705371da
    Message : Adding unit tests

  • mac/Includes/cppunit/extensions/TestDecorator.h
  • #ifndef CPPUNIT_EXTENSIONS_TESTDECORATOR_H
    #define CPPUNIT_EXTENSIONS_TESTDECORATOR_H
    
    #include <cppunit/Portability.h>
    #include <cppunit/Test.h>
    
    namespace CppUnit {
    
    class TestResult;
    
    
    /*! \brief  Decorator for Tests.
     *
     * TestDecorator provides an alternate means to extend functionality
     * of a test class without subclassing the test.  Instead, one can
     * subclass the decorater and use it to wrap the test class.
     *
     * Does not assume ownership of the test it decorates
     */ 
    class CPPUNIT_API TestDecorator : public Test 
    {
    public:
        TestDecorator   (Test *test);
        ~TestDecorator  ();
    
        void        run             (TestResult *result);
        int         countTestCases  () const;
        std::string getName         () const;
        std::string toString        () const;
    
    protected:
        Test        *m_test;
    
    private:
        TestDecorator( const TestDecorator &);
        void operator =( const TestDecorator & );
    };
    
    
    inline TestDecorator::TestDecorator (Test *test)
    { m_test = test; }
    
    
    inline TestDecorator::~TestDecorator ()
    {}
    
    
    inline int TestDecorator::countTestCases () const
    { return m_test->countTestCases (); }
    
    
    inline void TestDecorator::run (TestResult *result)
    { m_test->run (result); }
    
    
    inline std::string TestDecorator::toString () const
    { return m_test->toString (); }
    
    
    inline std::string TestDecorator::getName () const
    { return m_test->getName(); }
    
    } // namespace CppUnit
    
    #endif