Merge branch 'flat_combinig_add_stress_and_unint_tests' of https://github.com/mgalimu...
[libcds.git] / test / unit / stack / intrusive_treiber_stack_dhp.cpp
index c92ecf9d2f43717c852cc353383bc471904b4998..8c59a56d9783f2470ba3aa5b63ef2edb35402434 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/
     OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
-\r
-#include "test_intrusive_treiber_stack.h"\r
-\r
-#include <cds/gc/dhp.h>\r
-#include <cds/intrusive/treiber_stack.h>\r
-\r
-namespace {\r
-\r
-    namespace ci = cds::intrusive;\r
-\r
-    class IntrusiveTreiberStack_DHP : public cds_gtest::IntrusiveTreiberStack\r
-    {\r
-        typedef cds_gtest::IntrusiveTreiberStack base_class;\r
-    protected:\r
-        typedef cds::gc::DHP gc_type;\r
-\r
-        void SetUp()\r
-        {\r
+
+#include "test_intrusive_treiber_stack.h"
+
+#include <cds/gc/dhp.h>
+#include <cds/intrusive/treiber_stack.h>
+
+namespace {
+
+    namespace ci = cds::intrusive;
+
+    class IntrusiveTreiberStack_DHP : public cds_test::IntrusiveTreiberStack
+    {
+        typedef cds_test::IntrusiveTreiberStack base_class;
+    protected:
+        typedef cds::gc::DHP gc_type;
+
+        void SetUp()
+        {
             typedef cds::intrusive::TreiberStack< gc_type,
                 base_hook_item<gc_type>
                 , typename ci::treiber_stack::make_traits<
@@ -55,32 +55,32 @@ namespace {
                     >
                 >::type
             > stack_type;
-\r
-            cds::gc::dhp::GarbageCollector::Construct( 16, stack_type::c_nHazardPtrCount );\r
-            cds::threading::Manager::attachThread();\r
-        }\r
-\r
-        void TearDown()\r
-        {\r
-            cds::threading::Manager::detachThread();\r
-            cds::gc::dhp::GarbageCollector::Destruct();\r
-        }\r
-\r
-        template <typename Stack>\r
-        void test()\r
-        {\r
-            Stack stack;\r
-            base_class::test( stack );\r
-        }\r
-\r
-        template <typename Stack>\r
-        void test_dyn( size_t elimination_size )\r
-        {\r
-            Stack stack( elimination_size );\r
-            base_class::test( stack );\r
-        }\r
-    };\r
-\r
+
+            cds::gc::dhp::smr::construct( stack_type::c_nHazardPtrCount );
+            cds::threading::Manager::attachThread();
+        }
+
+        void TearDown()
+        {
+            cds::threading::Manager::detachThread();
+            cds::gc::dhp::smr::destruct();
+        }
+
+        template <typename Stack>
+        void test()
+        {
+            Stack stack;
+            base_class::test( stack );
+        }
+
+        template <typename Stack>
+        void test_dyn( size_t elimination_size )
+        {
+            Stack stack( elimination_size );
+            base_class::test( stack );
+        }
+    };
+
     TEST_F( IntrusiveTreiberStack_DHP, base )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -175,7 +175,7 @@ namespace {
 
         test<stack_type>();
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_base )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -192,7 +192,7 @@ namespace {
 
         test<stack_type>();
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_base_dynamic )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -204,13 +204,13 @@ namespace {
                         ci::opt::gc<gc_type>
                     >
                 >
-                ,ci::opt::buffer< ci::opt::v::dynamic_buffer<void *> >
+                ,ci::opt::buffer< ci::opt::v::initialized_dynamic_buffer<void *> >
             >::type
         > stack_type;
 
         test_dyn<stack_type>( 2 );
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_base_disposer )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -226,7 +226,7 @@ namespace {
 
         test<stack_type>();
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_member )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -244,7 +244,7 @@ namespace {
 
         test<stack_type>();
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_member_dynamic )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -257,13 +257,13 @@ namespace {
                         ci::opt::gc<gc_type>
                     >
                 >
-                ,ci::opt::buffer< ci::opt::v::dynamic_buffer<void *> >
+                ,ci::opt::buffer< ci::opt::v::initialized_dynamic_buffer<void *> >
             >::type
         > stack_type;
 
         test_dyn<stack_type>( 2 );
     }
-\r
+
     TEST_F( IntrusiveTreiberStack_DHP, elimination_member_disposer )
     {
         typedef cds::intrusive::TreiberStack< gc_type,
@@ -276,13 +276,13 @@ namespace {
                         ci::opt::gc<gc_type>
                     >
                 >
-                ,ci::opt::buffer< ci::opt::v::dynamic_buffer<void *> >
+                ,ci::opt::buffer< ci::opt::v::initialized_dynamic_buffer<void *> >
                 , ci::opt::disposer< mock_disposer >
             >::type
         > stack_type;
 
         test_dyn<stack_type>( 2 );
     }
-\r
-} // namespace\r
-\r
+
+} // namespace
+