Index: third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc |
diff --git a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc b/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc |
index bee7132aab8ac2af251fb3a1b64e016c8f1b7add..185e95f9169747b88537bf7d3912647aaf139983 100644 |
--- a/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc |
+++ b/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc |
@@ -1730,30 +1730,26 @@ |
TEST_F(TaskQueueManagerTest, TaskQueueObserver_DelayedTask) { |
Initialize(1u); |
- base::TimeTicks start_time = manager_->Delegate()->NowTicks(); |
- base::TimeDelta delay10s(base::TimeDelta::FromSeconds(10)); |
- base::TimeDelta delay100s(base::TimeDelta::FromSeconds(100)); |
- base::TimeDelta delay1s(base::TimeDelta::FromSeconds(1)); |
- |
MockTaskQueueObserver observer; |
runners_[0]->SetObserver(&observer); |
// We should get a notification when a delayed task is posted on an empty |
// queue. |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), |
- start_time + delay10s)); |
- runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay10s); |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), _)); |
+ runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
+ base::TimeDelta::FromSeconds(10)); |
Mock::VerifyAndClearExpectations(&observer); |
// We should not get a notification for a longer delay. |
EXPECT_CALL(observer, OnQueueNextWakeUpChanged(_, _)).Times(0); |
- runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay100s); |
+ runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
+ base::TimeDelta::FromSeconds(100)); |
Mock::VerifyAndClearExpectations(&observer); |
// We should get a notification for a shorter delay. |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), |
- start_time + delay1s)); |
- runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay1s); |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), _)); |
+ runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
+ base::TimeDelta::FromSeconds(1)); |
Mock::VerifyAndClearExpectations(&observer); |
std::unique_ptr<TaskQueue::QueueEnabledVoter> voter = |
@@ -1762,8 +1758,7 @@ |
// When a queue has been enabled, we may get a notification if the |
// TimeDomain's next scheduled wake_up has changed. |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), |
- start_time + delay1s)); |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), _)); |
voter->SetQueueEnabled(true); |
// Tidy up. |
@@ -1777,18 +1772,14 @@ |
runners_[0]->SetObserver(&observer); |
runners_[1]->SetObserver(&observer); |
- base::TimeTicks start_time = manager_->Delegate()->NowTicks(); |
- base::TimeDelta delay1s(base::TimeDelta::FromSeconds(1)); |
- base::TimeDelta delay10s(base::TimeDelta::FromSeconds(10)); |
- |
- EXPECT_CALL(observer, |
- OnQueueNextWakeUpChanged(runners_[0].get(), start_time + delay1s)) |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), _)) |
.Times(1); |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[1].get(), |
- start_time + delay10s)) |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[1].get(), _)) |
.Times(1); |
- runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay1s); |
- runners_[1]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay10s); |
+ runners_[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
+ base::TimeDelta::FromSeconds(1)); |
+ runners_[1]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
+ base::TimeDelta::FromSeconds(10)); |
testing::Mock::VerifyAndClearExpectations(&observer); |
std::unique_ptr<TaskQueue::QueueEnabledVoter> voter0 = |
@@ -1802,8 +1793,7 @@ |
Mock::VerifyAndClearExpectations(&observer); |
// Re-enabling it should should also trigger a notification. |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), |
- start_time + delay1s)); |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[0].get(), _)); |
voter0->SetQueueEnabled(true); |
Mock::VerifyAndClearExpectations(&observer); |
@@ -1813,8 +1803,7 @@ |
Mock::VerifyAndClearExpectations(&observer); |
// Re-enabling it should should trigger a notification. |
- EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[1].get(), |
- start_time + delay10s)); |
+ EXPECT_CALL(observer, OnQueueNextWakeUpChanged(runners_[1].get(), _)); |
voter1->SetQueueEnabled(true); |
Mock::VerifyAndClearExpectations(&observer); |
@@ -1822,56 +1811,6 @@ |
EXPECT_CALL(observer, OnQueueNextWakeUpChanged(_, _)).Times(AnyNumber()); |
runners_[0]->UnregisterTaskQueue(); |
runners_[1]->UnregisterTaskQueue(); |
-} |
- |
-class CancelableTask { |
- public: |
- explicit CancelableTask(base::TickClock* clock) |
- : clock_(clock), weak_factory_(this) {} |
- |
- void RecordTimeTask(std::vector<base::TimeTicks>* run_times) { |
- run_times->push_back(clock_->NowTicks()); |
- } |
- |
- base::TickClock* clock_; |
- base::WeakPtrFactory<CancelableTask> weak_factory_; |
-}; |
- |
-TEST_F(TaskQueueManagerTest, TaskQueueObserver_SweepCanceledDelayedTasks) { |
- Initialize(1u); |
- |
- MockTaskQueueObserver observer; |
- runners_[0]->SetObserver(&observer); |
- |
- base::TimeTicks start_time = manager_->Delegate()->NowTicks(); |
- base::TimeDelta delay1(base::TimeDelta::FromSeconds(5)); |
- base::TimeDelta delay2(base::TimeDelta::FromSeconds(10)); |
- |
- EXPECT_CALL(observer, |
- OnQueueNextWakeUpChanged(runners_[0].get(), start_time + delay1)) |
- .Times(1); |
- |
- CancelableTask task1(now_src_.get()); |
- CancelableTask task2(now_src_.get()); |
- std::vector<base::TimeTicks> run_times; |
- runners_[0]->PostDelayedTask( |
- FROM_HERE, |
- base::Bind(&CancelableTask::RecordTimeTask, |
- task1.weak_factory_.GetWeakPtr(), &run_times), |
- delay1); |
- runners_[0]->PostDelayedTask( |
- FROM_HERE, |
- base::Bind(&CancelableTask::RecordTimeTask, |
- task2.weak_factory_.GetWeakPtr(), &run_times), |
- delay2); |
- |
- task1.weak_factory_.InvalidateWeakPtrs(); |
- |
- // Sweeping away canceled delayed tasks should trigger a notification. |
- EXPECT_CALL(observer, |
- OnQueueNextWakeUpChanged(runners_[0].get(), start_time + delay2)) |
- .Times(1); |
- manager_->SweepCanceledDelayedTasks(); |
} |
namespace { |
@@ -2227,6 +2166,19 @@ |
EXPECT_EQ(2u, events.size()); |
} |
+ |
+class CancelableTask { |
+ public: |
+ explicit CancelableTask(base::TickClock* clock) |
+ : clock_(clock), weak_factory_(this) {} |
+ |
+ void RecordTimeTask(std::vector<base::TimeTicks>* run_times) { |
+ run_times->push_back(clock_->NowTicks()); |
+ } |
+ |
+ base::TickClock* clock_; |
+ base::WeakPtrFactory<CancelableTask> weak_factory_; |
+}; |
TEST_F(TaskQueueManagerTest, NoWakeUpsForCanceledDelayedTasks) { |
Initialize(1u); |