Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(62)

Unified Diff: third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc

Issue 2798563003: [scheduler] Add TaskQueue::Observer (Closed)
Patch Set: add todo for test timings & wake_up -> wake-up in comments Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
diff --git a/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc b/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
index 1c47328ee3da2aae8f1fdf7ae01d81c1de47b342..f736a67882193e5d32d758a21f9e1d8fecb72388 100644
--- a/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
+++ b/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
@@ -24,19 +24,17 @@ namespace scheduler {
class MockTimeDomain : public TimeDomain {
public:
- explicit MockTimeDomain(TimeDomain::Observer* observer)
- : TimeDomain(observer),
- now_(base::TimeTicks() + base::TimeDelta::FromSeconds(1)) {}
+ MockTimeDomain()
+ : now_(base::TimeTicks() + base::TimeDelta::FromSeconds(1)) {}
~MockTimeDomain() override {}
using TimeDomain::CancelDelayedWork;
using TimeDomain::NextScheduledRunTime;
using TimeDomain::NextScheduledTaskQueue;
- using TimeDomain::OnQueueHasImmediateWork;
using TimeDomain::ScheduleDelayedWork;
using TimeDomain::UnregisterQueue;
- using TimeDomain::WakeupReadyDelayedQueues;
+ using TimeDomain::WakeUpReadyDelayedQueues;
// TimeSource implementation:
LazyNow CreateLazyNow() const override { return LazyNow(now_); }
@@ -53,10 +51,10 @@ class MockTimeDomain : public TimeDomain {
void OnRegisterWithTaskQueueManager(
TaskQueueManager* task_queue_manager) override {}
- MOCK_METHOD2(RequestWakeupAt,
+ MOCK_METHOD2(RequestWakeUpAt,
void(base::TimeTicks now, base::TimeTicks run_time));
- MOCK_METHOD1(CancelWakeupAt, void(base::TimeTicks run_time));
+ MOCK_METHOD1(CancelWakeUpAt, void(base::TimeTicks run_time));
void SetNow(base::TimeTicks now) { now_ = now; }
@@ -82,7 +80,7 @@ class TimeDomainTest : public testing::Test {
}
virtual MockTimeDomain* CreateMockTimeDomain() {
- return new MockTimeDomain(nullptr);
+ return new MockTimeDomain();
}
std::unique_ptr<MockTimeDomain> time_domain_;
@@ -92,7 +90,7 @@ class TimeDomainTest : public testing::Test {
TEST_F(TimeDomainTest, ScheduleDelayedWork) {
base::TimeDelta delay = base::TimeDelta::FromMilliseconds(10);
base::TimeTicks delayed_runtime = time_domain_->Now() + delay;
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, delayed_runtime));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, delayed_runtime));
base::TimeTicks now = time_domain_->Now();
time_domain_->ScheduleDelayedWork(task_queue_.get(), {now + delay, 0}, now);
@@ -105,15 +103,15 @@ TEST_F(TimeDomainTest, ScheduleDelayedWork) {
EXPECT_EQ(task_queue_.get(), next_task_queue);
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(_)).Times(AnyNumber());
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(_)).Times(AnyNumber());
}
-TEST_F(TimeDomainTest, ScheduleDelayedWorkSupersedesPreviousWakeup) {
+TEST_F(TimeDomainTest, ScheduleDelayedWorkSupersedesPreviousWakeUp) {
base::TimeDelta delay1 = base::TimeDelta::FromMilliseconds(10);
base::TimeDelta delay2 = base::TimeDelta::FromMilliseconds(100);
base::TimeTicks delayed_runtime1 = time_domain_->Now() + delay1;
base::TimeTicks delayed_runtime2 = time_domain_->Now() + delay2;
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, delayed_runtime1));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, delayed_runtime1));
base::TimeTicks now = time_domain_->Now();
time_domain_->ScheduleDelayedWork(task_queue_.get(), {delayed_runtime1, 0},
now);
@@ -124,9 +122,9 @@ TEST_F(TimeDomainTest, ScheduleDelayedWorkSupersedesPreviousWakeup) {
Mock::VerifyAndClearExpectations(time_domain_.get());
- // Now scheduler a later wakeup, which should replace the previously requested
- // one.
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, delayed_runtime2));
+ // Now scheduler a later wake_up, which should replace the previously
+ // requested one.
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, delayed_runtime2));
time_domain_->ScheduleDelayedWork(task_queue_.get(), {delayed_runtime2, 0},
now);
@@ -134,10 +132,10 @@ TEST_F(TimeDomainTest, ScheduleDelayedWorkSupersedesPreviousWakeup) {
EXPECT_EQ(delayed_runtime2, next_scheduled_runtime);
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(_)).Times(AnyNumber());
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(_)).Times(AnyNumber());
}
-TEST_F(TimeDomainTest, RequestWakeupAt_OnlyCalledForEarlierTasks) {
+TEST_F(TimeDomainTest, RequestWakeUpAt_OnlyCalledForEarlierTasks) {
scoped_refptr<internal::TaskQueueImpl> task_queue2 = make_scoped_refptr(
new internal::TaskQueueImpl(nullptr, time_domain_.get(),
TaskQueue::Spec(TaskQueue::QueueType::TEST),
@@ -158,27 +156,27 @@ TEST_F(TimeDomainTest, RequestWakeupAt_OnlyCalledForEarlierTasks) {
base::TimeDelta delay3 = base::TimeDelta::FromMilliseconds(30);
base::TimeDelta delay4 = base::TimeDelta::FromMilliseconds(1);
- // RequestWakeupAt should always be called if there are no other wakeups.
+ // RequestWakeUpAt should always be called if there are no other wake_ups.
base::TimeTicks now = time_domain_->Now();
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, now + delay1));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, now + delay1));
time_domain_->ScheduleDelayedWork(task_queue_.get(), {now + delay1, 0}, now);
Mock::VerifyAndClearExpectations(time_domain_.get());
- // RequestWakeupAt should not be called when scheduling later tasks.
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, _)).Times(0);
+ // RequestWakeUpAt should not be called when scheduling later tasks.
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, _)).Times(0);
time_domain_->ScheduleDelayedWork(task_queue2.get(), {now + delay2, 0}, now);
time_domain_->ScheduleDelayedWork(task_queue3.get(), {now + delay3, 0}, now);
- // RequestWakeupAt should be called when scheduling earlier tasks.
+ // RequestWakeUpAt should be called when scheduling earlier tasks.
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, now + delay4));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, now + delay4));
time_domain_->ScheduleDelayedWork(task_queue4.get(), {now + delay4, 0}, now);
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, _));
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(_)).Times(2);
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, _));
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(_)).Times(2);
task_queue2->UnregisterTaskQueue();
task_queue3->UnregisterTaskQueue();
task_queue4->UnregisterTaskQueue();
@@ -191,11 +189,11 @@ TEST_F(TimeDomainTest, UnregisterQueue) {
"test.category", "test.category"));
base::TimeTicks now = time_domain_->Now();
- base::TimeTicks wakeup1 = now + base::TimeDelta::FromMilliseconds(10);
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, wakeup1)).Times(1);
- time_domain_->ScheduleDelayedWork(task_queue_.get(), {wakeup1, 0}, now);
- base::TimeTicks wakeup2 = now + base::TimeDelta::FromMilliseconds(100);
- time_domain_->ScheduleDelayedWork(task_queue2_.get(), {wakeup2, 0}, now);
+ base::TimeTicks wake_up1 = now + base::TimeDelta::FromMilliseconds(10);
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, wake_up1)).Times(1);
+ time_domain_->ScheduleDelayedWork(task_queue_.get(), {wake_up1, 0}, now);
+ base::TimeTicks wake_up2 = now + base::TimeDelta::FromMilliseconds(100);
+ time_domain_->ScheduleDelayedWork(task_queue2_.get(), {wake_up2, 0}, now);
TaskQueue* next_task_queue;
EXPECT_TRUE(time_domain_->NextScheduledTaskQueue(&next_task_queue));
@@ -203,8 +201,8 @@ TEST_F(TimeDomainTest, UnregisterQueue) {
testing::Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(wakeup1)).Times(1);
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, wakeup2)).Times(1);
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(wake_up1)).Times(1);
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, wake_up2)).Times(1);
time_domain_->UnregisterQueue(task_queue_.get());
task_queue_ = scoped_refptr<internal::TaskQueueImpl>();
@@ -213,17 +211,17 @@ TEST_F(TimeDomainTest, UnregisterQueue) {
testing::Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(wakeup2)).Times(1);
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(wake_up2)).Times(1);
time_domain_->UnregisterQueue(task_queue2_.get());
EXPECT_FALSE(time_domain_->NextScheduledTaskQueue(&next_task_queue));
}
-TEST_F(TimeDomainTest, WakeupReadyDelayedQueues) {
+TEST_F(TimeDomainTest, WakeUpReadyDelayedQueues) {
base::TimeDelta delay = base::TimeDelta::FromMilliseconds(50);
base::TimeTicks now = time_domain_->Now();
base::TimeTicks delayed_runtime = now + delay;
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, delayed_runtime));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, delayed_runtime));
time_domain_->ScheduleDelayedWork(task_queue_.get(), {delayed_runtime, 0},
now);
@@ -232,23 +230,23 @@ TEST_F(TimeDomainTest, WakeupReadyDelayedQueues) {
EXPECT_EQ(delayed_runtime, next_run_time);
LazyNow lazy_now = time_domain_->CreateLazyNow();
- time_domain_->WakeupReadyDelayedQueues(&lazy_now);
+ time_domain_->WakeUpReadyDelayedQueues(&lazy_now);
ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time));
EXPECT_EQ(delayed_runtime, next_run_time);
time_domain_->SetNow(delayed_runtime);
lazy_now = time_domain_->CreateLazyNow();
- time_domain_->WakeupReadyDelayedQueues(&lazy_now);
+ time_domain_->WakeUpReadyDelayedQueues(&lazy_now);
ASSERT_FALSE(time_domain_->NextScheduledRunTime(&next_run_time));
}
-TEST_F(TimeDomainTest, WakeupReadyDelayedQueuesWithIdenticalRuntimes) {
+TEST_F(TimeDomainTest, WakeUpReadyDelayedQueuesWithIdenticalRuntimes) {
int sequence_num = 0;
base::TimeDelta delay = base::TimeDelta::FromMilliseconds(50);
base::TimeTicks now = time_domain_->Now();
base::TimeTicks delayed_runtime = now + delay;
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, delayed_runtime));
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(delayed_runtime));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, delayed_runtime));
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(delayed_runtime));
scoped_refptr<internal::TaskQueueImpl> task_queue2 = make_scoped_refptr(
new internal::TaskQueueImpl(nullptr, time_domain_.get(),
@@ -261,7 +259,7 @@ TEST_F(TimeDomainTest, WakeupReadyDelayedQueuesWithIdenticalRuntimes) {
{delayed_runtime, ++sequence_num}, now);
LazyNow lazy_now = time_domain_->CreateLazyNow();
- time_domain_->WakeupReadyDelayedQueues(&lazy_now);
+ time_domain_->WakeUpReadyDelayedQueues(&lazy_now);
// The second task queue should wake up first since it has a lower sequence
// number.
@@ -276,14 +274,14 @@ TEST_F(TimeDomainTest, CancelDelayedWork) {
base::TimeTicks now = time_domain_->Now();
base::TimeTicks run_time = now + base::TimeDelta::FromMilliseconds(20);
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, run_time));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, run_time));
time_domain_->ScheduleDelayedWork(task_queue_.get(), {run_time, 0}, now);
TaskQueue* next_task_queue;
EXPECT_TRUE(time_domain_->NextScheduledTaskQueue(&next_task_queue));
EXPECT_EQ(task_queue_.get(), next_task_queue);
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(run_time));
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(run_time));
time_domain_->CancelDelayedWork(task_queue_.get());
EXPECT_FALSE(time_domain_->NextScheduledTaskQueue(&next_task_queue));
}
@@ -297,11 +295,11 @@ TEST_F(TimeDomainTest, CancelDelayedWork_TwoQueues) {
base::TimeTicks now = time_domain_->Now();
base::TimeTicks run_time1 = now + base::TimeDelta::FromMilliseconds(20);
base::TimeTicks run_time2 = now + base::TimeDelta::FromMilliseconds(40);
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, run_time1));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, run_time1));
time_domain_->ScheduleDelayedWork(task_queue_.get(), {run_time1, 0}, now);
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, _)).Times(0);
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, _)).Times(0);
time_domain_->ScheduleDelayedWork(task_queue2.get(), {run_time2, 0}, now);
Mock::VerifyAndClearExpectations(time_domain_.get());
@@ -313,8 +311,8 @@ TEST_F(TimeDomainTest, CancelDelayedWork_TwoQueues) {
ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time));
EXPECT_EQ(run_time1, next_run_time);
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(run_time1));
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, run_time2));
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(run_time1));
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, run_time2));
time_domain_->CancelDelayedWork(task_queue_.get());
EXPECT_TRUE(time_domain_->NextScheduledTaskQueue(&next_task_queue));
EXPECT_EQ(task_queue2.get(), next_task_queue);
@@ -323,45 +321,12 @@ TEST_F(TimeDomainTest, CancelDelayedWork_TwoQueues) {
EXPECT_EQ(run_time2, next_run_time);
Mock::VerifyAndClearExpectations(time_domain_.get());
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, _)).Times(AnyNumber());
- EXPECT_CALL(*time_domain_.get(), CancelWakeupAt(_)).Times(AnyNumber());
+ EXPECT_CALL(*time_domain_.get(), RequestWakeUpAt(_, _)).Times(AnyNumber());
+ EXPECT_CALL(*time_domain_.get(), CancelWakeUpAt(_)).Times(AnyNumber());
// Tidy up.
task_queue2->UnregisterTaskQueue();
}
-namespace {
-class MockObserver : public TimeDomain::Observer {
- public:
- ~MockObserver() override {}
-
- MOCK_METHOD1(OnTimeDomainHasImmediateWork, void(TaskQueue*));
- MOCK_METHOD1(OnTimeDomainHasDelayedWork, void(TaskQueue*));
-};
-} // namespace
-
-class TimeDomainWithObserverTest : public TimeDomainTest {
- public:
- MockTimeDomain* CreateMockTimeDomain() override {
- observer_.reset(new MockObserver());
- return new MockTimeDomain(observer_.get());
- }
-
- std::unique_ptr<MockObserver> observer_;
-};
-
-TEST_F(TimeDomainWithObserverTest, OnTimeDomainHasImmediateWork) {
- EXPECT_CALL(*observer_, OnTimeDomainHasImmediateWork(task_queue_.get()));
- time_domain_->OnQueueHasImmediateWork(task_queue_.get());
-}
-
-TEST_F(TimeDomainWithObserverTest, OnTimeDomainHasDelayedWork) {
- EXPECT_CALL(*observer_, OnTimeDomainHasDelayedWork(task_queue_.get()));
- EXPECT_CALL(*time_domain_.get(), RequestWakeupAt(_, _));
- base::TimeTicks now = time_domain_->Now();
- time_domain_->ScheduleDelayedWork(
- task_queue_.get(), {now + base::TimeDelta::FromMilliseconds(10), 0}, now);
-}
-
} // namespace scheduler
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698