Chromium Code Reviews| 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..674aa794f30f2e49fc8132ae58823911999ac70f 100644 |
| --- a/base/test/test_mock_time_task_runner.cc |
| +++ b/base/test/test_mock_time_task_runner.cc |
| @@ -83,9 +83,14 @@ struct TestMockTimeTaskRunner::TestOrderedPendingTask |
| TimeDelta delay, |
| size_t ordinal, |
| TestNestability nestability); |
| + TestOrderedPendingTask(TestOrderedPendingTask&&); |
| ~TestOrderedPendingTask(); |
| + TestOrderedPendingTask& operator=(TestOrderedPendingTask&&); |
| + |
| size_t ordinal; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(TestOrderedPendingTask); |
|
danakj
2016/10/20 20:07:46
private
tzik
2016/10/27 08:20:49
Done.
|
| }; |
| TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask() |
| @@ -93,6 +98,9 @@ TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask() |
| } |
| TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask( |
| + TestOrderedPendingTask&&) = default; |
| + |
| +TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask( |
| const tracked_objects::Location& location, |
| const Closure& task, |
| TimeTicks post_time, |
| @@ -100,12 +108,15 @@ TestMockTimeTaskRunner::TestOrderedPendingTask::TestOrderedPendingTask( |
| size_t ordinal, |
| TestNestability nestability) |
| : base::TestPendingTask(location, task, post_time, delay, nestability), |
| - ordinal(ordinal) { |
| -} |
| + ordinal(ordinal) {} |
| TestMockTimeTaskRunner::TestOrderedPendingTask::~TestOrderedPendingTask() { |
| } |
| +TestMockTimeTaskRunner::TestOrderedPendingTask& |
| +TestMockTimeTaskRunner::TestOrderedPendingTask::operator=( |
| + TestOrderedPendingTask&&) = default; |
| + |
| // TestMockTimeTaskRunner ----------------------------------------------------- |
| bool TestMockTimeTaskRunner::TemporalOrder::operator()( |
| @@ -239,7 +250,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(); |
|
danakj
2016/10/20 20:07:46
I think we should very soon write an email explain
tzik
2016/10/27 08:20:49
OK, I'm writing go/callback-explainer. Will send t
danakj
2016/10/27 21:15:21
Super great :D
|
| OnAfterTaskRun(); |
| } |
| } |
| @@ -259,7 +270,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; |
| } |