From 8b073958c28bf979f400f7d2f07c41f7ba0e8c1d Mon Sep 17 00:00:00 2001 From: khizmax Date: Mon, 7 Sep 2015 23:12:10 +0300 Subject: [PATCH] Refactored Map_InsDel_Item_string MT-test --- .../Win/vc12/unit-map-insdel-item.vcxproj | 2 +- .../vc12/unit-map-insdel-item.vcxproj.filters | 6 +- projects/source.unit.map.mk | 1 - tests/data/test-debug.conf | 8 ++ tests/data/test-express.conf | 8 ++ tests/data/test.conf | 8 ++ tests/unit/map2/CMakeLists.txt | 9 +- tests/unit/map2/map_insdel_item_int.h | 16 +-- tests/unit/map2/map_insdel_item_string.cpp | 29 ++--- tests/unit/map2/map_insdel_item_string.h | 104 +++++++++--------- .../map_insdel_item_string_bronsonavltree.cpp | 10 +- .../map2/map_insdel_item_string_cuckoo.cpp | 10 +- .../map2/map_insdel_item_string_ellentree.cpp | 10 +- .../map2/map_insdel_item_string_michael.cpp | 10 +- ...p_insdel_item_string_multilevelhashmap.cpp | 12 ++ .../map2/map_insdel_item_string_refinable.cpp | 12 -- .../unit/map2/map_insdel_item_string_skip.cpp | 10 +- .../map2/map_insdel_item_string_split.cpp | 10 +- .../map2/map_insdel_item_string_striped.cpp | 11 +- 19 files changed, 149 insertions(+), 137 deletions(-) create mode 100644 tests/unit/map2/map_insdel_item_string_multilevelhashmap.cpp delete mode 100644 tests/unit/map2/map_insdel_item_string_refinable.cpp diff --git a/projects/Win/vc12/unit-map-insdel-item.vcxproj b/projects/Win/vc12/unit-map-insdel-item.vcxproj index 3b511b94..cdcd25db 100644 --- a/projects/Win/vc12/unit-map-insdel-item.vcxproj +++ b/projects/Win/vc12/unit-map-insdel-item.vcxproj @@ -57,7 +57,7 @@ - + diff --git a/projects/Win/vc12/unit-map-insdel-item.vcxproj.filters b/projects/Win/vc12/unit-map-insdel-item.vcxproj.filters index 6c28496d..5aa2b21b 100644 --- a/projects/Win/vc12/unit-map-insdel-item.vcxproj.filters +++ b/projects/Win/vc12/unit-map-insdel-item.vcxproj.filters @@ -48,9 +48,6 @@ map_insdel_item_string - - map_insdel_item_string - map_insdel_item_string @@ -63,6 +60,9 @@ map_insdel_item_int + + map_insdel_item_string + diff --git a/projects/source.unit.map.mk b/projects/source.unit.map.mk index 15c35b5d..33ff37f5 100644 --- a/projects/source.unit.map.mk +++ b/projects/source.unit.map.mk @@ -66,7 +66,6 @@ CDSUNIT_MAP_SOURCES := \ tests/unit/map2/map_insdel_item_string_skip.cpp \ tests/unit/map2/map_insdel_item_string_split.cpp \ tests/unit/map2/map_insdel_item_string_striped.cpp \ - tests/unit/map2/map_insdel_item_string_refinable.cpp \ tests/unit/map2/map_insdel_string.cpp \ tests/unit/map2/map_insdel_string_bronsonavltree.cpp \ tests/unit/map2/map_insdel_string_cuckoo.cpp \ diff --git a/tests/data/test-debug.conf b/tests/data/test-debug.conf index 96a98433..85f68656 100644 --- a/tests/data/test-debug.conf +++ b/tests/data/test-debug.conf @@ -219,6 +219,14 @@ GoalItemIndex=5000 AttemptCount=1000 MaxLoadFactor=4 PrintGCStateFlag=1 +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 +# *** MultiLevelHashMap properties +MultiLevelMapHeadBits=8 +MultiLevelMapArrayBits=4 [Map_InsFind_int] ThreadCount=0 diff --git a/tests/data/test-express.conf b/tests/data/test-express.conf index 58547ead..349ff184 100644 --- a/tests/data/test-express.conf +++ b/tests/data/test-express.conf @@ -217,6 +217,14 @@ GoalItemIndex=50000 AttemptCount=100 MaxLoadFactor=4 PrintGCStateFlag=1 +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 +# *** MultiLevelHashMap properties +MultiLevelMapHeadBits=8 +MultiLevelMapArrayBits=4 [Map_InsFind_int] ThreadCount=0 diff --git a/tests/data/test.conf b/tests/data/test.conf index 1a0bccbb..5dcb2086 100644 --- a/tests/data/test.conf +++ b/tests/data/test.conf @@ -212,6 +212,14 @@ GoalItemIndex=250000 AttemptCount=500 MaxLoadFactor=4 PrintGCStateFlag=1 +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 +# *** MultiLevelHashMap properties +MultiLevelMapHeadBits=10 +MultiLevelMapArrayBits=4 [Map_InsFind_int] ThreadCount=0 diff --git a/tests/unit/map2/CMakeLists.txt b/tests/unit/map2/CMakeLists.txt index d449b989..1a51a765 100644 --- a/tests/unit/map2/CMakeLists.txt +++ b/tests/unit/map2/CMakeLists.txt @@ -60,14 +60,13 @@ set(CDSUNIT_MAP_SOURCES map_insdel_item_int_split.cpp map_insdel_item_int_striped.cpp map_insdel_item_string.cpp + map_insdel_item_string_bronsonavltree.cpp + map_insdel_item_string_cuckoo.cpp + map_insdel_item_string_ellentree.cpp map_insdel_item_string_michael.cpp - map_insdel_item_string_split.cpp map_insdel_item_string_skip.cpp - map_insdel_item_string_ellentree.cpp - map_insdel_item_string_bronsonavltree.cpp + map_insdel_item_string_split.cpp map_insdel_item_string_striped.cpp - map_insdel_item_string_refinable.cpp - map_insdel_item_string_cuckoo.cpp map_insdel_string.cpp map_insdel_string_bronsonavltree.cpp map_insdel_string_cuckoo.cpp diff --git a/tests/unit/map2/map_insdel_item_int.h b/tests/unit/map2/map_insdel_item_int.h index a18bdca9..15784950 100644 --- a/tests/unit/map2/map_insdel_item_int.h +++ b/tests/unit/map2/map_insdel_item_int.h @@ -12,14 +12,14 @@ namespace map2 { class Map_InsDel_Item_int: public CppUnitMini::TestCase { public: - size_t c_nMapSize = 1000000; // map size - size_t c_nThreadCount = 4; // thread count + size_t c_nMapSize = 1000000; // map size + size_t c_nThreadCount = 4; // thread count size_t c_nAttemptCount = 100000; // count of SUCCESS insert/delete for each thread - size_t c_nMaxLoadFactor = 8; // maximum load factor + size_t c_nMaxLoadFactor = 8; // maximum load factor bool c_bPrintGCState = true; - size_t c_nCuckooInitialSize = 1024;// initial size for CuckooMap - size_t c_nCuckooProbesetSize = 16; // CuckooMap probeset size (only for list-based probeset) + size_t c_nCuckooInitialSize = 1024; // initial size for CuckooMap + size_t c_nCuckooProbesetSize = 16; // CuckooMap probeset size (only for list-based probeset) size_t c_nCuckooProbesetThreshold = 0; // CUckooMap probeset threshold (o - use default) size_t c_nMultiLevelMap_HeadBits = 10; @@ -253,8 +253,8 @@ namespace map2 { void run_test() { if ( Map::c_bLoadFactorDepended ) { - for ( size_t nLoadFactor = 1; nLoadFactor <= c_nMaxLoadFactor; nLoadFactor *= 2 ) { - CPPUNIT_MSG( "Load factor=" << nLoadFactor ); + for ( c_nLoadFactor = 1; c_nLoadFactor <= c_nMaxLoadFactor; c_nLoadFactor *= 2 ) { + CPPUNIT_MSG( "Load factor=" << c_nLoadFactor ); Map testMap( *this ); do_test( testMap ); if ( c_bPrintGCState ) @@ -283,7 +283,7 @@ namespace map2 { CDSUNIT_DECLARE_CuckooMap // CDSUNIT_DECLARE_StdMap // very slow!! - CPPUNIT_TEST_SUITE(Map_InsDel_int) + CPPUNIT_TEST_SUITE(Map_InsDel_Item_int) CDSUNIT_TEST_MichaelMap CDSUNIT_TEST_SplitList CDSUNIT_TEST_SkipListMap diff --git a/tests/unit/map2/map_insdel_item_string.cpp b/tests/unit/map2/map_insdel_item_string.cpp index 09980ce8..a8c125be 100644 --- a/tests/unit/map2/map_insdel_item_string.cpp +++ b/tests/unit/map2/map_insdel_item_string.cpp @@ -5,36 +5,23 @@ namespace map2 { CPPUNIT_TEST_SUITE_REGISTRATION( Map_InsDel_Item_string ); - size_t Map_InsDel_Item_string::c_nMapSize = 1000000; - size_t Map_InsDel_Item_string::c_nThreadCount = 4; - size_t Map_InsDel_Item_string::c_nGoalItem = c_nMapSize / 2; - size_t Map_InsDel_Item_string::c_nAttemptCount = 100000; - size_t Map_InsDel_Item_string::c_nMaxLoadFactor = 8; - bool Map_InsDel_Item_string::c_bPrintGCState = true; - void Map_InsDel_Item_string::setUpParams( const CppUnitMini::TestCfg& cfg ) { c_nThreadCount = cfg.getSizeT("ThreadCount", c_nThreadCount ); c_nMapSize = cfg.getSizeT("MapSize", c_nMapSize ); - c_nGoalItem = cfg.getSizeT("GoalItemIndex", c_nGoalItem); + c_nGoalItem = cfg.getSizeT("GoalItem", c_nMapSize / 2 ); c_nAttemptCount = cfg.getSizeT("AttemptCount", c_nAttemptCount ); c_nMaxLoadFactor = cfg.getSizeT("MaxLoadFactor", c_nMaxLoadFactor ); c_bPrintGCState = cfg.getBool("PrintGCStateFlag", true ); - } - void Map_InsDel_Item_string::myRun(const char *in_name, bool invert /*= false*/) - { - setUpParams( m_Cfg.get( "Map_InsDel_Item_string" )); + c_nCuckooInitialSize = cfg.getSizeT("CuckooInitialSize", c_nCuckooInitialSize); + c_nCuckooProbesetSize = cfg.getSizeT("CuckooProbesetSize", c_nCuckooProbesetSize); + c_nCuckooProbesetThreshold = cfg.getSizeT("CuckooProbesetThreshold", c_nCuckooProbesetThreshold); - run_MichaelMap(in_name, invert); - run_SplitList(in_name, invert); - run_SkipListMap(in_name, invert); - run_EllenBinTreeMap(in_name, invert); - run_BronsonAVLTreeMap(in_name, invert); - run_StripedMap(in_name, invert); - run_RefinableMap(in_name, invert); - run_CuckooMap(in_name, invert); + c_nMultiLevelMap_HeadBits = cfg.getSizeT("MultiLevelMapHeadBits", c_nMultiLevelMap_HeadBits); + c_nMultiLevelMap_ArrayBits = cfg.getSizeT("MultiLevelMapArrayBits", c_nMultiLevelMap_ArrayBits); - endTestCase(); + if ( c_nThreadCount == 0 ) + c_nThreadCount = std::thread::hardware_concurrency() * 2; } } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string.h b/tests/unit/map2/map_insdel_item_string.h index 532ab5c4..7156d54d 100644 --- a/tests/unit/map2/map_insdel_item_string.h +++ b/tests/unit/map2/map_insdel_item_string.h @@ -7,20 +7,28 @@ namespace map2 { -# define TEST_MAP(IMPL, C, X) void C::X() { test::X >(); } -# define TEST_MAP_NOLF(IMPL, C, X) void C::X() { test_nolf::X >(); } -# define TEST_MAP_EXTRACT(IMPL, C, X) TEST_MAP(IMPL, C, X) -# define TEST_MAP_NOLF_EXTRACT(IMPL, C, X) TEST_MAP_NOLF(IMPL, C, X) +#define TEST_CASE(TAG, X) void X(); class Map_InsDel_Item_string: public CppUnitMini::TestCase { - static size_t c_nMapSize; // map size - static size_t c_nThreadCount; // thread count - static size_t c_nGoalItem; - static size_t c_nAttemptCount; // count of SUCCESS insert/delete for each thread - static size_t c_nMaxLoadFactor;// maximum load factor - static bool c_bPrintGCState; + public: + size_t c_nMapSize = 1000000; // map size + size_t c_nThreadCount = 4; // thread count + size_t c_nAttemptCount = 100000; // count of SUCCESS insert/delete for each thread + size_t c_nMaxLoadFactor = 8; // maximum load factor + bool c_bPrintGCState = true; + size_t c_nCuckooInitialSize = 1024; // initial size for CuckooMap + size_t c_nCuckooProbesetSize = 16; // CuckooMap probeset size (only for list-based probeset) + size_t c_nCuckooProbesetThreshold = 0; // CUckooMap probeset threshold (o - use default) + + size_t c_nMultiLevelMap_HeadBits = 10; + size_t c_nMultiLevelMap_ArrayBits = 4; + + size_t c_nGoalItem; + size_t c_nLoadFactor = 2; // current load factor + + private: typedef CppUnitMini::TestCase Base; typedef std::string key_type; typedef size_t value_type; @@ -65,10 +73,11 @@ namespace map2 { m_nInsertSuccess = m_nInsertFailed = 0; - size_t nGoalItem = c_nGoalItem; + size_t nGoalItem = getTest().c_nGoalItem; std::string strGoal = (*getTest().m_parrString)[nGoalItem]; + size_t const nAttemptCount = getTest().c_nAttemptCount; - for ( size_t nAttempt = 0; nAttempt < c_nAttemptCount; ) { + for ( size_t nAttempt = 0; nAttempt < nAttemptCount; ) { if ( rMap.insert( strGoal, nGoalItem )) { ++m_nInsertSuccess; ++nAttempt; @@ -134,10 +143,11 @@ namespace map2 { m_nDeleteSuccess = m_nDeleteFailed = 0; - size_t nGoalItem = c_nGoalItem; + size_t nGoalItem = getTest().c_nGoalItem; std::string strGoal = (*getTest().m_parrString)[nGoalItem]; + size_t const nAttemptCount = getTest().c_nAttemptCount; - for ( size_t nAttempt = 0; nAttempt < c_nAttemptCount; ) { + for ( size_t nAttempt = 0; nAttempt < nAttemptCount; ) { if ( rMap.erase( strGoal, erase_cleaner() )) { ++m_nDeleteSuccess; ++nAttempt; @@ -197,7 +207,7 @@ namespace map2 { CPPUNIT_MSG( " Check if the map contains all items" ); timer.reset(); for ( size_t i = 0; i < c_nMapSize; ++i ) { - CPPUNIT_CHECK_EX( testMap.find( (*m_parrString)[i] ), "Key \"" << (*m_parrString)[i] << "\" not found" ); + CPPUNIT_CHECK_EX( testMap.contains( (*m_parrString)[i] ), "Key \"" << (*m_parrString)[i] << "\" not found" ); } CPPUNIT_MSG( " Duration=" << timer.duration() ); @@ -210,7 +220,7 @@ namespace map2 { } template - void test() + void run_test() { m_parrString = &CppUnitMini::TestCase::getTestStrings(); if ( c_nMapSize > m_parrString->size() ) @@ -223,57 +233,49 @@ namespace map2 { << " map size=" << c_nMapSize ); - for ( size_t nLoadFactor = 1; nLoadFactor <= c_nMaxLoadFactor; nLoadFactor *= 2 ) { - CPPUNIT_MSG( "Load factor=" << nLoadFactor ); - Map testMap( c_nMapSize, nLoadFactor ); + if ( Map::c_bLoadFactorDepended ) { + for ( c_nLoadFactor = 1; c_nLoadFactor <= c_nMaxLoadFactor; c_nLoadFactor *= 2 ) { + CPPUNIT_MSG( "Load factor=" << c_nLoadFactor ); + Map testMap( *this ); + do_test( testMap ); + if ( c_bPrintGCState ) + print_gc_state(); + } + } + else { + Map testMap( *this ); do_test( testMap ); if ( c_bPrintGCState ) print_gc_state(); } } - template - void test_nolf() - { - m_parrString = &CppUnitMini::TestCase::getTestStrings(); - if ( c_nMapSize > m_parrString->size() ) - c_nMapSize = m_parrString->size(); - if ( c_nGoalItem > m_parrString->size() ) - c_nGoalItem = m_parrString->size() / 2; - - CPPUNIT_MSG( "Thread count= " << c_nThreadCount - << " pass count=" << c_nAttemptCount - << " map size=" << c_nMapSize - ); - - Map testMap; - do_test( testMap ); - if ( c_bPrintGCState ) - print_gc_state(); - } - void setUpParams( const CppUnitMini::TestCfg& cfg ); - void run_MichaelMap(const char *in_name, bool invert = false); - void run_SplitList(const char *in_name, bool invert = false); - void run_SkipListMap(const char *in_name, bool invert = false); - void run_StripedMap(const char *in_name, bool invert = false); - void run_RefinableMap(const char *in_name, bool invert = false); - void run_CuckooMap(const char *in_name, bool invert = false); - void run_EllenBinTreeMap(const char *in_name, bool invert = false); - void run_BronsonAVLTreeMap(const char *in_name, bool invert = false); - - virtual void myRun(const char *in_name, bool invert = false); - # include "map2/map_defs.h" CDSUNIT_DECLARE_MichaelMap CDSUNIT_DECLARE_SplitList CDSUNIT_DECLARE_SkipListMap CDSUNIT_DECLARE_EllenBinTreeMap CDSUNIT_DECLARE_BronsonAVLTreeMap + CDSUNIT_DECLARE_MultiLevelHashMap CDSUNIT_DECLARE_StripedMap CDSUNIT_DECLARE_RefinableMap CDSUNIT_DECLARE_CuckooMap - //CDSUNIT_DECLARE_StdMap // very slow! + // CDSUNIT_DECLARE_StdMap // very slow!! + + CPPUNIT_TEST_SUITE(Map_InsDel_Item_string) + CDSUNIT_TEST_MichaelMap + CDSUNIT_TEST_SplitList + CDSUNIT_TEST_SkipListMap + CDSUNIT_TEST_EllenBinTreeMap + CDSUNIT_TEST_BronsonAVLTreeMap + CDSUNIT_TEST_MultiLevelHashMap + CDSUNIT_TEST_CuckooMap + CDSUNIT_TEST_StripedMap + CDSUNIT_TEST_RefinableMap + // CDSUNIT_TEST_StdMap // very slow!! + CPPUNIT_TEST_SUITE_END(); + }; } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_bronsonavltree.cpp b/tests/unit/map2/map_insdel_item_string_bronsonavltree.cpp index 3e159558..2286482c 100644 --- a/tests/unit/map2/map_insdel_item_string_bronsonavltree.cpp +++ b/tests/unit/map2/map_insdel_item_string_bronsonavltree.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_bronson_avltree.h" -namespace map2 { - CDSUNIT_DEFINE_BronsonAVLTreeMap( cc::bronson_avltree::implementation_tag, Map_InsDel_Item_string) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_BronsonAVLTreeMap ) - CDSUNIT_TEST_BronsonAVLTreeMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_BronsonAVLTreeMap } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_cuckoo.cpp b/tests/unit/map2/map_insdel_item_string_cuckoo.cpp index e05b6069..85caf711 100644 --- a/tests/unit/map2/map_insdel_item_string_cuckoo.cpp +++ b/tests/unit/map2/map_insdel_item_string_cuckoo.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_cuckoo.h" -namespace map2 { - CDSUNIT_DEFINE_CuckooMap(cds::intrusive::cuckoo::implementation_tag, Map_InsDel_Item_string) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_CuckooMap ) - CDSUNIT_TEST_CuckooMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_CuckooMap } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_ellentree.cpp b/tests/unit/map2/map_insdel_item_string_ellentree.cpp index 1ab79951..243fcdae 100644 --- a/tests/unit/map2/map_insdel_item_string_ellentree.cpp +++ b/tests/unit/map2/map_insdel_item_string_ellentree.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_ellen_bintree.h" -namespace map2 { - CDSUNIT_DEFINE_EllenBinTreeMap( cc::ellen_bintree::implementation_tag, Map_InsDel_Item_string) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_EllenBinTreeMap ) - CDSUNIT_TEST_EllenBinTreeMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_EllenBinTreeMap } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_michael.cpp b/tests/unit/map2/map_insdel_item_string_michael.cpp index 3e35739a..eee9bc9c 100644 --- a/tests/unit/map2/map_insdel_item_string_michael.cpp +++ b/tests/unit/map2/map_insdel_item_string_michael.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_michael.h" -namespace map2 { - CDSUNIT_DEFINE_MichaelMap( cc::michael_map::implementation_tag, Map_InsDel_Item_string ) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_MichaelMap ) - CDSUNIT_TEST_MichaelMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_MichaelMap } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_multilevelhashmap.cpp b/tests/unit/map2/map_insdel_item_string_multilevelhashmap.cpp new file mode 100644 index 00000000..c23e967a --- /dev/null +++ b/tests/unit/map2/map_insdel_item_string_multilevelhashmap.cpp @@ -0,0 +1,12 @@ +//$$CDS-header$$ + +#include "map2/map_insdel_item_string.h" +#include "map2/map_type_multilevel_hashmap.h" + +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" + +namespace map2 { + CDSUNIT_DECLARE_MultiLevelHashMap +} // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_refinable.cpp b/tests/unit/map2/map_insdel_item_string_refinable.cpp deleted file mode 100644 index 44bac2db..00000000 --- a/tests/unit/map2/map_insdel_item_string_refinable.cpp +++ /dev/null @@ -1,12 +0,0 @@ -//$$CDS-header$$ - -#include "map2/map_insdel_item_string.h" -#include "map2/map_type_striped.h" - -namespace map2 { - CDSUNIT_DEFINE_RefinableMap(cc::striped_set::implementation_tag, Map_InsDel_Item_string) - - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_RefinableMap ) - CDSUNIT_TEST_RefinableMap - CPPUNIT_TEST_SUITE_END_PART() -} // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_skip.cpp b/tests/unit/map2/map_insdel_item_string_skip.cpp index 60235a71..073b49d7 100644 --- a/tests/unit/map2/map_insdel_item_string_skip.cpp +++ b/tests/unit/map2/map_insdel_item_string_skip.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_skip_list.h" -namespace map2 { - CDSUNIT_DEFINE_SkipListMap( cc::skip_list::implementation_tag, Map_InsDel_Item_string) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_SkipListMap ) - CDSUNIT_TEST_SkipListMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_SkipListMap } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_split.cpp b/tests/unit/map2/map_insdel_item_string_split.cpp index 1efdd6b8..75bad032 100644 --- a/tests/unit/map2/map_insdel_item_string_split.cpp +++ b/tests/unit/map2/map_insdel_item_string_split.cpp @@ -3,10 +3,10 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_split_list.h" -namespace map2 { - CDSUNIT_DEFINE_SplitList( cc::split_list::implementation_tag, Map_InsDel_Item_string ) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_SplitList ) - CDSUNIT_TEST_SplitList - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_SplitList } // namespace map2 diff --git a/tests/unit/map2/map_insdel_item_string_striped.cpp b/tests/unit/map2/map_insdel_item_string_striped.cpp index 2ae3b6df..10aeb5ea 100644 --- a/tests/unit/map2/map_insdel_item_string_striped.cpp +++ b/tests/unit/map2/map_insdel_item_string_striped.cpp @@ -3,10 +3,11 @@ #include "map2/map_insdel_item_string.h" #include "map2/map_type_striped.h" -namespace map2 { - CDSUNIT_DEFINE_StripedMap(cc::striped_set::implementation_tag, Map_InsDel_Item_string) +#undef TEST_CASE +#define TEST_CASE(TAG, X) void Map_InsDel_Item_string::X() { run_test::X>(); } +#include "map2/map_defs.h" - CPPUNIT_TEST_SUITE_PART( Map_InsDel_Item_string, run_StripedMap ) - CDSUNIT_TEST_StripedMap - CPPUNIT_TEST_SUITE_END_PART() +namespace map2 { + CDSUNIT_DECLARE_StripedMap + CDSUNIT_DECLARE_RefinableMap } // namespace map2 -- 2.34.1