movable guarded_ptr: unit tests
authorkhizmax <khizmax@gmail.com>
Thu, 20 Nov 2014 10:11:15 +0000 (13:11 +0300)
committerkhizmax <khizmax@gmail.com>
Thu, 20 Nov 2014 10:11:15 +0000 (13:11 +0300)
tests/unit/map2/map_delodd.cpp
tests/unit/pqueue/ellen_bintree_pqueue.h
tests/unit/pqueue/skiplist_pqueue.h
tests/unit/set2/set_delodd.cpp
tests/unit/set2/set_insdel_string.cpp

index e450051fff35b05686803a3de0f9c91e64cf2502..e7ad25f83e52429c17f181d9f378e74cfb89edff 100644 (file)
@@ -360,7 +360,8 @@ namespace map2 {
                     for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                         for ( size_t i = 0; i < arrData.size(); ++i ) {
                             if ( arrData[i] & 1 ) {
-                                if ( rMap.extract_with( gp, arrData[i], key_less() ))
+                                gp = rMap.extract_with( arrData[i], key_less());
+                                if ( gp )
                                     ++m_nDeleteSuccess;
                                 else
                                     ++m_nDeleteFailed;
@@ -374,7 +375,8 @@ namespace map2 {
                     for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                         for ( size_t i = arrData.size() - 1; i > 0; --i ) {
                             if ( arrData[i] & 1 ) {
-                                if ( rMap.extract_with( gp, arrData[i], key_less() ))
+                                gp = rMap.extract_with( arrData[i], key_less());
+                                if ( gp )
                                     ++m_nDeleteSuccess;
                                 else
                                     ++m_nDeleteFailed;
index 0eb71a9133eafa4e191cb3e7ff01380881814c18..8441e02dddcc7a03423d46bd3cbd883704e03c6c 100644 (file)
@@ -20,11 +20,10 @@ namespace pqueue {
         template <typename T, typename Tree>
         bool operator()( T& dest, Tree& container ) const
         {
-            typename Tree::guarded_ptr gp;
-            bool bRet = container.extract_max( gp );
-            if ( bRet )
+            typename Tree::guarded_ptr gp( container.extract_max());
+            if ( gp )
                 dest = *gp;
-            return bRet;
+            return !gp.empty();
         }
     };
 
@@ -47,11 +46,10 @@ namespace pqueue {
         template <typename T, typename Tree>
         bool operator()( T& dest, Tree& container ) const
         {
-            typename Tree::guarded_ptr gp;
-            bool bRet = container.extract_min( gp );
-            if ( bRet )
+            typename Tree::guarded_ptr gp( container.extract_min());
+            if ( gp )
                 dest = *gp;
-            return bRet;
+            return !gp.empty();
         }
     };
 
index 92ef9df04d0e92acf49c074d53caf14e087c4fed..0ca4e1b8632f3c3bd2e0dc25221edf3ba61e3ea2 100644 (file)
@@ -20,11 +20,10 @@ namespace pqueue {
         template <typename T, typename Set>
         bool operator()( T& dest, Set& container ) const
         {
-            typename Set::guarded_ptr gp;
-            bool bRet = container.extract_max( gp );
-            if ( bRet )
+            typename Set::guarded_ptr gp( container.extract_max());
+            if ( gp )
                 dest = *gp;
-            return bRet;
+            return !gp.empty();
         }
     };
 
@@ -47,11 +46,10 @@ namespace pqueue {
         template <typename T, typename Set>
         bool operator()( T& dest, Set& container ) const
         {
-            typename Set::guarded_ptr gp;
-            bool bRet = container.extract_min( gp );
-            if ( bRet )
+            typename Set::guarded_ptr gp( container.extract_min());
+            if ( gp )
                 dest = *gp;
-            return bRet;
+            return !gp.empty();
         }
     };
 
index 82bc58eed5c60b8d4570fa5ffc61f243dd492a2e..8e78a763b2784605ecaf9f7fb2b393bcc48f7cc1 100644 (file)
@@ -401,7 +401,8 @@ namespace set2 {
                     for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                         for ( size_t i = 0; i < arrData.size(); ++i ) {
                             if ( arrData[i] & 1 ) {
-                                if ( rSet.extract_with( gp, arrData[i], key_less() ))
+                                gp = rSet.extract_with( arrData[i], key_less());
+                                if ( gp )
                                     ++m_nExtractSuccess;
                                 else
                                     ++m_nExtractFailed;
@@ -415,7 +416,8 @@ namespace set2 {
                     for ( size_t k = 0; k < c_nInsThreadCount; ++k ) {
                         for ( size_t i = arrData.size() - 1; i > 0; --i ) {
                             if ( arrData[i] & 1 ) {
-                                if ( rSet.extract_with( gp, arrData[i], key_less() ))
+                                gp = rSet.extract_with( arrData[i], key_less());
+                                if ( gp )
                                     ++m_nExtractSuccess;
                                 else
                                     ++m_nExtractFailed;
index 3f5ffcdd29cabb22bf431f7b20fcfcb4731f7ff8..689086de08c44ef798a77d8a9fa07fbe70603071 100644 (file)
@@ -203,7 +203,8 @@ namespace set2 {
                 if ( m_nThreadNo & 1 ) {
                     for ( size_t nPass = 0; nPass < c_nThreadPassCount; ++nPass ) {
                         for ( size_t nItem = 0; nItem < c_nMapSize; ++nItem ) {
-                            if ( rSet.extract( gp, arrString[nItem % nArrSize] ) )
+                            gp = rSet.extract( arrString[nItem % nArrSize]);
+                            if (  gp )
                                 ++m_nDeleteSuccess;
                             else
                                 ++m_nDeleteFailed;
@@ -213,7 +214,8 @@ namespace set2 {
                 else {
                     for ( size_t nPass = 0; nPass < c_nThreadPassCount; ++nPass ) {
                         for ( size_t nItem = c_nMapSize; nItem > 0; --nItem ) {
-                            if ( rSet.extract( gp, arrString[nItem % nArrSize] ) )
+                            gp = rSet.extract( arrString[nItem % nArrSize]);
+                            if ( gp )
                                 ++m_nDeleteSuccess;
                             else
                                 ++m_nDeleteFailed;