My Project  UNKNOWN_GIT_VERSION
Public Member Functions | Private Member Functions | Private Attributes
CxxTest::DynamicSuiteDescription< S > Class Template Reference

#include <RealDescriptions.h>

Public Member Functions

 DynamicSuiteDescription ()
 
 DynamicSuiteDescription (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests, S *&argSuite, unsigned argCreateLine, unsigned argDestroyLine)
 
void initialize (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests, S *&argSuite, unsigned argCreateLine, unsigned argDestroyLine)
 
TestSuitesuite () const
 
bool setUp ()
 
bool tearDown ()
 
- Public Member Functions inherited from CxxTest::CommonDynamicSuiteDescription
 CommonDynamicSuiteDescription ()
 
 CommonDynamicSuiteDescription (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests, unsigned argCreateLine, unsigned argDestroyLine)
 
void initialize (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests, unsigned argCreateLine, unsigned argDestroyLine)
 
- Public Member Functions inherited from CxxTest::RealSuiteDescription
 RealSuiteDescription ()
 
 RealSuiteDescription (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests)
 
void initialize (const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests)
 
const char * file () const
 
unsigned line () const
 
const char * suiteName () const
 
TestDescriptionfirstTest ()
 
const TestDescriptionfirstTest () const
 
SuiteDescriptionnext ()
 
const SuiteDescriptionnext () const
 
unsigned numTests () const
 
const TestDescriptiontestDescription (unsigned i) const
 
void activateAllTests ()
 
bool leaveOnly (const char *testName)
 
- Public Member Functions inherited from CxxTest::SuiteDescription
virtual ~SuiteDescription ()
 

Private Member Functions

S * realSuite () const
 
void setSuite (S *s)
 
void createSuite ()
 
void destroySuite ()
 

Private Attributes

S ** _suite
 

Additional Inherited Members

- Protected Attributes inherited from CxxTest::CommonDynamicSuiteDescription
unsigned _createLine
 
unsigned _destroyLine
 

Detailed Description

template<class S>
class CxxTest::DynamicSuiteDescription< S >

Definition at line 127 of file RealDescriptions.h.

Constructor & Destructor Documentation

◆ DynamicSuiteDescription() [1/2]

template<class S >
CxxTest::DynamicSuiteDescription< S >::DynamicSuiteDescription ( )
inline

Definition at line 130 of file RealDescriptions.h.

130 {}

◆ DynamicSuiteDescription() [2/2]

template<class S >
CxxTest::DynamicSuiteDescription< S >::DynamicSuiteDescription ( const char *  argFile,
unsigned  argLine,
const char *  argSuiteName,
List argTests,
S *&  argSuite,
unsigned  argCreateLine,
unsigned  argDestroyLine 
)
inline

Definition at line 131 of file RealDescriptions.h.

134  :
135  CommonDynamicSuiteDescription( argFile, argLine, argSuiteName, argTests, argCreateLine, argDestroyLine )
136  {
137  _suite = &argSuite;
138  }

Member Function Documentation

◆ createSuite()

template<class S >
void CxxTest::DynamicSuiteDescription< S >::createSuite ( )
inlineprivate

Definition at line 160 of file RealDescriptions.h.

161  {
162  setSuite( S::createSuite() );
163  }

◆ destroySuite()

template<class S >
void CxxTest::DynamicSuiteDescription< S >::destroySuite ( )
inlineprivate

Definition at line 165 of file RealDescriptions.h.

166  {
167  S *s = realSuite();
168  setSuite( 0 );
169  S::destroySuite( s );
170  }

◆ initialize()

template<class S >
void CxxTest::DynamicSuiteDescription< S >::initialize ( const char *  argFile,
unsigned  argLine,
const char *  argSuiteName,
List argTests,
S *&  argSuite,
unsigned  argCreateLine,
unsigned  argDestroyLine 
)
inline

Definition at line 140 of file RealDescriptions.h.

144  {
146  argSuiteName, argTests,
147  argCreateLine, argDestroyLine );
148  _suite = &argSuite;
149  }

◆ realSuite()

