src/corelib/test_boost.cpp File Reference

#include <ncbi_pch.hpp>
#include <corelib/error_codes.hpp>
#include <corelib/ncbienv.hpp>
#include <corelib/ncbimisc.hpp>
#include <corelib/ncbiapp.hpp>
#include <corelib/ncbi_system.hpp>
#include <corelib/test_boost.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/tuple/elem.hpp>
#include <boost/preprocessor/tuple/eat.hpp>
#include <boost/test/included/unit_test.hpp>
#include <boost/test/results_collector.hpp>
#include <boost/test/results_reporter.hpp>
#include <boost/test/test_observer.hpp>
#include <boost/test/unit_test_log.hpp>
#include <boost/test/unit_test_log_formatter.hpp>
#include <boost/test/output/plain_report_formatter.hpp>
#include <boost/test/output/xml_report_formatter.hpp>
#include <boost/test/output/compiler_log_formatter.hpp>
#include <boost/test/output/xml_log_formatter.hpp>
#include <boost/test/utils/xml_printer.hpp>
#include <boost/test/detail/global_typedef.hpp>
#include <boost/test/detail/unit_test_parameters.hpp>
#include <boost/test/debug.hpp>
#include <list>
#include <vector>
#include <set>
#include <map>
#include <string>

Include dependency graph for test_boost.cpp:

Go to the source code of this file.

Classes

class  CNcbiBoostReporter
 Reporter for embedding in Boost framework and adding non-standard information to detailed report given by Boost. More...
class  CNcbiBoostLogger
 Logger for embedding in Boost framework and adding non-standard information to logging given by Boost. More...
class  CNcbiTestsObserver
 Special observer to embed in Boost.Test framework to initialize test dependencies before they started execution. More...
class  CNcbiTestsCollector
 Class that can walk through all tree of tests and register them inside CNcbiTestApplication. More...
class  CNcbiTestTreeElement
 Element of tests tree. More...
class  CNcbiTestsTreeBuilder
 Class for traversing all Boost tests tree and building tree structure in our own accessible manner. More...
class  CNcbiTestApplication
 Application for all unit tests. More...

Defines

#define NCBI_USE_ERRCODE_X   Corelib_TestBoost
#define DUMMY_TEST_FUNCTION_NAME   DummyTestFunction
#define IS_FLAG_DEFINED(flag)   BOOST_PP_TUPLE_ELEM(2, 1, IS_FLAG_DEFINED_I(BOOST_PP_CAT(NCBI_, flag)))
 Helper macro to check if NCBI preprocessor flag was defined empty or equal to 1.
#define IS_VAR_DEFINED(var)   BOOST_PP_TUPLE_ELEM(2, 1, IS_FLAG_DEFINED_I(var))
#define IS_FLAG_DEFINED_I(flag)   (BOOST_PP_CAT(IS_FLAG_DEFINED_II_, flag) (), false)
#define IS_FLAG_DEFINED_II_()   BOOST_PP_NIL, true) BOOST_PP_TUPLE_EAT(2) (BOOST_PP_NIL
#define IS_FLAG_DEFINED_II_1()   BOOST_PP_NIL, true) BOOST_PP_TUPLE_EAT(2) (BOOST_PP_NIL

Typedefs

typedef but::results_reporter::format TBoostRepFormatter
typedef but::unit_test_log_formatter TBoostLogFormatter
typedef set< but::test_unit * > TUnitsSet
typedef map< but::test_unit *,
TUnitsSet
TUnitToManyMap
typedef map< string, but::test_unit * > TStringToUnitMap

Functions

static CNcbiTestApplications_GetTestApp (void)
 Application for unit tests.
void DummyTestFunction (void)
void RegisterNcbiTestUserFunc (TNcbiTestUserFunction func, ETestUserFuncType func_type)
 Registrar of all user-defined functions.
void NcbiTestDependsOn (but::test_unit *tu, but::test_unit *dep_tu)
void NcbiTestDisable (but::test_unit *tu)
void NcbiTestSetGlobalDisabled (void)
 Disable execution of all tests in current configuration.
void NcbiTestSetGlobalSkipped (void)
 Skip execution of all tests in current configuration.
CExprParserNcbiTestGetIniParser (void)
 Get pointer to parser which will be used for evaluating conditions written in configuration file.
CArgDescriptionsNcbiTestGetArgDescrs (void)
 Get ArgDescriptions object which will be passed to application for parsing command line arguments.
but::test_unit * NcbiTestGetUnit (CTempString test_name)
 Get pointer to test unit by its name which can be partial, i.e.
END_NCBI_SCOPE but::test_suite * init_unit_test_suite (int argc, char *argv[])
 Global initialization function called from Boost framework.

Variables

const char * kTestConfigSectionName = "UNITTESTS_DISABLE"
const char * kTestConfigGlobalValue = "GLOBAL"
const char * kDummyTestCaseName = BOOST_STRINGIZE( DummyTestFunction )
const char * kTestResultPassed = "passed"
const char * kTestResultFailed = "failed"
const char * kTestResultTimeout = "timeout"
const char * kTestResultAborted = "aborted"
const char * kTestResultSkipped = "skipped"
const char * kTestResultDisabled = "disabled"


Define Documentation

#define DUMMY_TEST_FUNCTION_NAME   DummyTestFunction
 

Definition at line 89 of file test_boost.cpp.

Referenced by CNcbiTestApplication::x_AddDummyTest().

#define IS_FLAG_DEFINED flag   )     BOOST_PP_TUPLE_ELEM(2, 1, IS_FLAG_DEFINED_I(BOOST_PP_CAT(NCBI_, flag)))
 

Helper macro to check if NCBI preprocessor flag was defined empty or equal to 1.

