diff --git a/include/ndnboost/test/detail/config.hpp b/include/ndnboost/test/detail/config.hpp
index 1b6ae68..68168b2 100644
--- a/include/ndnboost/test/detail/config.hpp
+++ b/include/ndnboost/test/detail/config.hpp
@@ -12,8 +12,8 @@
 //  Description : as a central place for global configuration switches
 // ***************************************************************************
 
-#ifndef BOOST_TEST_CONFIG_HPP_071894GER
-#define BOOST_TEST_CONFIG_HPP_071894GER
+#ifndef NDNBOOST_TEST_CONFIG_HPP_071894GER
+#define NDNBOOST_TEST_CONFIG_HPP_071894GER
 
 // Boost
 #include <ndnboost/config.hpp> // compilers workarounds
@@ -21,84 +21,84 @@
 
 //____________________________________________________________________________//
 
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x570)) || \
-    BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600))     || \
-    (defined __sgi && BOOST_WORKAROUND(_COMPILER_VERSION, BOOST_TESTED_AT(730)))
-#  define BOOST_TEST_SHIFTED_LINE
+#if NDNBOOST_WORKAROUND(__BORLANDC__, NDNBOOST_TESTED_AT(0x570)) || \
+    NDNBOOST_WORKAROUND(__IBMCPP__, NDNBOOST_TESTED_AT(600))     || \
+    (defined __sgi && NDNBOOST_WORKAROUND(_COMPILER_VERSION, NDNBOOST_TESTED_AT(730)))
+#  define NDNBOOST_TEST_SHIFTED_LINE
 #endif
 
 //____________________________________________________________________________//
 
-#if defined(BOOST_MSVC) || (defined(__BORLANDC__) && !defined(BOOST_DISABLE_WIN32))
-#  define BOOST_TEST_CALL_DECL __cdecl
+#if defined(NDNBOOST_MSVC) || (defined(__BORLANDC__) && !defined(NDNBOOST_DISABLE_WIN32))
+#  define NDNBOOST_TEST_CALL_DECL __cdecl
 #else
-#  define BOOST_TEST_CALL_DECL /**/
+#  define NDNBOOST_TEST_CALL_DECL /**/
 #endif
 
 //____________________________________________________________________________//
 
-#if !defined(BOOST_NO_STD_LOCALE) &&            \
-    !BOOST_WORKAROUND(BOOST_MSVC, < 1310)  &&   \
+#if !defined(NDNBOOST_NO_STD_LOCALE) &&            \
+    !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, < 1310)  &&   \
     !defined(__MWERKS__) 
-#  define BOOST_TEST_USE_STD_LOCALE 1
+#  define NDNBOOST_TEST_USE_STD_LOCALE 1
 #endif
 
 //____________________________________________________________________________//
 
-#if BOOST_WORKAROUND(__BORLANDC__, <= 0x570)            || \
-    BOOST_WORKAROUND( __COMO__, <= 0x433 )              || \
-    BOOST_WORKAROUND( __INTEL_COMPILER, <= 800 )        || \
+#if NDNBOOST_WORKAROUND(__BORLANDC__, <= 0x570)            || \
+    NDNBOOST_WORKAROUND( __COMO__, <= 0x433 )              || \
+    NDNBOOST_WORKAROUND( __INTEL_COMPILER, <= 800 )        || \
     defined(__sgi) && _COMPILER_VERSION <= 730          || \
-    BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600))  || \
+    NDNBOOST_WORKAROUND(__IBMCPP__, NDNBOOST_TESTED_AT(600))  || \
     defined(__DECCXX)                                   || \
     defined(__DMC__)
-#  define BOOST_TEST_NO_PROTECTED_USING
+#  define NDNBOOST_TEST_NO_PROTECTED_USING
 #endif
 
 //____________________________________________________________________________//
 
-#if defined(__GNUC__) || BOOST_WORKAROUND(BOOST_MSVC, == 1400)
-#define BOOST_TEST_PROTECTED_VIRTUAL virtual
+#if defined(__GNUC__) || NDNBOOST_WORKAROUND(NDNBOOST_MSVC, == 1400)
+#define NDNBOOST_TEST_PROTECTED_VIRTUAL virtual
 #else
-#define BOOST_TEST_PROTECTED_VIRTUAL
+#define NDNBOOST_TEST_PROTECTED_VIRTUAL
 #endif
 
 //____________________________________________________________________________//
 
