Index: base/test/test_mock_time_task_runner.h |
diff --git a/base/test/test_mock_time_task_runner.h b/base/test/test_mock_time_task_runner.h |
index bf945a0b16f983c1bb09b57e22966da2d2aa091d..5ae921da4c8a1f1a908769f3b4b578e6e97ba8b1 100644 |
--- a/base/test/test_mock_time_task_runner.h |
+++ b/base/test/test_mock_time_task_runner.h |
@@ -15,7 +15,7 @@ |
#include "base/macros.h" |
#include "base/single_thread_task_runner.h" |
#include "base/synchronization/lock.h" |
-#include "base/test/test_pending_task.h" |
+#include "base/test/test_pending_task_info.h" |
#include "base/threading/thread_checker_impl.h" |
#include "base/time/time.h" |
@@ -84,7 +84,7 @@ class TestMockTimeTaskRunner : public SingleThreadTaskRunner { |
// source. The returned TickClock will hold a reference to |this|. |
std::unique_ptr<TickClock> GetMockTickClock() const; |
- std::deque<TestPendingTask> TakePendingTasks(); |
+ TestPendingTaskQueue TakePendingTasks(); |
bool HasPendingTask() const; |
size_t GetPendingTaskCount() const; |
TimeDelta NextPendingTaskDelay() const; |
@@ -119,18 +119,17 @@ class TestMockTimeTaskRunner : public SingleThreadTaskRunner { |
virtual void OnAfterTaskRun(); |
private: |
- struct TestOrderedPendingTask; |
+ struct TestOrderedPendingTaskInfo; |
// Predicate that defines a strict weak temporal ordering of tasks. |
class TemporalOrder { |
public: |
- bool operator()(const TestOrderedPendingTask& first_task, |
- const TestOrderedPendingTask& second_task) const; |
+ bool operator()(const TestOrderedPendingTaskInfo& first_task, |
+ const TestOrderedPendingTaskInfo& second_task) const; |
}; |
- typedef std::priority_queue<TestOrderedPendingTask, |
- std::vector<TestOrderedPendingTask>, |
- TemporalOrder> TaskPriorityQueue; |
+ using TaskPriorityQueue = |
+ std::multimap<TestOrderedPendingTaskInfo, OnceClosure, TemporalOrder>; |
// Core of the implementation for all flavors of fast-forward methods. Given a |
// non-negative |max_delta|, runs all tasks with a remaining delay less than |
@@ -148,7 +147,8 @@ class TestMockTimeTaskRunner : public SingleThreadTaskRunner { |
// so that |max_delta| == TimeDelta::Max() can be supported. |
bool DequeueNextTask(const TimeTicks& reference, |
const TimeDelta& max_delta, |
- TestPendingTask* next_task); |
+ TestPendingTaskInfo* next_task_info, |
+ OnceClosure* next_task); |
// Also used for non-dcheck logic (RunsTasksOnCurrentThread()) and as such |
// needs to be a ThreadCheckerImpl. |