OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "components/scheduler/child/scheduler_helper.h" | 5 #include "platform/scheduler/child/scheduler_helper.h" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "base/test/simple_test_tick_clock.h" | 10 #include "base/test/simple_test_tick_clock.h" |
11 #include "cc/test/ordered_simple_task_runner.h" | 11 #include "cc/test/ordered_simple_task_runner.h" |
12 #include "components/scheduler/base/lazy_now.h" | 12 #include "public/platform/scheduler/base/task_queue.h" |
13 #include "components/scheduler/base/task_queue.h" | 13 #include "platform/scheduler/base/lazy_now.h" |
14 #include "components/scheduler/base/test_time_source.h" | 14 #include "platform/scheduler/base/test_time_source.h" |
15 #include "components/scheduler/child/scheduler_tqm_delegate_for_test.h" | 15 #include "platform/scheduler/child/scheduler_tqm_delegate_for_test.h" |
16 #include "testing/gmock/include/gmock/gmock.h" | 16 #include "testing/gmock/include/gmock/gmock.h" |
17 #include "testing/gtest/include/gtest/gtest.h" | 17 #include "testing/gtest/include/gtest/gtest.h" |
18 | 18 |
19 using testing::_; | 19 using testing::_; |
20 using testing::AnyNumber; | 20 using testing::AnyNumber; |
21 using testing::Invoke; | 21 using testing::Invoke; |
22 using testing::Return; | 22 using testing::Return; |
23 | 23 |
| 24 namespace blink { |
24 namespace scheduler { | 25 namespace scheduler { |
25 | 26 |
26 namespace { | 27 namespace { |
27 void AppendToVectorTestTask(std::vector<std::string>* vector, | 28 void AppendToVectorTestTask(std::vector<std::string>* vector, |
28 std::string value) { | 29 std::string value) { |
29 vector->push_back(value); | 30 vector->push_back(value); |
30 } | 31 } |
31 | 32 |
32 void AppendToVectorReentrantTask(base::SingleThreadTaskRunner* task_runner, | 33 void AppendToVectorReentrantTask(base::SingleThreadTaskRunner* task_runner, |
33 std::vector<int>* vector, | 34 std::vector<int>* vector, |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 } | 138 } |
138 | 139 |
139 namespace { | 140 namespace { |
140 class MockTaskObserver : public base::MessageLoop::TaskObserver { | 141 class MockTaskObserver : public base::MessageLoop::TaskObserver { |
141 public: | 142 public: |
142 MOCK_METHOD1(DidProcessTask, void(const base::PendingTask& task)); | 143 MOCK_METHOD1(DidProcessTask, void(const base::PendingTask& task)); |
143 MOCK_METHOD1(WillProcessTask, void(const base::PendingTask& task)); | 144 MOCK_METHOD1(WillProcessTask, void(const base::PendingTask& task)); |
144 }; | 145 }; |
145 | 146 |
146 void NopTask() {} | 147 void NopTask() {} |
147 } // namespace | 148 } // namespace |
148 | 149 |
149 TEST_F(SchedulerHelperTest, ObserversNotifiedFor_DefaultTaskRunner) { | 150 TEST_F(SchedulerHelperTest, ObserversNotifiedFor_DefaultTaskRunner) { |
150 MockTaskObserver observer; | 151 MockTaskObserver observer; |
151 scheduler_helper_->AddTaskObserver(&observer); | 152 scheduler_helper_->AddTaskObserver(&observer); |
152 | 153 |
153 scheduler_helper_->DefaultTaskRunner()->PostTask(FROM_HERE, | 154 scheduler_helper_->DefaultTaskRunner()->PostTask(FROM_HERE, |
154 base::Bind(&NopTask)); | 155 base::Bind(&NopTask)); |
155 | 156 |
156 EXPECT_CALL(observer, WillProcessTask(_)).Times(1); | 157 EXPECT_CALL(observer, WillProcessTask(_)).Times(1); |
157 EXPECT_CALL(observer, DidProcessTask(_)).Times(1); | 158 EXPECT_CALL(observer, DidProcessTask(_)).Times(1); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
219 task_queue->SetQueueEnabled(false); | 220 task_queue->SetQueueEnabled(false); |
220 task_queue->PostTask(FROM_HERE, base::Bind(&NopTask)); | 221 task_queue->PostTask(FROM_HERE, base::Bind(&NopTask)); |
221 | 222 |
222 EXPECT_CALL(observer, OnTriedToExecuteBlockedTask(_, _)).Times(1); | 223 EXPECT_CALL(observer, OnTriedToExecuteBlockedTask(_, _)).Times(1); |
223 RunUntilIdle(); | 224 RunUntilIdle(); |
224 | 225 |
225 scheduler_helper_->SetObserver(nullptr); | 226 scheduler_helper_->SetObserver(nullptr); |
226 } | 227 } |
227 | 228 |
228 } // namespace scheduler | 229 } // namespace scheduler |
| 230 } // namespace blink |
OLD | NEW |