-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) && \
-    !BOOST_WORKAROUND(BOOST_MSVC, <1310) && \
-    !BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530))
-#  define BOOST_TEST_SUPPORT_INTERACTION_TESTING 1
+#if !NDNBOOST_WORKAROUND(__BORLANDC__, NDNBOOST_TESTED_AT(0x564)) && \
+    !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, <1310) && \
+    !NDNBOOST_WORKAROUND(__SUNPRO_CC, NDNBOOST_TESTED_AT(0x530))
+#  define NDNBOOST_TEST_SUPPORT_INTERACTION_TESTING 1
 #endif
 
 //____________________________________________________________________________//
 
-#if defined(BOOST_ALL_DYN_LINK) && !defined(BOOST_TEST_DYN_LINK)
-#  define BOOST_TEST_DYN_LINK
+#if defined(NDNBOOST_ALL_DYN_LINK) && !defined(NDNBOOST_TEST_DYN_LINK)
+#  define NDNBOOST_TEST_DYN_LINK
 #endif
 
-#if defined(BOOST_TEST_INCLUDED)
-#  undef BOOST_TEST_DYN_LINK
+#if defined(NDNBOOST_TEST_INCLUDED)
+#  undef NDNBOOST_TEST_DYN_LINK
 #endif
 
-#if defined(BOOST_TEST_DYN_LINK)
-#  define BOOST_TEST_ALTERNATIVE_INIT_API
+#if defined(NDNBOOST_TEST_DYN_LINK)
+#  define NDNBOOST_TEST_ALTERNATIVE_INIT_API
 
-#  ifdef BOOST_TEST_SOURCE
-#    define BOOST_TEST_DECL BOOST_SYMBOL_EXPORT
+#  ifdef NDNBOOST_TEST_SOURCE
+#    define NDNBOOST_TEST_DECL NDNBOOST_SYMBOL_EXPORT
 #  else
-#    define BOOST_TEST_DECL BOOST_SYMBOL_IMPORT
-#  endif  // BOOST_TEST_SOURCE
+#    define NDNBOOST_TEST_DECL NDNBOOST_SYMBOL_IMPORT
+#  endif  // NDNBOOST_TEST_SOURCE
 #else
-#  define BOOST_TEST_DECL
+#  define NDNBOOST_TEST_DECL
 #endif
 
-#if !defined(BOOST_TEST_MAIN) && defined(BOOST_AUTO_TEST_MAIN)
-#define BOOST_TEST_MAIN BOOST_AUTO_TEST_MAIN
+#if !defined(NDNBOOST_TEST_MAIN) && defined(NDNBOOST_AUTO_TEST_MAIN)
+#define NDNBOOST_TEST_MAIN NDNBOOST_AUTO_TEST_MAIN
 #endif
 
-#if !defined(BOOST_TEST_MAIN) && defined(BOOST_TEST_MODULE)
-#define BOOST_TEST_MAIN BOOST_TEST_MODULE
+#if !defined(NDNBOOST_TEST_MAIN) && defined(NDNBOOST_TEST_MODULE)
+#define NDNBOOST_TEST_MAIN NDNBOOST_TEST_MODULE
 #endif
 
-#endif // BOOST_TEST_CONFIG_HPP_071894GER
+#endif // NDNBOOST_TEST_CONFIG_HPP_071894GER
diff --git a/include/ndnboost/test/detail/enable_warnings.hpp b/include/ndnboost/test/detail/enable_warnings.hpp
index 2d67fb0..3618e91 100644
--- a/include/ndnboost/test/detail/enable_warnings.hpp
+++ b/include/ndnboost/test/detail/enable_warnings.hpp
@@ -12,7 +12,7 @@
 //  Description : enable previosly suppressed warnings
 // ***************************************************************************
 
-#ifdef BOOST_MSVC
+#ifdef NDNBOOST_MSVC
 # pragma warning(default: 4511) // copy constructor can't not be generated
 # pragma warning(default: 4512) // assignment operator can't not be generated
 # pragma warning(default: 4100) // unreferenced formal parameter 
diff --git a/include/ndnboost/test/detail/fwd_decl.hpp b/include/ndnboost/test/detail/fwd_decl.hpp
index b8d2a87..db029fe 100644
--- a/include/ndnboost/test/detail/fwd_decl.hpp
+++ b/include/ndnboost/test/detail/fwd_decl.hpp
@@ -12,8 +12,8 @@
 //  Description : contains forward eclarations for Boost.Test data types
 // ***************************************************************************
 
