Source code repo: http://github.com/khizmax/libcds/
Download: http://sourceforge.net/projects/libcds/files/
-
+
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
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.
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "queue_type.h"
};
public:
- static void SetUpTestCase()\r
- {\r
- cds_test::config const& cfg = get_config( "queue_random" );\r
-\r
+ static void SetUpTestCase()
+ {
+ cds_test::config const& cfg = get_config( "queue_random" );
+
s_nThreadCount = cfg.get_size_t( "ThreadCount", s_nThreadCount );
s_nQueueSize = cfg.get_size_t( "QueueSize", s_nQueueSize );
- if ( s_nThreadCount == 0 )
+ if ( s_nThreadCount == 0u )
s_nThreadCount = 1;
- if ( s_nQueueSize == 0 )
+ if ( s_nQueueSize == 0u )
s_nQueueSize = 1000;
- }\r
-\r
- //static void TearDownTestCase();\r
+ }
+
+ //static void TearDownTestCase();
protected:
template <class Queue>
void analyze( Queue& q )
{
- EXPECT_TRUE( q.empty() );
+ EXPECT_TRUE( q.empty());
std::vector< size_t > arrPushCount;
arrPushCount.resize( s_nThreadCount, 0 );
cds_test::thread_pool& pool = get_pool();
for ( size_t i = 0; i < pool.size(); ++i ) {
Strain<Queue>& thr = static_cast<Strain<Queue> &>( pool.get(i));
- EXPECT_EQ( thr.m_nUndefWriter, 0 );
- EXPECT_EQ( thr.m_nRepeatValue, 0 );
- EXPECT_EQ( thr.m_nPushError, 0 );
+ EXPECT_EQ( thr.m_nUndefWriter, 0u );
+ EXPECT_EQ( thr.m_nRepeatValue, 0u );
+ EXPECT_EQ( thr.m_nPushError, 0u );
nPushError += thr.m_nPushError;
arrPushCount[ thr.id() ] += thr.m_nPushCount;
CDSSTRESS_StdQueue( queue_random )
#undef CDSSTRESS_Queue_F
-#define CDSSTRESS_Queue_F( test_fixture, type_name ) \
+#define CDSSTRESS_Queue_F( test_fixture, type_name, level ) \
TEST_F( test_fixture, type_name ) \
{ \
+ if ( !check_detail_level( level )) return; \
typedef queue::Types< value_type >::type_name queue_type; \
queue_type queue( s_nQueueSize ); \
test( queue ); \
}
- CDSSTRESS_TsigasQueue( queue_random )
CDSSTRESS_VyukovQueue( queue_random )
#undef CDSSTRESS_Queue_F
}
};
-#define CDSSTRESS_Queue_F( test_fixture, type_name ) \
+#define CDSSTRESS_Queue_F( test_fixture, type_name, level ) \
TEST_P( test_fixture, type_name ) \
{ \
+ if ( !check_detail_level( level )) return; \
typedef typename queue::Types<value_type>::type_name queue_type; \
test< queue_type >(); \
}