diff options
Diffstat (limited to 'deps/v8/test/unittests/heap/barrier-unittest.cc')
-rw-r--r-- | deps/v8/test/unittests/heap/barrier-unittest.cc | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/deps/v8/test/unittests/heap/barrier-unittest.cc b/deps/v8/test/unittests/heap/barrier-unittest.cc index 1d42f97a4f..07906b20c1 100644 --- a/deps/v8/test/unittests/heap/barrier-unittest.cc +++ b/deps/v8/test/unittests/heap/barrier-unittest.cc @@ -4,19 +4,27 @@ #include "src/heap/barrier.h" #include "src/base/platform/platform.h" +#include "src/base/platform/time.h" #include "testing/gtest/include/gtest/gtest.h" namespace v8 { namespace internal { namespace heap { +namespace { + +// Large timeout that will not trigger in tests. +constexpr base::TimeDelta test_timeout = base::TimeDelta::FromHours(3); + +} // namespace + TEST(OneshotBarrier, InitializeNotDone) { - OneshotBarrier barrier; + OneshotBarrier barrier(test_timeout); EXPECT_FALSE(barrier.DoneForTesting()); } TEST(OneshotBarrier, DoneAfterWait_Sequential) { - OneshotBarrier barrier; + OneshotBarrier barrier(test_timeout); barrier.Start(); barrier.Wait(); EXPECT_TRUE(barrier.DoneForTesting()); @@ -41,7 +49,7 @@ class ThreadWaitingOnBarrier final : public base::Thread { TEST(OneshotBarrier, DoneAfterWait_Concurrent) { const int kThreadCount = 2; - OneshotBarrier barrier; + OneshotBarrier barrier(test_timeout); ThreadWaitingOnBarrier threads[kThreadCount]; for (int i = 0; i < kThreadCount; i++) { threads[i].Initialize(&barrier); @@ -59,7 +67,7 @@ TEST(OneshotBarrier, DoneAfterWait_Concurrent) { TEST(OneshotBarrier, EarlyFinish_Concurrent) { const int kThreadCount = 2; - OneshotBarrier barrier; + OneshotBarrier barrier(test_timeout); ThreadWaitingOnBarrier threads[kThreadCount]; // Test that one thread that actually finishes processing work before other // threads call Start() will move the barrier in Done state. @@ -103,7 +111,7 @@ class CountingThread final : public base::Thread { private: void ProcessWork() { - base::LockGuard<base::Mutex> guard(mutex_); + base::MutexGuard guard(mutex_); processed_work_ += *work_; *work_ = 0; } @@ -118,7 +126,7 @@ class CountingThread final : public base::Thread { TEST(OneshotBarrier, Processing_Concurrent) { const size_t kWorkCounter = 173173; - OneshotBarrier barrier; + OneshotBarrier barrier(test_timeout); base::Mutex mutex; size_t work = 0; CountingThread counting_thread(&barrier, &mutex, &work); @@ -129,7 +137,7 @@ TEST(OneshotBarrier, Processing_Concurrent) { for (size_t i = 0; i < kWorkCounter; i++) { { - base::LockGuard<base::Mutex> guard(&mutex); + base::MutexGuard guard(&mutex); work++; } barrier.NotifyAll(); |