DCMTK  Version 3.6.6
OFFIS DICOM Toolkit
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
OFTestManager Class Reference

The test manager singleton manages the list of available test cases and executes them. More...

Public Member Functions

OFTestTestcurrentTest ()
 
void addTest (OFTestTest *test)
 Register a test with this test manager. More...
 
int runTests (const OFList< OFTestTest * > &tests, const char *module)
 Run a list of test cases. More...
 
int run (int argc, char *argv[], const char *module)
 Handle the given arguments and run the requested test case. More...
 

Static Public Member Functions

static OFTestManagerinstance ()
 

Private Member Functions

 OFTestManager ()
 Private constructor, this is a singleton!
 
 OFTestManager (const OFTestManager &obj)
 Private undefined copy constructor.
 
OFTestManageroperator= (const OFTestManager &obj)
 Private undefined assignment operator.
 
OFBool buildTestsToRun (OFCommandLine &cmd, OFList< OFTestTest * > &tests) const
 Build a list of tests which should be executed from the command line. More...
 
OFBool testMatches (const OFTestTest *test, const OFString &str) const
 Test if the test name matches the given name. More...
 

Private Attributes

OFList< OFTestTest * > tests_
 List of tests. Statically allocated, so don't have to be freed.
 
OFTestTestcurTest_
 Currently running test.
 
OFBool exhaustive_
 Should slow tests be run, too?
 

Detailed Description

The test manager singleton manages the list of available test cases and executes them.

Member Function Documentation

◆ addTest()

void OFTestManager::addTest ( OFTestTest test)
inline

Register a test with this test manager.

Parameters
testthe test to register

References OFList< T >::push_back(), and tests_.

◆ buildTestsToRun()

OFBool OFTestManager::buildTestsToRun ( OFCommandLine cmd,
OFList< OFTestTest * > &  tests 
) const
inlineprivate

Build a list of tests which should be executed from the command line.

Parameters
cmdcommand line arguments which should be parsed
testswill be set to the list of tests to run
Returns
OFFalse if the command line could not be handled.

References OFCommandLine::getParamCount().

◆ currentTest()

OFTestTest& OFTestManager::currentTest ( )
inline
Returns
the currently running test case

References curTest_.

◆ instance()

static OFTestManager& OFTestManager::instance ( )
inlinestatic
Returns
the only instance of the test manager

◆ run()

int OFTestManager::run ( int  argc,
char *  argv[],
const char *  module 
)
inline

Handle the given arguments and run the requested test case.

This function should be used for implementing main().

Parameters
argcnumber of arguments
argvlist of arguments
modulename of the module that we are testing for
Returns
0 in case of success, else an error value.

◆ runTests()

int OFTestManager::runTests ( const OFList< OFTestTest * > &  tests,
const char *  module 
)
inline

Run a list of test cases.

The results will be printed on the console.

Parameters
teststests to execute

◆ testMatches()

OFBool OFTestManager::testMatches ( const OFTestTest test,
const OFString str 
) const
inlineprivate

Test if the test name matches the given name.

This function supports '?' and '*' for wildcards. However, '*' can only be used at the end of string.

Parameters
testtest to check against
strthe string describing the tests
Returns
OFTrue if we found a match, else OFFalse

References OFString::c_str(), and OFTestTest::getTestName().


The documentation for this class was generated from the following file:


Generated on Thu Jan 14 2021 for DCMTK Version 3.6.6 by Doxygen 1.8.18