Changed map_delodd test
authorkhizmax <khizmax@gmail.com>
Tue, 7 Apr 2015 15:04:09 +0000 (18:04 +0300)
committerkhizmax <khizmax@gmail.com>
Tue, 7 Apr 2015 15:04:09 +0000 (18:04 +0300)
tests/unit/map2/map_delodd.cpp
tests/unit/map2/map_delodd.h

index c65467ab2379f480ceb7d58e4ca9eea14eb1bc16..8ddb4e98901dcb24dde841e782909d5854d49824 100644 (file)
@@ -27,10 +27,14 @@ namespace map2 {
             c_nDelThreadCount = cds::OS::topology::processor_count() - c_nExtractThreadCount;
         }
 
-        m_arrData.resize( c_nMapSize );
-        for ( size_t i = 0; i < c_nMapSize; ++i )
-            m_arrData[i] = i;
-        std::random_shuffle( m_arrData.begin(), m_arrData.end() );
+        m_arrInsert.resize( c_nMapSize );
+        m_arrRemove.resize( c_nMapSize );
+        for ( size_t i = 0; i < c_nMapSize; ++i ) {
+            m_arrInsert[i] = i;
+            m_arrRemove[i] = i;
+        }
+        std::random_shuffle( m_arrInsert.begin(), m_arrInsert.end() );
+        std::random_shuffle( m_arrRemove.begin(), m_arrRemove.end() );
     }
 
     void Map_DelOdd::myRun(const char *in_name, bool invert /*= false*/)
index cd1e2707fee198b04935df8e0f5302c7b0eb4bfe..56e2afc15b11e5d5b523fdd309f2c72ede75bd1c 100644 (file)
@@ -127,7 +127,8 @@ namespace map2 {
         static size_t  c_nMaxLoadFactor;    // maximum load factor
         static bool    c_bPrintGCState;
 
-        std::vector<size_t>     m_arrData;
+        std::vector<size_t>     m_arrInsert;
+        std::vector<size_t>     m_arrRemove;
 
     protected:
         typedef CppUnitMini::TestCase Base;
@@ -187,7 +188,7 @@ namespace map2 {
                 m_nInsertSuccess =
                     m_nInsertFailed = 0;
 
-                std::vector<size_t>& arrData = getTest().m_arrData;
+                std::vector<size_t>& arrData = getTest().m_arrInsert;
                 for ( size_t i = 0; i < arrData.size(); ++i ) {
                     if ( rMap.insert( key_type( arrData[i], m_nThreadNo )))
                         ++m_nInsertSuccess;
@@ -278,7 +279,7 @@ namespace map2 {
                     m_nDeleteFailed = 0;
 
                 for ( size_t pass = 0; pass < 2; pass++ ) {
-                    std::vector<size_t>& arrData = getTest().m_arrData;
+                    std::vector<size_t>& arrData = getTest().m_arrRemove;
                     if ( m_nThreadNo & 1 ) {
                         for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                             for ( size_t i = 0; i < arrData.size(); ++i ) {
@@ -353,7 +354,7 @@ namespace map2 {
                 typename Map::guarded_ptr gp;
 
                 for ( size_t pass = 0; pass < 2; ++pass ) {
-                    std::vector<size_t>& arrData = getTest().m_arrData;
+                    std::vector<size_t>& arrData = getTest().m_arrRemove;
                     if ( m_nThreadNo & 1 ) {
                         for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                             for ( size_t i = 0; i < arrData.size(); ++i ) {
@@ -430,7 +431,7 @@ namespace map2 {
 
                 typename Map::exempt_ptr xp;
 
-                std::vector<size_t>& arrData = getTest().m_arrData;
+                std::vector<size_t>& arrData = getTest().m_arrRemove;
                 if ( m_nThreadNo & 1 ) {
                     for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                         for ( size_t i = 0; i < arrData.size(); ++i ) {
@@ -637,7 +638,6 @@ namespace map2 {
             additional_cleanup( testMap );
         }
 
-
         template <class Map>
         void test()
         {