Chromium Code Reviews| Index: components/scheduler/child/task_queue_manager_unittest.cc |
| diff --git a/components/scheduler/child/task_queue_manager_unittest.cc b/components/scheduler/child/task_queue_manager_unittest.cc |
| index c318fc967bd5d1a3bd146560578bc8306237633e..cbbe77f984dff699b27c50ae65ed3cb83882d455 100644 |
| --- a/components/scheduler/child/task_queue_manager_unittest.cc |
| +++ b/components/scheduler/child/task_queue_manager_unittest.cc |
| @@ -4,9 +4,9 @@ |
| #include "components/scheduler/child/task_queue_manager.h" |
| +#include "base/test/simple_test_tick_clock.h" |
| #include "base/threading/thread.h" |
| #include "cc/test/ordered_simple_task_runner.h" |
| -#include "cc/test/test_now_source.h" |
| #include "components/scheduler/child/nestable_task_runner_for_test.h" |
| #include "components/scheduler/child/scheduler_message_loop_delegate.h" |
| #include "components/scheduler/child/task_queue_selector.h" |
| @@ -115,7 +115,8 @@ class TaskQueueManagerTest : public testing::Test { |
| }; |
| void Initialize(size_t num_queues, SelectorType type) { |
| - now_src_ = cc::TestNowSource::Create(1000); |
| + now_src_ = new base::SimpleTestTickClock(); |
| + now_src_->Advance(base::TimeDelta::FromInternalValue(1000)); |
| test_task_runner_ = |
| make_scoped_refptr(new cc::OrderedSimpleTaskRunner(now_src_, false)); |
| selector_ = make_scoped_ptr(createSelectorForTest(type)); |
| @@ -173,7 +174,7 @@ class TaskQueueManagerTest : public testing::Test { |
| &TaskQueueManager::WakeupPolicyToString); |
| } |
| - scoped_refptr<cc::TestNowSource> now_src_; |
| + base::SimpleTestTickClock* now_src_; |
| scoped_refptr<cc::OrderedSimpleTaskRunner> test_task_runner_; |
| scoped_ptr<SelectorForTest> selector_; |
| scoped_ptr<TaskQueueManager> manager_; |
| @@ -249,7 +250,8 @@ void NopTask() { |
| TEST_F(TaskQueueManagerTest, NowNotCalledWhenThereAreNoDelayedTasks) { |
|
mithro-old
2015/05/29 08:26:48
Sami, this seems like a very weird test - any idea
Sami
2015/05/29 14:00:58
The idea is to avoid reading the current time anyw
mithro-old
2015/06/01 03:37:37
Yeah, maybe we should log a cleanup bug about chan
Ankur Verma
2015/06/01 05:30:44
Should i exclude this cleanup request for this par
mithro-old
2015/06/01 07:32:15
I logged a bug about this issue at https://code.go
Ankur Verma
2015/06/01 09:21:40
Yes i understand. I am thinking of renaming the te
mithro-old
2015/06/01 11:31:20
I don't think you want booleans or anything inside
Ankur Verma
2015/06/03 14:56:10
Done.
|
| Initialize(3u, SelectorType::Explicit); |
| - scoped_refptr<cc::TestNowSource> now_src = cc::TestNowSource::Create(1000); |
| + base::SimpleTestTickClock* now_src = new base::SimpleTestTickClock(); |
| + now_src->Advance(base::TimeDelta::FromInternalValue(1000)); |
| manager_->SetTimeSourceForTesting( |
| make_scoped_ptr(new TestTimeSource(now_src))); |
| @@ -274,7 +276,9 @@ TEST_F(TaskQueueManagerTest, NowNotCalledWhenThereAreNoDelayedTasks) { |
| test_task_runner_->RunUntilIdle(); |
| - EXPECT_EQ(0, now_src->NumNowCalls()); |
| + TestTimeSource* test_time_src = |
| + static_cast<TestTimeSource*>(manager_->GetTimeSourceForTesting()); |
| + EXPECT_EQ(0, test_time_src->NumNowCalls()); |
| } |
| TEST_F(TaskQueueManagerTest, NonNestableTaskPosting) { |
| @@ -570,7 +574,7 @@ TEST_F(TaskQueueManagerTest, ManualPumpingWithDelayedTask) { |
| EXPECT_TRUE(run_order.empty()); |
| // Once the delay has expired, pumping causes the task to run. |
| - now_src_->AdvanceNow(base::TimeDelta::FromMilliseconds(5)); |
| + now_src_->Advance(base::TimeDelta::FromMilliseconds(5)); |
| manager_->PumpQueue(0); |
| EXPECT_TRUE(test_task_runner_->HasPendingTasks()); |
| test_task_runner_->RunPendingTasks(); |
| @@ -597,7 +601,7 @@ TEST_F(TaskQueueManagerTest, ManualPumpingWithMultipleDelayedTasks) { |
| runner->PostDelayedTask(FROM_HERE, base::Bind(&TestTask, 3, &run_order), |
| delay3); |
| - now_src_->AdvanceNow(base::TimeDelta::FromMilliseconds(15)); |
| + now_src_->Advance(base::TimeDelta::FromMilliseconds(15)); |
| test_task_runner_->RunUntilIdle(); |
| EXPECT_TRUE(run_order.empty()); |
| @@ -1042,7 +1046,8 @@ TEST_F(TaskQueueManagerTest, ThreadCheckAfterTermination) { |
| } |
| TEST_F(TaskQueueManagerTest, NextPendingDelayedTaskRunTime) { |
| - scoped_refptr<cc::TestNowSource> clock(cc::TestNowSource::Create()); |
| + base::SimpleTestTickClock* clock = new base::SimpleTestTickClock(); |
| + clock->Advance(base::TimeDelta::FromInternalValue(10000)); |
|
Sami
2015/05/29 14:00:58
Where did the value 10000 come from?
Ankur Verma
2015/06/01 05:30:44
cc::TestNowSource::Create() had internally started
|
| Initialize(2u, SelectorType::Explicit); |
| manager_->SetTimeSourceForTesting(make_scoped_ptr(new TestTimeSource(clock))); |
| @@ -1059,30 +1064,30 @@ TEST_F(TaskQueueManagerTest, NextPendingDelayedTaskRunTime) { |
| // With a delayed task. |
| base::TimeDelta expected_delay = base::TimeDelta::FromMilliseconds(50); |
| runners[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), expected_delay); |
| - EXPECT_EQ(clock->Now() + expected_delay, |
| + EXPECT_EQ(clock->NowTicks() + expected_delay, |
| manager_->NextPendingDelayedTaskRunTime()); |
| // With another delayed task in the same queue with a longer delay. |
| runners[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), |
| base::TimeDelta::FromMilliseconds(100)); |
| - EXPECT_EQ(clock->Now() + expected_delay, |
| + EXPECT_EQ(clock->NowTicks() + expected_delay, |
| manager_->NextPendingDelayedTaskRunTime()); |
| // With another delayed task in the same queue with a shorter delay. |
| expected_delay = base::TimeDelta::FromMilliseconds(20); |
| runners[0]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), expected_delay); |
| - EXPECT_EQ(clock->Now() + expected_delay, |
| + EXPECT_EQ(clock->NowTicks() + expected_delay, |
| manager_->NextPendingDelayedTaskRunTime()); |
| // With another delayed task in a different queue with a shorter delay. |
| expected_delay = base::TimeDelta::FromMilliseconds(10); |
| runners[1]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), expected_delay); |
| - EXPECT_EQ(clock->Now() + expected_delay, |
| + EXPECT_EQ(clock->NowTicks() + expected_delay, |
| manager_->NextPendingDelayedTaskRunTime()); |
| // Test it updates as time progresses |
| - clock->AdvanceNow(expected_delay); |
| - EXPECT_EQ(clock->Now(), manager_->NextPendingDelayedTaskRunTime()); |
| + clock->Advance(expected_delay); |
| + EXPECT_EQ(clock->NowTicks(), manager_->NextPendingDelayedTaskRunTime()); |
| } |
| TEST_F(TaskQueueManagerTest, NextPendingDelayedTaskRunTime_MultipleQueues) { |
| @@ -1100,7 +1105,7 @@ TEST_F(TaskQueueManagerTest, NextPendingDelayedTaskRunTime_MultipleQueues) { |
| runners[1]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay2); |
| runners[2]->PostDelayedTask(FROM_HERE, base::Bind(&NopTask), delay3); |
| - EXPECT_EQ(now_src_->Now() + delay2, |
| + EXPECT_EQ(now_src_->NowTicks() + delay2, |
| manager_->NextPendingDelayedTaskRunTime()); |
| } |