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 "platform/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" |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 MOCK_METHOD2(OnTriedToExecuteBlockedTask, | 193 MOCK_METHOD2(OnTriedToExecuteBlockedTask, |
194 void(const TaskQueue& queue, const base::PendingTask& task)); | 194 void(const TaskQueue& queue, const base::PendingTask& task)); |
195 }; | 195 }; |
196 | 196 |
197 } // namespace | 197 } // namespace |
198 | 198 |
199 TEST_F(SchedulerHelperTest, OnUnregisterTaskQueue) { | 199 TEST_F(SchedulerHelperTest, OnUnregisterTaskQueue) { |
200 MockObserver observer; | 200 MockObserver observer; |
201 scheduler_helper_->SetObserver(&observer); | 201 scheduler_helper_->SetObserver(&observer); |
202 | 202 |
203 scoped_refptr<TaskQueue> task_queue = | 203 scoped_refptr<TaskQueue> task_queue = scheduler_helper_->NewTaskQueue( |
204 scheduler_helper_->NewTaskQueue(TaskQueue::Spec("test_queue")); | 204 TaskQueue::Spec(TaskQueue::QueueType::TEST)); |
205 | 205 |
206 EXPECT_CALL(observer, OnUnregisterTaskQueue(_)).Times(1); | 206 EXPECT_CALL(observer, OnUnregisterTaskQueue(_)).Times(1); |
207 task_queue->UnregisterTaskQueue(); | 207 task_queue->UnregisterTaskQueue(); |
208 | 208 |
209 scheduler_helper_->SetObserver(nullptr); | 209 scheduler_helper_->SetObserver(nullptr); |
210 } | 210 } |
211 | 211 |
212 TEST_F(SchedulerHelperTest, OnTriedToExecuteBlockedTask) { | 212 TEST_F(SchedulerHelperTest, OnTriedToExecuteBlockedTask) { |
213 MockObserver observer; | 213 MockObserver observer; |
214 scheduler_helper_->SetObserver(&observer); | 214 scheduler_helper_->SetObserver(&observer); |
215 | 215 |
216 scoped_refptr<TaskQueue> task_queue = scheduler_helper_->NewTaskQueue( | 216 scoped_refptr<TaskQueue> task_queue = scheduler_helper_->NewTaskQueue( |
217 TaskQueue::Spec("test_queue").SetShouldReportWhenExecutionBlocked(true)); | 217 TaskQueue::Spec(TaskQueue::QueueType::TEST) |
| 218 .SetShouldReportWhenExecutionBlocked(true)); |
218 task_queue->SetQueueEnabled(false); | 219 task_queue->SetQueueEnabled(false); |
219 task_queue->PostTask(FROM_HERE, base::Bind(&NopTask)); | 220 task_queue->PostTask(FROM_HERE, base::Bind(&NopTask)); |
220 | 221 |
221 // Trick |task_queue| into posting a DoWork. By default PostTask with a | 222 // Trick |task_queue| into posting a DoWork. By default PostTask with a |
222 // disabled queue won't post a DoWork until we enable the queue. | 223 // disabled queue won't post a DoWork until we enable the queue. |
223 task_queue->SetQueueEnabled(true); | 224 task_queue->SetQueueEnabled(true); |
224 task_queue->SetQueueEnabled(false); | 225 task_queue->SetQueueEnabled(false); |
225 | 226 |
226 EXPECT_CALL(observer, OnTriedToExecuteBlockedTask(_, _)).Times(1); | 227 EXPECT_CALL(observer, OnTriedToExecuteBlockedTask(_, _)).Times(1); |
227 RunUntilIdle(); | 228 RunUntilIdle(); |
228 | 229 |
229 scheduler_helper_->SetObserver(nullptr); | 230 scheduler_helper_->SetObserver(nullptr); |
230 } | 231 } |
231 | 232 |
232 } // namespace scheduler | 233 } // namespace scheduler |
233 } // namespace blink | 234 } // namespace blink |
OLD | NEW |