Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(541)

Unified Diff: base/test/test_mock_time_task_runner.cc

Issue 2434783002: Use OnceClosure in TestPendingTask (Closed)
Patch Set: fix Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | base/test/test_pending_task.h » ('j') | base/test/test_pending_task.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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;
}
« no previous file with comments | « no previous file | base/test/test_pending_task.h » ('j') | base/test/test_pending_task.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698