Chromium Code Reviews| 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 624f739cfa55604089e39858919ccaf117bb5701..b0ddb1c0fe4d8d9562d2e93accf24926f4b72e34 100644 |
| --- a/base/test/test_mock_time_task_runner.h |
| +++ b/base/test/test_mock_time_task_runner.h |
| @@ -7,6 +7,7 @@ |
| #include <stddef.h> |
| +#include <deque> |
| #include <memory> |
| #include <queue> |
| #include <vector> |
| @@ -83,6 +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(); |
| bool HasPendingTask() const; |
| size_t GetPendingTaskCount() const; |
| TimeDelta NextPendingTaskDelay() const; |
| @@ -165,6 +167,23 @@ class TestMockTimeTaskRunner : public SingleThreadTaskRunner { |
| DISALLOW_COPY_AND_ASSIGN(TestMockTimeTaskRunner); |
| }; |
| +// A scoped wrapper around TestMockTimeTaskRunner that replaces message loop's |
| +// task runner with a TestMockTimeTaskRunner and resets it back at the end of |
| +// the scope. |
| +class ScopedMockTaskRunnerWrapper { |
|
danakj
2016/11/15 21:56:37
This moved to another file right? Why's it here to
bruthig
2016/11/15 22:00:52
Just to make sure my reviewers are on the ball. Ku
|
| + public: |
| + ScopedMockTaskRunnerWrapper(); |
| + virtual ~ScopedMockTaskRunnerWrapper(); |
| + |
| + base::TestMockTimeTaskRunner* task_runner() { return task_runner_.get(); } |
| + |
| + private: |
| + scoped_refptr<base::TestMockTimeTaskRunner> task_runner_; |
| + scoped_refptr<base::SingleThreadTaskRunner> previous_task_runner_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(ScopedMockTaskRunnerWrapper); |
| +}; |
| + |
| } // namespace base |
| #endif // BASE_TEST_TEST_MOCK_TIME_TASK_RUNNER_H_ |