template<class S >
S* CxxTest::DynamicSuiteDescription< S >::realSuite ( ) const
inlineprivate

Definition at line 157 of file RealDescriptions.h.

157 { return *_suite; }

◆ setSuite()

template<class S >
void CxxTest::DynamicSuiteDescription< S >::setSuite ( S *  s)
inlineprivate

Definition at line 158 of file RealDescriptions.h.

158 { *_suite = s; }

◆ setUp()

template<class S >
bool CxxTest::DynamicSuiteDescription< S >::setUp ( )
virtual

Implements CxxTest::Link.

Definition at line 176 of file RealDescriptions.h.

177  {
178  _TS_TRY {
179  _TSM_ASSERT_THROWS_NOTHING( file(), _createLine, "Exception thrown from createSuite()", createSuite() );
180  _TSM_ASSERT( file(), _createLine, "createSuite() failed", suite() != 0 );
181  }
182  _TS_CATCH_ABORT( { return false; } );
183 
184  return (suite() != 0);
185  }

◆ suite()

template<class S >
TestSuite* CxxTest::DynamicSuiteDescription< S >::suite ( ) const
inlinevirtual

Implements CxxTest::SuiteDescription.

Definition at line 151 of file RealDescriptions.h.

151 { return realSuite(); }

◆ tearDown()

template<class S >
bool CxxTest::DynamicSuiteDescription< S >::tearDown ( )
virtual

Implements CxxTest::Link.

Definition at line 188 of file RealDescriptions.h.

189  {
190  if ( !_suite )
191  return true;
192 
193  _TS_TRY {
194  _TSM_ASSERT_THROWS_NOTHING( file(), _destroyLine, "destroySuite() failed", destroySuite() );
195  }
196  _TS_CATCH_ABORT( { return false; } );
197 
198  return true;
199  }

Field Documentation

◆ _suite

template<class S >
S** CxxTest::DynamicSuiteDescription< S >::_suite
private

Definition at line 172 of file RealDescriptions.h.


The documentation for this class was generated from the following file:
CxxTest::DynamicSuiteDescription::realSuite
S * realSuite() const
Definition: RealDescriptions.h:157
_TSM_ASSERT
#define _TSM_ASSERT(f, l, m, e)
Definition: TestSuite.h:242
CxxTest::DynamicSuiteDescription::destroySuite
void destroySuite()
Definition: RealDescriptions.h:165
CxxTest::s
char * s
Definition: ValueTraits.h:143
CxxTest::CommonDynamicSuiteDescription::CommonDynamicSuiteDescription
CommonDynamicSuiteDescription()
Definition: RealDescriptions.cpp:185
CxxTest::DynamicSuiteDescription::createSuite
void createSuite()
Definition: RealDescriptions.h:160
CxxTest::CommonDynamicSuiteDescription::_createLine
unsigned _createLine
Definition: RealDescriptions.h:120
CxxTest::RealSuiteDescription::file
const char * file() const
Definition: RealDescriptions.cpp:123
CxxTest::CommonDynamicSuiteDescription::initialize
void initialize(const char *argFile, unsigned argLine, const char *argSuiteName, List &argTests, unsigned argCreateLine, unsigned argDestroyLine)
Definition: RealDescriptions.cpp:194
_TSM_ASSERT_THROWS_NOTHING
#define _TSM_ASSERT_THROWS_NOTHING(f, l, m, e)
Definition: TestSuite.h:465
_TS_CATCH_ABORT
#define _TS_CATCH_ABORT(b)
Definition: TestSuite.h:216
CxxTest::CommonDynamicSuiteDescription::_destroyLine
unsigned _destroyLine
Definition: RealDescriptions.h:120
_TS_TRY
#define _TS_TRY
Definition: TestSuite.h:209
CxxTest::DynamicSuiteDescription::_suite
S ** _suite
Definition: RealDescriptions.h:172
CxxTest::DynamicSuiteDescription::suite
TestSuite * suite() const
Definition: RealDescriptions.h:151
CxxTest::DynamicSuiteDescription::setSuite
void setSuite(S *s)
Definition: RealDescriptions.h:158