-#ifndef BOOST_TEST_FWD_DECL_HPP_011605GER
-#define BOOST_TEST_FWD_DECL_HPP_011605GER
+#ifndef NDNBOOST_TEST_FWD_DECL_HPP_011605GER
+#define NDNBOOST_TEST_FWD_DECL_HPP_011605GER
 
 namespace ndnboost {
 
@@ -44,5 +44,5 @@
 
 } // namespace ndnboost
 
-#endif // BOOST_TEST_FWD_DECL_HPP_011605GER
+#endif // NDNBOOST_TEST_FWD_DECL_HPP_011605GER
 
diff --git a/include/ndnboost/test/detail/global_typedef.hpp b/include/ndnboost/test/detail/global_typedef.hpp
index e87327a..207940d 100644
--- a/include/ndnboost/test/detail/global_typedef.hpp
+++ b/include/ndnboost/test/detail/global_typedef.hpp
@@ -12,13 +12,13 @@
 //  Description : some trivial global typedefs
 // ***************************************************************************
 
-#ifndef BOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
-#define BOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
+#ifndef NDNBOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
+#define NDNBOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
 
 #include <ndnboost/test/utils/basic_cstring/basic_cstring.hpp>
-#define BOOST_TEST_L( s )         ndnboost::unit_test::const_string( s, sizeof( s ) - 1 )
-#define BOOST_TEST_STRINGIZE( s ) BOOST_TEST_L( BOOST_STRINGIZE( s ) )
-#define BOOST_TEST_EMPTY_STRING   BOOST_TEST_L( "" )
+#define NDNBOOST_TEST_L( s )         ndnboost::unit_test::const_string( s, sizeof( s ) - 1 )
+#define NDNBOOST_TEST_STRINGIZE( s ) NDNBOOST_TEST_L( NDNBOOST_STRINGIZE( s ) )
+#define NDNBOOST_TEST_EMPTY_STRING   NDNBOOST_TEST_L( "" )
 
 #include <ndnboost/test/detail/suppress_warnings.hpp>
 
@@ -85,4 +85,4 @@
 
 #include <ndnboost/test/detail/enable_warnings.hpp>
 
-#endif // BOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
+#endif // NDNBOOST_TEST_GLOBAL_TYPEDEF_HPP_021005GER
diff --git a/include/ndnboost/test/detail/log_level.hpp b/include/ndnboost/test/detail/log_level.hpp
index 14e69f4..549db0c 100644
--- a/include/ndnboost/test/detail/log_level.hpp
+++ b/include/ndnboost/test/detail/log_level.hpp
@@ -12,8 +12,8 @@
 //  Description : shared definition for unit test log levels
 // ***************************************************************************
 
-#ifndef BOOST_TEST_LOG_LEVEL_HPP_011605GER
-#define BOOST_TEST_LOG_LEVEL_HPP_011605GER
+#ifndef NDNBOOST_TEST_LOG_LEVEL_HPP_011605GER
+#define NDNBOOST_TEST_LOG_LEVEL_HPP_011605GER
 
 namespace ndnboost {
 namespace unit_test {
@@ -40,4 +40,4 @@
 } // namespace unit_test
 } // namespace ndnboost
 
-#endif // BOOST_TEST_LOG_LEVEL_HPP_011605GER
+#endif // NDNBOOST_TEST_LOG_LEVEL_HPP_011605GER
diff --git a/include/ndnboost/test/detail/suppress_warnings.hpp b/include/ndnboost/test/detail/suppress_warnings.hpp
index 2471226..7b93db7 100644
--- a/include/ndnboost/test/detail/suppress_warnings.hpp
+++ b/include/ndnboost/test/detail/suppress_warnings.hpp
@@ -12,7 +12,7 @@
 //  Description : suppress some warnings 
 // ***************************************************************************
 
-#ifdef BOOST_MSVC
+#ifdef NDNBOOST_MSVC
 # pragma warning(push)
 # pragma warning(disable: 4511) // copy constructor can't not be generated
 # pragma warning(disable: 4512) // assignment operator can't not be generated
diff --git a/include/ndnboost/test/detail/unit_test_parameters.hpp b/include/ndnboost/test/detail/unit_test_parameters.hpp
index 364692b..ca7a24f 100644
--- a/include/ndnboost/test/detail/unit_test_parameters.hpp
+++ b/include/ndnboost/test/detail/unit_test_parameters.hpp
@@ -12,8 +12,8 @@
 //  Description : storage for unit test framework parameters information
 // ***************************************************************************
 
