Disables running some stat analysis for benchmarks & Adds some sequential data structures
[libcds.git] / test / stress / stack / push.cpp
index 8fd5f19bd3a1fd083d0ca3d222a9580dbe662368..1d1fc5465309d7aa01e3f7149872dc604664e6ef 100644 (file)
@@ -1,7 +1,7 @@
 /*
     This file is a part of libcds - Concurrent Data Structures library
 
-    (C) Copyright Maxim Khizhinsky (libcds.dev@gmail.com) 2006-2016
+    (C) Copyright Maxim Khizhinsky (libcds.dev@gmail.com) 2006-2017
 
     Source code repo: http://github.com/khizmax/libcds/
     Download: http://sourceforge.net/projects/libcds/files/
@@ -29,6 +29,7 @@
 */
 
 #include "stack_type.h"
+#include "../misc/common.h"
 
 namespace {
 
@@ -86,7 +87,7 @@ namespace {
                 value_type v;
                 v.nThread = id();
                 for ( v.nNo = m_nStartItem; v.nNo < m_nEndItem; ++v.nNo ) {
-                    if ( !m_stack.push( v ) )
+                    if ( !m_stack.push( v ))
                         ++m_nPushError;
                 }
             }
@@ -136,8 +137,7 @@ namespace {
 
             propout() << std::make_pair( "duration", duration );
 
-            analyze( stack );
-
+            DEBUG(analyze( stack ));
             propout() << stack.statistics();
         }
 
@@ -145,7 +145,7 @@ namespace {
         void test_elimination( Stack& stack )
         {
             test( stack );
-            check_elimination_stat( stack.statistics() );
+            check_elimination_stat( stack.statistics());
         }
 
         void check_elimination_stat( cds::container::treiber_stack::empty_stat const& )
@@ -153,7 +153,7 @@ namespace {
 
         void check_elimination_stat( cds::container::treiber_stack::stat<> const& s )
         {
-            EXPECT_EQ( s.m_PushCount.get(), s.m_PopCount.get() );
+            EXPECT_EQ( s.m_PushCount.get(), s.m_PopCount.get());
         }
 
         template <class Stack>
@@ -167,7 +167,7 @@ namespace {
 
             for ( size_t i = 0; i < pool.size(); ++i ) {
                 Producer<Stack>& producer = static_cast<Producer<Stack>&>( pool.get( i ));
-                EXPECT_EQ( producer.m_nPushError, 0 ) << "Producer=" << i;
+                EXPECT_EQ( producer.m_nPushError, 0u ) << "Producer=" << i;
                 aThread[producer.id()] = producer.m_nEndItem - 1;
             }
             EXPECT_FALSE( testStack.empty());
@@ -193,16 +193,16 @@ namespace {
             size_t nError = 0;
             for ( size_t i = 0; i < nTotalItems; ++i ) {
                 EXPECT_EQ( arr[i], 1 ) << "i=" << i;
-                if ( ++nError > 10 )
+                if ( ++nError > 10 ) {
                     ASSERT_EQ( arr[i], 1 );
+                }
             }
         }
     };
 
     CDSSTRESS_TreiberStack( stack_push )
     CDSSTRESS_EliminationStack( stack_push )
-    CDSSTRESS_FCStack( stack_push )
-    CDSSTRESS_FCDeque( stack_push )
-    CDSSTRESS_StdStack( stack_push )
+    //CDSSTRESS_FCStack( stack_push )
+    //CDSSTRESS_FCDeque( stack_push )
 
 } // namespace