| Index: base/test/test_mock_time_task_runner.cc
|
| diff --git a/base/test/test_mock_time_task_runner.cc b/base/test/test_mock_time_task_runner.cc
|
| index 6dfecaf838ba8ee5e5b36f8d067e021e4d51f4c5..973c75f17e641fb32808b66c7683750670e3d5dd 100644
|
| --- a/base/test/test_mock_time_task_runner.cc
|
| +++ b/base/test/test_mock_time_task_runner.cc
|
| @@ -77,13 +77,15 @@ Time MockClock::Now() {
|
| struct TestMockTimeTaskRunner::TestOrderedPendingTask
|
| : public base::TestPendingTask {
|
| TestOrderedPendingTask();
|
| + TestOrderedPendingTask(TestOrderedPendingTask&&) = default;
|
| TestOrderedPendingTask(const tracked_objects::Location& location,
|
| - const Closure& task,
|
| + OnceClosure task,
|
| TimeTicks post_time,
|
| TimeDelta delay,
|
| size_t ordinal,
|
| TestNestability nestability);
|
| ~TestOrderedPendingTask();
|
| + TestOrderedPendingTask& operator=(TestOrderedPendingTask&&) = default;
|
|
|
| size_t ordinal;
|
| };
|
| @@ -94,14 +96,17 @@ TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask()
|
|
|
| TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask(
|
| const tracked_objects::Location& location,
|
| - const Closure& task,
|
| + OnceClosure task,
|
| TimeTicks post_time,
|
| TimeDelta delay,
|
| size_t ordinal,
|
| TestNestability nestability)
|
| - : base::TestPendingTask(location, task, post_time, delay, nestability),
|
| - ordinal(ordinal) {
|
| -}
|
| + : base::TestPendingTask(location,
|
| + std::move(task),
|
| + post_time,
|
| + delay,
|
| + nestability),
|
| + ordinal(ordinal) {}
|
|
|
| TestMockTimeTaskRunner::TestOrderedPendingTask::~TestOrderedPendingTask() {
|
| }
|
| @@ -195,20 +200,20 @@ bool TestMockTimeTaskRunner::RunsTasksOnCurrentThread() const {
|
|
|
| bool TestMockTimeTaskRunner::PostDelayedTask(
|
| const tracked_objects::Location& from_here,
|
| - const Closure& task,
|
| + OnceClosure task,
|
| TimeDelta delay) {
|
| AutoLock scoped_lock(tasks_lock_);
|
| - tasks_.push(TestOrderedPendingTask(from_here, task, now_ticks_, delay,
|
| - next_task_ordinal_++,
|
| + tasks_.push(TestOrderedPendingTask(from_here, std::move(task), now_ticks_,
|
| + delay, next_task_ordinal_++,
|
| TestPendingTask::NESTABLE));
|
| return true;
|
| }
|
|
|
| bool TestMockTimeTaskRunner::PostNonNestableDelayedTask(
|
| const tracked_objects::Location& from_here,
|
| - const Closure& task,
|
| + OnceClosure task,
|
| TimeDelta delay) {
|
| - return PostDelayedTask(from_here, task, delay);
|
| + return PostDelayedTask(from_here, std::move(task), delay);
|
| }
|
|
|
| bool TestMockTimeTaskRunner::IsElapsingStopped() {
|
| @@ -239,7 +244,7 @@ void TestMockTimeTaskRunner::ProcessAllTasksNoLaterThan(TimeDelta max_delta) {
|
| // be less than |now_ticks_|. ForwardClocksUntilTickTime() takes care of not
|
| // moving the clock backwards in this case.
|
| ForwardClocksUntilTickTime(task_info.GetTimeToRun());
|
| - task_info.task.Run();
|
| + std::move(task_info.task).Run();
|
| OnAfterTaskRun();
|
| }
|
| }
|
| @@ -259,7 +264,7 @@ bool TestMockTimeTaskRunner::DequeueNextTask(const TimeTicks& reference,
|
| AutoLock scoped_lock(tasks_lock_);
|
| if (!tasks_.empty() &&
|
| (tasks_.top().GetTimeToRun() - reference) <= max_delta) {
|
| - *next_task = tasks_.top();
|
| + *next_task = std::move(const_cast<TestOrderedPendingTask&>(tasks_.top()));
|
| tasks_.pop();
|
| return true;
|
| }
|
|
|