-#ifndef BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
-#define BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
+#ifndef NDNBOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
+#define NDNBOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
 
 #include <ndnboost/test/detail/global_typedef.hpp>
 #include <ndnboost/test/detail/log_level.hpp>
@@ -35,26 +35,26 @@
 
 namespace runtime_config {
 
-BOOST_TEST_DECL void                     init( int& argc, char** argv );
+NDNBOOST_TEST_DECL void                     init( int& argc, char** argv );
 
-BOOST_TEST_DECL unit_test::log_level     log_level();
-BOOST_TEST_DECL bool                     no_result_code();
-BOOST_TEST_DECL unit_test::report_level  report_level();
-BOOST_TEST_DECL const_string             test_to_run();
-BOOST_TEST_DECL const_string             break_exec_path();
-BOOST_TEST_DECL bool                     save_pattern();
-BOOST_TEST_DECL bool                     show_build_info();
-BOOST_TEST_DECL bool                     show_progress();
-BOOST_TEST_DECL bool                     catch_sys_errors();
-BOOST_TEST_DECL bool                     auto_start_dbg();
-BOOST_TEST_DECL bool                     use_alt_stack();
-BOOST_TEST_DECL bool                     detect_fp_exceptions();
-BOOST_TEST_DECL output_format            report_format();
-BOOST_TEST_DECL output_format            log_format();
-BOOST_TEST_DECL std::ostream*            report_sink();
-BOOST_TEST_DECL std::ostream*            log_sink();
-BOOST_TEST_DECL long                     detect_memory_leaks();
-BOOST_TEST_DECL int                      random_seed();
+NDNBOOST_TEST_DECL unit_test::log_level     log_level();
+NDNBOOST_TEST_DECL bool                     no_result_code();
+NDNBOOST_TEST_DECL unit_test::report_level  report_level();
+NDNBOOST_TEST_DECL const_string             test_to_run();
+NDNBOOST_TEST_DECL const_string             break_exec_path();
+NDNBOOST_TEST_DECL bool                     save_pattern();
+NDNBOOST_TEST_DECL bool                     show_build_info();
+NDNBOOST_TEST_DECL bool                     show_progress();
+NDNBOOST_TEST_DECL bool                     catch_sys_errors();
+NDNBOOST_TEST_DECL bool                     auto_start_dbg();
+NDNBOOST_TEST_DECL bool                     use_alt_stack();
+NDNBOOST_TEST_DECL bool                     detect_fp_exceptions();
+NDNBOOST_TEST_DECL output_format            report_format();
+NDNBOOST_TEST_DECL output_format            log_format();
+NDNBOOST_TEST_DECL std::ostream*            report_sink();
+NDNBOOST_TEST_DECL std::ostream*            log_sink();
+NDNBOOST_TEST_DECL long                     detect_memory_leaks();
+NDNBOOST_TEST_DECL int                      random_seed();
 
 } // namespace runtime_config
 
@@ -66,4 +66,4 @@
 
 #include <ndnboost/test/detail/enable_warnings.hpp>
 
-#endif // BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
+#endif // NDNBOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
diff --git a/include/ndnboost/test/detail/workaround.hpp b/include/ndnboost/test/detail/workaround.hpp
index 654972b..d595ffb 100644
--- a/include/ndnboost/test/detail/workaround.hpp
+++ b/include/ndnboost/test/detail/workaround.hpp
@@ -12,8 +12,8 @@
 //  Description : contains mics. workarounds 
 // ***************************************************************************
 
-#ifndef BOOST_TEST_WORKAROUND_HPP_021005GER
-#define BOOST_TEST_WORKAROUND_HPP_021005GER
+#ifndef NDNBOOST_TEST_WORKAROUND_HPP_021005GER
+#define NDNBOOST_TEST_WORKAROUND_HPP_021005GER
 
 // Boost
 #include <ndnboost/config.hpp> // compilers workarounds and std::ptrdiff_t
@@ -31,7 +31,7 @@
 
 namespace ut_detail {
 
-#ifdef BOOST_NO_STD_DISTANCE
+#ifdef NDNBOOST_NO_STD_DISTANCE
 template <class T>
 std::ptrdiff_t distance( T const& x_, T const& y_ )
 { 
@@ -62,4 +62,4 @@
 
 #include <ndnboost/test/detail/enable_warnings.hpp>
 
-#endif // BOOST_TEST_WORKAROUND_HPP_021005GER
+#endif // NDNBOOST_TEST_WORKAROUND_HPP_021005GER
