Only activates insdelfind for sequential set test case
[libcds.git] / test / stress / sequential / sequential-set / insdel_find / set_insdelfind.h
index ba9a8490134f7b740f885e2d649b3592d5dedd0d..1ab9284af70b7ef941156d6a8dc60e64ca7e0938 100644 (file)
@@ -37,6 +37,13 @@ namespace set {
     public:
         static size_t s_nSetSize;           // initial set size
         static size_t s_nPassCount;           // initial set size
+        static size_t s_nBronsonAVLTreeMapPassCount;
+        static size_t s_nEllenBinTreeMapPassCount;
+        static size_t s_nFeldmanPassCount;
+        static size_t s_nMichaelMapPassCount;
+        static size_t s_nSkipListMapPassCount;
+        static size_t s_nSplitListMapPassCount;
+
         static size_t s_nThreadCount;       // thread count
         static size_t s_nMaxLoadFactor;     // maximum load factor
         static unsigned int s_nInsertPercentage;
@@ -204,6 +211,34 @@ namespace set {
             Set s( *this );
             do_test( s );
         }
+
+        template <class Set>
+        void run_bronson_avl_tree() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nBronsonAVLTreeMapPassCount;
+          run_test<Set>();
+        }
+
+        template <class Set>
+        void run_ellen_bin_tree() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nEllenBinTreeMapPassCount;
+          run_test<Set>();
+        }
+
+        template <class Set>
+        void run_feldman() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nFeldmanPassCount;
+          run_test<Set>();
+        }
+
+        template <class Set>
+        void run_skip_list() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nSkipListMapPassCount;
+          run_test<Set>();
+        }
     };
 
     class Set_InsDelFind_LF: public Set_InsDelFind
@@ -218,6 +253,20 @@ namespace set {
             Set_InsDelFind::run_test<Set>();
         }
 
+        template <class Set>
+        void run_michael() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nMichaelMapPassCount;
+          Set_InsDelFind_LF::run_test<Set>();
+        }
+
+        template <class Set>
+        void run_split_list() {
+          Set_InsDelFind::s_nPassCount =
+              Set_InsDelFind::s_nSplitListMapPassCount;
+          Set_InsDelFind_LF::run_test<Set>();
+        }
+
         static std::vector<size_t> get_load_factors();
     };