From: Peizhao Ou Date: Wed, 24 Jan 2018 23:18:10 +0000 (-0800) Subject: Splits deque take & steal into 2 test caess X-Git-Url: http://plrg.eecs.uci.edu/git/?p=libcds.git;a=commitdiff_plain;h=f9566e1049acc276958138c8c39ffdd9a2dd6cef Splits deque take & steal into 2 test caess --- diff --git a/test/stress/sequential/sequential-misc/deque_driver.cpp b/test/stress/sequential/sequential-misc/deque_driver.cpp index 066296b1..9fe98137 100644 --- a/test/stress/sequential/sequential-misc/deque_driver.cpp +++ b/test/stress/sequential/sequential-misc/deque_driver.cpp @@ -76,14 +76,35 @@ ullong ChaseLevDequeTest::push_count; ullong ChaseLevDequeTest::push_sum; Deque *ChaseLevDequeTest::deque; -TEST_F(ChaseLevDequeTest, ChaseLevDeque) { - deque = new Deque(); +TEST_F(ChaseLevDequeTest, ChaseLevDeque_push_take) { + std::unique_ptr deque(new Deque()); + size_t sum = 0; int res; for (size_t i = 0; i < s_nDequePassCount; ++i) { deque->push(i); res = deque->take(); + sum += res; + } + size_t supposed_sum = s_nDequePassCount * (s_nDequePassCount - 1) / 2; + if (sum != supposed_sum) { + std::cout << "Sequential deque take sum: " << sum << " != " << supposed_sum + << "\n"; + } +} + +TEST_F(ChaseLevDequeTest, ChaseLevDeque_push_steal) { + std::unique_ptr deque(new Deque()); + size_t sum = 0; + int res; + for (size_t i = 0; i < s_nDequePassCount; ++i) { deque->push(i); res = deque->steal(); + sum += res; + } + size_t supposed_sum = s_nDequePassCount * (s_nDequePassCount - 1) / 2; + if (sum != supposed_sum) { + std::cout << "Sequential deque steal sum: " << sum << " != " << supposed_sum + << "\n"; } }