Macro expands to true if flag was defined empty or equal to 1 and to false if it was defined to something else or wasn't defined at all.

Definition at line 962 of file test_boost.cpp.

Referenced by CNcbiTestApplication::x_InitCommonParserVars().

#define IS_FLAG_DEFINED_I flag   )     (BOOST_PP_CAT(IS_FLAG_DEFINED_II_, flag) (), false)
 

Definition at line 966 of file test_boost.cpp.

 
#define IS_FLAG_DEFINED_II_  )     BOOST_PP_NIL, true) BOOST_PP_TUPLE_EAT(2) (BOOST_PP_NIL
 

Definition at line 968 of file test_boost.cpp.

 
#define IS_FLAG_DEFINED_II_1  )     BOOST_PP_NIL, true) BOOST_PP_TUPLE_EAT(2) (BOOST_PP_NIL
 

Definition at line 970 of file test_boost.cpp.

#define IS_VAR_DEFINED var   )     BOOST_PP_TUPLE_ELEM(2, 1, IS_FLAG_DEFINED_I(var))
 

Definition at line 964 of file test_boost.cpp.

Referenced by CNcbiTestApplication::x_InitCommonParserVars().

#define NCBI_USE_ERRCODE_X   Corelib_TestBoost
 

Definition at line 78 of file test_boost.cpp.


Typedef Documentation

typedef but::unit_test_log_formatter TBoostLogFormatter
 

Definition at line 101 of file test_boost.cpp.

typedef but::results_reporter::format TBoostRepFormatter
 

Definition at line 100 of file test_boost.cpp.

typedef map<string, but::test_unit*> TStringToUnitMap
 

Definition at line 104 of file test_boost.cpp.

typedef set<but::test_unit*> TUnitsSet
 

Definition at line 102 of file test_boost.cpp.

typedef map<but::test_unit*, TUnitsSet> TUnitToManyMap
 

Definition at line 103 of file test_boost.cpp.


Function Documentation

void DummyTestFunction void   ) 
 

Definition at line 1026 of file test_boost.cpp.

References s_GetTestApp().

END_NCBI_SCOPE but::test_suite* init_unit_test_suite int  argc,
char *  argv[]
 

Global initialization function called from Boost framework.

Definition at line 1636 of file test_boost.cpp.

References CNcbiTestApplication::InitTestFramework(), and s_GetTestApp().

void NcbiTestDependsOn but::test_unit *  tu,
but::test_unit *  dep_tu
 

Definition at line 1589 of file test_boost.cpp.

References CNcbiTestApplication::AddTestDependsOn(), and s_GetTestApp().

void NcbiTestDisable but::test_unit *  tu  ) 
 

Definition at line 1595 of file test_boost.cpp.

References s_GetTestApp(), and CNcbiTestApplication::SetTestDisabled().

static CNcbiTestApplication& s_GetTestApp void   )  [static]
 

Application for unit tests.

Definition at line 808 of file test_boost.cpp.

Referenced by DummyTestFunction(), CNcbiTestsObserver::exception_caught(), init_unit_test_suite(), CNcbiBoostLogger::log_finish(), NcbiTestDependsOn(), NcbiTestDisable(), NcbiTestGetArgDescrs(), NcbiTestGetIniParser(), NcbiTestGetUnit(), NcbiTestSetGlobalDisabled(), NcbiTestSetGlobalSkipped(), RegisterNcbiTestUserFunc(), CNcbiBoostReporter::results_report_start(), CNcbiTestsObserver::test_finish(), CNcbiTestsObserver::test_start(), CNcbiTestsCollector::test_suite_start(), CNcbiBoostReporter::test_unit_report_start(), CNcbiTestsObserver::test_unit_start(), CNcbiTestsCollector::visit(), CNcbiTestApplication::x_CalcConfigValue(), and CNcbiTestApplication::x_ReadConfiguration().


Variable Documentation

const char* kDummyTestCaseName = BOOST_STRINGIZE( DummyTestFunction )
 

Definition at line 90 of file test_boost.cpp.

Referenced by CNcbiTestApplication::CollectTestUnit(), and CNcbiBoostReporter::test_unit_report_start().

const char* kTestConfigGlobalValue = "GLOBAL"
 

Definition at line 87 of file test_boost.cpp.

Referenced by CNcbiTestApplication::x_ReadConfiguration().

const char* kTestConfigSectionName = "UNITTESTS_DISABLE"
 

Definition at line 86 of file test_boost.cpp.

Referenced by CNcbiTestApplication::x_CalcConfigValue(), and CNcbiTestApplication::x_ReadConfiguration().

const char* kTestResultAborted = "aborted"
 

Definition at line 95 of file test_boost.cpp.

Referenced by CNcbiTestApplication::GetTestResultString().

const char* kTestResultDisabled = "disabled"
 

Definition at line 97 of file test_boost.cpp.

Referenced by CNcbiTestApplication::GetRanTestsCount(), and CNcbiTestApplication::GetTestResultString().

const char* kTestResultFailed = "failed"
 

Definition at line 93 of file test_boost.cpp.

Referenced by CNcbiTestApplication::GetTestResultString().

const char* kTestResultPassed = "passed"
 

Definition at line 92 of file test_boost.cpp.

const char* kTestResultSkipped = "skipped"
 

Definition at line 96 of file test_boost.cpp.

Referenced by CNcbiTestApplication::GetRanTestsCount().

const char* kTestResultTimeout = "timeout"
 

Definition at line 94 of file test_boost.cpp.

Referenced by CNcbiTestApplication::GetTestResultString().


Generated on Wed Dec 9 07:44:18 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Wed Dec 09 08:18:34 2009 by modify_doxy.py rev. 173732