Chromium Code Reviews| Index: components/scheduler/renderer/renderer_scheduler_impl_unittest.cc |
| diff --git a/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc b/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc |
| index 449282af046bc5c363dea3b3c6f0e238aeebe533..e4e341dff8e3647b7a1f6a08beff28d78ddaf4d0 100644 |
| --- a/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc |
| +++ b/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc |
| @@ -5,9 +5,9 @@ |
| #include "components/scheduler/renderer/renderer_scheduler_impl.h" |
| #include "base/callback.h" |
| +#include "base/test/simple_test_tick_clock.h" |
| #include "cc/output/begin_frame_args.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/test_time_source.h" |
| @@ -79,11 +79,11 @@ void RepostingIdleTestTask(SingleThreadIdleTaskRunner* idle_task_runner, |
| } |
| void UpdateClockToDeadlineIdleTestTask( |
| - cc::TestNowSource* clock, |
| + base::SimpleTestTickClock* clock, |
| base::SingleThreadTaskRunner* task_runner, |
| int* run_count, |
| base::TimeTicks deadline) { |
| - clock->SetNow(deadline); |
| + clock->Advance(deadline - clock->NowTicks()); |
| // Due to the way in which OrderedSimpleTestRunner orders tasks and the fact |
| // that we updated the time within a task, the delayed pending task to call |
| // EndIdlePeriod will not happen until after a TaskQueueManager DoWork, so |
| @@ -123,17 +123,18 @@ class RendererSchedulerImplTest : public testing::Test { |
| public: |
| using Policy = RendererSchedulerImpl::Policy; |
| - RendererSchedulerImplTest() |
| - : clock_(cc::TestNowSource::Create(5000)), |
| - mock_task_runner_(new cc::OrderedSimpleTaskRunner(clock_, false)), |
| - nestable_task_runner_( |
| - NestableTaskRunnerForTest::Create(mock_task_runner_)), |
| - scheduler_(new RendererSchedulerImpl(nestable_task_runner_)), |
| - default_task_runner_(scheduler_->DefaultTaskRunner()), |
| - compositor_task_runner_(scheduler_->CompositorTaskRunner()), |
| - loading_task_runner_(scheduler_->LoadingTaskRunner()), |
| - idle_task_runner_(scheduler_->IdleTaskRunner()), |
| - timer_task_runner_(scheduler_->TimerTaskRunner()) { |
| + RendererSchedulerImplTest() : clock_(new base::SimpleTestTickClock()) { |
| + clock_->Advance(base::TimeDelta::FromInternalValue(5000)); |
|
Sami
2015/05/29 14:00:58
Ditto about base time.
Ankur Verma
2015/06/03 14:56:10
Have'nt changed starting values yet as per mithro'
|
| + mock_task_runner_ = new cc::OrderedSimpleTaskRunner(clock_, false); |
| + nestable_task_runner_ = |
| + NestableTaskRunnerForTest::Create(mock_task_runner_); |
| + scheduler_ = |
| + make_scoped_ptr(new RendererSchedulerImpl(nestable_task_runner_)); |
| + default_task_runner_ = scheduler_->DefaultTaskRunner(); |
| + compositor_task_runner_ = scheduler_->CompositorTaskRunner(); |
| + loading_task_runner_ = scheduler_->LoadingTaskRunner(); |
| + idle_task_runner_ = scheduler_->IdleTaskRunner(); |
| + timer_task_runner_ = scheduler_->TimerTaskRunner(); |
| scheduler_->GetSchedulerHelperForTesting()->SetTimeSourceForTesting( |
| make_scoped_ptr(new TestTimeSource(clock_))); |
| scheduler_->GetSchedulerHelperForTesting() |
| @@ -142,7 +143,7 @@ class RendererSchedulerImplTest : public testing::Test { |
| } |
| RendererSchedulerImplTest(base::MessageLoop* message_loop) |
| - : clock_(cc::TestNowSource::Create(5000)), |
| + : clock_(new base::SimpleTestTickClock()), |
| message_loop_(message_loop), |
| nestable_task_runner_( |
| SchedulerMessageLoopDelegate::Create(message_loop)), |
| @@ -152,6 +153,7 @@ class RendererSchedulerImplTest : public testing::Test { |
| loading_task_runner_(scheduler_->LoadingTaskRunner()), |
| idle_task_runner_(scheduler_->IdleTaskRunner()), |
| timer_task_runner_(scheduler_->TimerTaskRunner()) { |
| + clock_->Advance(base::TimeDelta::FromInternalValue(5000)); |
|
Sami
2015/05/29 14:00:58
Ditto about base time.
Ankur Verma
2015/06/03 14:56:10
Have'nt changed starting values yet as per mithro'
|
| scheduler_->GetSchedulerHelperForTesting()->SetTimeSourceForTesting( |
| make_scoped_ptr(new TestTimeSource(clock_))); |
| scheduler_->GetSchedulerHelperForTesting() |
| @@ -183,7 +185,7 @@ class RendererSchedulerImplTest : public testing::Test { |
| void DoMainFrame() { |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| scheduler_->DidCommitFrameToCompositor(); |
| } |
| @@ -199,7 +201,7 @@ class RendererSchedulerImplTest : public testing::Test { |
| void ScheduleDelayedPolicyUpdate(base::TimeDelta delay) { |
| scheduler_->delayed_update_policy_runner_.SetDeadline(FROM_HERE, delay, |
| - clock_->Now()); |
| + clock_->NowTicks()); |
| } |
| // Helper for posting several tasks of specific types. |task_descriptor| is a |
| @@ -291,7 +293,7 @@ class RendererSchedulerImplTest : public testing::Test { |
| &RendererSchedulerImpl::InputStreamStateToString); |
| } |
| - scoped_refptr<cc::TestNowSource> clock_; |
| + base::SimpleTestTickClock* clock_; |
|
Sami
2015/05/29 14:00:58
Ditto about scoped_ptr.
Ankur Verma
2015/06/03 14:56:10
Done.
|
| // Only one of mock_task_runner_ or message_loop_ will be set. |
| scoped_refptr<cc::OrderedSimpleTaskRunner> mock_task_runner_; |
| scoped_ptr<base::MessageLoop> message_loop_; |
| @@ -339,10 +341,10 @@ TEST_F(RendererSchedulerImplTest, TestRentrantTask) { |
| TEST_F(RendererSchedulerImplTest, TestPostIdleTask) { |
| int run_count = 0; |
| base::TimeTicks expected_deadline = |
| - clock_->Now() + base::TimeDelta::FromMilliseconds(2300); |
| + clock_->NowTicks() + base::TimeDelta::FromMilliseconds(2300); |
| base::TimeTicks deadline_in_task; |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(100)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(100)); |
| idle_task_runner_->PostIdleTask( |
| FROM_HERE, base::Bind(&IdleTestTask, &run_count, &deadline_in_task)); |
| @@ -350,20 +352,20 @@ TEST_F(RendererSchedulerImplTest, TestPostIdleTask) { |
| EXPECT_EQ(0, run_count); // Shouldn't run yet as no WillBeginFrame. |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| RunUntilIdle(); |
| EXPECT_EQ(0, run_count); // Shouldn't run as no DidCommitFrameToCompositor. |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(1200)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(1200)); |
| scheduler_->DidCommitFrameToCompositor(); |
| RunUntilIdle(); |
| EXPECT_EQ(0, run_count); // We missed the deadline. |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(800)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(800)); |
| scheduler_->DidCommitFrameToCompositor(); |
| RunUntilIdle(); |
| EXPECT_EQ(1, run_count); |
| @@ -484,15 +486,15 @@ TEST_F(RendererSchedulerImplTest, TestDelayedEndIdlePeriodCanceled) { |
| // Trigger the beginning of an idle period for 1000ms. |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| DoMainFrame(); |
| // End the idle period early (after 500ms), and send a WillBeginFrame which |
| // specifies that the next idle period should end 1000ms from now. |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(500)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(500)); |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| RunUntilIdle(); |
| @@ -500,13 +502,13 @@ TEST_F(RendererSchedulerImplTest, TestDelayedEndIdlePeriodCanceled) { |
| // Trigger the start of the idle period before the task to end the previous |
| // idle period has been triggered. |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(400)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(400)); |
| scheduler_->DidCommitFrameToCompositor(); |
| // Post a task which simulates running until after the previous end idle |
| // period delayed task was scheduled for |
| scheduler_->DefaultTaskRunner()->PostTask(FROM_HERE, base::Bind(NullTask)); |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(300)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(300)); |
| RunUntilIdle(); |
| EXPECT_EQ(1, run_count); // We should still be in the new idle period. |
| @@ -680,7 +682,7 @@ TEST_F(RendererSchedulerImplTest, TestCompositorPolicyEnds) { |
| std::string("D1"), std::string("D2"))); |
| run_order.clear(); |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(1000)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(1000)); |
| PostTestTasks(&run_order, "D1 C1 D2 C2"); |
| // Compositor policy mode should have ended now that the clock has advanced. |
| @@ -702,7 +704,7 @@ TEST_F(RendererSchedulerImplTest, TestTouchstartPolicyEndsAfterTimeout) { |
| std::string("D1"), std::string("D2"))); |
| run_order.clear(); |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(1000)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(1000)); |
| // Don't post any compositor tasks to simulate a very long running event |
| // handler. |
| @@ -771,7 +773,7 @@ TEST_F(RendererSchedulerImplTest, TestIsHighPriorityWorkAnticipated) { |
| EXPECT_FALSE(is_anticipated_before); |
| EXPECT_TRUE(is_anticipated_after); |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| simulate_input = false; |
| default_task_runner_->PostTask( |
| FROM_HERE, |
| @@ -835,7 +837,7 @@ TEST_F(RendererSchedulerImplTest, SlowInputEvent) { |
| // Simulate the input event being queued for a very long time. The compositor |
| // task we post here represents the enqueued input task. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| compositor_task_runner_->PostTask(FROM_HERE, base::Bind(&NullTask)); |
| RunUntilIdle(); |
| @@ -850,7 +852,7 @@ TEST_F(RendererSchedulerImplTest, SlowInputEvent) { |
| EXPECT_EQ(Policy::COMPOSITOR_PRIORITY, CurrentPolicy()); |
| // After the escalation period ends we should go back into normal mode. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| } |
| @@ -866,7 +868,7 @@ TEST_F(RendererSchedulerImplTest, SlowNoOpInputEvent) { |
| // Simulate the input event being queued for a very long time. The compositor |
| // task we post here represents the enqueued input task. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| compositor_task_runner_->PostTask(FROM_HERE, base::Bind(&NullTask)); |
| RunUntilIdle(); |
| @@ -876,7 +878,7 @@ TEST_F(RendererSchedulerImplTest, SlowNoOpInputEvent) { |
| // If we let the compositor queue drain, we should fall out of input |
| // priority. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| } |
| @@ -892,7 +894,7 @@ TEST_F(RendererSchedulerImplTest, NoOpInputEvent) { |
| // If nothing else happens after this, we should drop out of compositor |
| // priority after the escalation period ends and stop polling. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() * 2); |
| + clock_->Advance(priority_escalation_after_input_duration() * 2); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| EXPECT_FALSE(mock_task_runner_->HasPendingTasks()); |
| @@ -909,18 +911,18 @@ TEST_F(RendererSchedulerImplTest, NoOpInputEventExtendsEscalationPeriod) { |
| EXPECT_EQ(Policy::COMPOSITOR_PRIORITY, CurrentPolicy()); |
| // Send a no-op input event in the middle of the escalation period. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() / 2); |
| + clock_->Advance(priority_escalation_after_input_duration() / 2); |
| scheduler_->DidReceiveInputEventOnCompositorThread( |
| FakeInputEvent(blink::WebInputEvent::GestureScrollUpdate)); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::COMPOSITOR_PRIORITY, CurrentPolicy()); |
| // The escalation period should have been extended by the new input event. |
| - clock_->AdvanceNow(3 * priority_escalation_after_input_duration() / 4); |
| + clock_->Advance(3 * priority_escalation_after_input_duration() / 4); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::COMPOSITOR_PRIORITY, CurrentPolicy()); |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() / 2); |
| + clock_->Advance(priority_escalation_after_input_duration() / 2); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| } |
| @@ -929,15 +931,15 @@ TEST_F(RendererSchedulerImplTest, InputArrivesAfterBeginFrame) { |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| cc::BeginFrameArgs args = cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL); |
| - clock_->AdvanceNow(priority_escalation_after_input_duration() / 2); |
| + clock_->Advance(priority_escalation_after_input_duration() / 2); |
| scheduler_->DidReceiveInputEventOnCompositorThread( |
| FakeInputEvent(blink::WebInputEvent::GestureScrollBegin)); |
| // Simulate a BeginMainFrame task from the past. |
| - clock_->AdvanceNow(2 * priority_escalation_after_input_duration()); |
| + clock_->Advance(2 * priority_escalation_after_input_duration()); |
| scheduler_->WillBeginFrame(args); |
| scheduler_->DidCommitFrameToCompositor(); |
| @@ -946,13 +948,13 @@ TEST_F(RendererSchedulerImplTest, InputArrivesAfterBeginFrame) { |
| // Should remain in input priority policy since the input event hasn't been |
| // processed yet. |
| - clock_->AdvanceNow(2 * priority_escalation_after_input_duration()); |
| + clock_->Advance(2 * priority_escalation_after_input_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::COMPOSITOR_PRIORITY, CurrentPolicy()); |
| // Process the input event with a new BeginMainFrame. |
| DoMainFrame(); |
| - clock_->AdvanceNow(2 * priority_escalation_after_input_duration()); |
| + clock_->Advance(2 * priority_escalation_after_input_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(Policy::NORMAL, CurrentPolicy()); |
| } |
| @@ -1169,7 +1171,7 @@ TEST_F(RendererSchedulerImplWithMessageLoopTest, |
| TEST_F(RendererSchedulerImplTest, TestLongIdlePeriod) { |
| base::TimeTicks expected_deadline = |
| - clock_->Now() + maximum_idle_period_duration(); |
| + clock_->NowTicks() + maximum_idle_period_duration(); |
| base::TimeTicks deadline_in_task; |
| int run_count = 0; |
| @@ -1187,7 +1189,7 @@ TEST_F(RendererSchedulerImplTest, TestLongIdlePeriod) { |
| TEST_F(RendererSchedulerImplTest, TestLongIdlePeriodWithPendingDelayedTask) { |
| base::TimeDelta pending_task_delay = base::TimeDelta::FromMilliseconds(30); |
| - base::TimeTicks expected_deadline = clock_->Now() + pending_task_delay; |
| + base::TimeTicks expected_deadline = clock_->NowTicks() + pending_task_delay; |
| base::TimeTicks deadline_in_task; |
| int run_count = 0; |
| @@ -1212,7 +1214,7 @@ TEST_F(RendererSchedulerImplTest, |
| pending_task_delay); |
| // Advance clock until after delayed task was meant to be run. |
| - clock_->AdvanceNow(base::TimeDelta::FromMilliseconds(20)); |
| + clock_->Advance(base::TimeDelta::FromMilliseconds(20)); |
| // Post an idle task and BeginFrameNotExpectedSoon to initiate a long idle |
| // period. Since there is a late pending delayed task this shouldn't actually |
| @@ -1224,7 +1226,7 @@ TEST_F(RendererSchedulerImplTest, |
| EXPECT_EQ(0, run_count); |
| // After the delayed task has been run we should trigger an idle period. |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(1, run_count); |
| } |
| @@ -1243,15 +1245,15 @@ TEST_F(RendererSchedulerImplTest, TestLongIdlePeriodRepeating) { |
| // Advance time to start of next long idle period and check task reposted task |
| // gets run. |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(2, run_count); |
| // Advance time to start of next long idle period then end idle period with a |
| // new BeginMainFrame and check idle task doesn't run. |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| RunUntilIdle(); |
| EXPECT_EQ(2, run_count); |
| @@ -1269,7 +1271,7 @@ TEST_F(RendererSchedulerImplTest, TestLongIdlePeriodDoesNotWakeScheduler) { |
| // idle period. |
| base::TimeTicks idle_period_deadline = |
| scheduler_->CurrentIdleTaskDeadlineForTesting(); |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| RunUntilIdle(); |
| base::TimeTicks new_idle_period_deadline = |
| @@ -1310,7 +1312,7 @@ TEST_F(RendererSchedulerImplTest, TestLongIdlePeriodInTouchStartPolicy) { |
| EXPECT_EQ(0, run_count); |
| // The long idle period should start after the touchstart policy has finished. |
| - clock_->AdvanceNow(priority_escalation_after_input_duration()); |
| + clock_->Advance(priority_escalation_after_input_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(1, run_count); |
| } |
| @@ -1355,7 +1357,7 @@ TEST_F(RendererSchedulerImplTest, CanExceedIdleDeadlineIfRequired) { |
| // Next long idle period will be for the maximum time, so |
| // CanExceedIdleDeadlineIfRequired should return true. |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| idle_task_runner_->PostIdleTask( |
| FROM_HERE, |
| base::Bind(&TestCanExceedIdleDeadlineIfRequiredTask, scheduler_.get(), |
| @@ -1367,7 +1369,7 @@ TEST_F(RendererSchedulerImplTest, CanExceedIdleDeadlineIfRequired) { |
| // Next long idle period will be for the maximum time, so |
| // CanExceedIdleDeadlineIfRequired should return true. |
| scheduler_->WillBeginFrame(cc::BeginFrameArgs::Create( |
| - BEGINFRAME_FROM_HERE, clock_->Now(), base::TimeTicks(), |
| + BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(), |
| base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL)); |
| EXPECT_FALSE(scheduler_->CanExceedIdleDeadlineIfRequired()); |
| } |
| @@ -1390,14 +1392,14 @@ TEST_F(RendererSchedulerImplTest, TestRendererHiddenIdlePeriod) { |
| // Advance time to start of next long idle period and check task reposted task |
| // gets run. |
| - clock_->AdvanceNow(maximum_idle_period_duration()); |
| + clock_->Advance(maximum_idle_period_duration()); |
| RunUntilIdle(); |
| EXPECT_EQ(2, run_count); |
| // Advance time by amount of time by the maximum amount of time we execute |
| // idle tasks when hidden (plus some slack) - idle period should have ended. |
| - clock_->AdvanceNow(end_idle_when_hidden_delay() + |
| - base::TimeDelta::FromMilliseconds(10)); |
| + clock_->Advance(end_idle_when_hidden_delay() + |
| + base::TimeDelta::FromMilliseconds(10)); |
| RunUntilIdle(); |
| EXPECT_EQ(2, run_count); |
| } |