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

Side by Side Diff: third_party/WebKit/Source/platform/scheduler/child/worker_scheduler_impl_unittest.cc

Issue 2701993002: DO NOT COMMIT: Results of running new (proposed) clang-format on Blink (Closed)
Patch Set: Created 3 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/worker_scheduler_impl.h" 5 #include "platform/scheduler/child/worker_scheduler_impl.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/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 } 233 }
234 234
235 TEST_F(WorkerSchedulerImplTest, TestIdleTaskWhenIsNotQuiescent) { 235 TEST_F(WorkerSchedulerImplTest, TestIdleTaskWhenIsNotQuiescent) {
236 std::vector<std::string> timeline; 236 std::vector<std::string> timeline;
237 RecordTimelineEvents(&timeline); 237 RecordTimelineEvents(&timeline);
238 Init(); 238 Init();
239 239
240 timeline.push_back("Post default task"); 240 timeline.push_back("Post default task");
241 // Post a delayed task timed to occur mid way during the long idle period. 241 // Post a delayed task timed to occur mid way during the long idle period.
242 default_task_runner_->PostTask( 242 default_task_runner_->PostTask(
243 FROM_HERE, base::Bind(&RecordTimelineTask, base::Unretained(&timeline), 243 FROM_HERE,
244 base::Unretained(clock_.get()))); 244 base::Bind(&RecordTimelineTask, base::Unretained(&timeline),
245 base::Unretained(clock_.get())));
245 RunUntilIdle(); 246 RunUntilIdle();
246 247
247 timeline.push_back("Post idle task"); 248 timeline.push_back("Post idle task");
248 idle_task_runner_->PostIdleTask(FROM_HERE, 249 idle_task_runner_->PostIdleTask(FROM_HERE,
249 base::Bind(&TimelineIdleTestTask, &timeline)); 250 base::Bind(&TimelineIdleTestTask, &timeline));
250 251
251 RunUntilIdle(); 252 RunUntilIdle();
252 253
253 std::string expected_timeline[] = {"CanEnterLongIdlePeriod @ 5", 254 std::string expected_timeline[] = {"CanEnterLongIdlePeriod @ 5",
254 "Post default task", 255 "Post default task",
255 "run RecordTimelineTask @ 5", 256 "run RecordTimelineTask @ 5",
256 "Post idle task", 257 "Post idle task",
257 "IsNotQuiescent @ 5", 258 "IsNotQuiescent @ 5",
258 "CanEnterLongIdlePeriod @ 305", 259 "CanEnterLongIdlePeriod @ 305",
259 "run TimelineIdleTestTask deadline 355"}; 260 "run TimelineIdleTestTask deadline 355"};
260 261
261 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline)); 262 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline));
262 } 263 }
263 264
264 TEST_F(WorkerSchedulerImplTest, TestIdleDeadlineWithPendingDelayedTask) { 265 TEST_F(WorkerSchedulerImplTest, TestIdleDeadlineWithPendingDelayedTask) {
265 std::vector<std::string> timeline; 266 std::vector<std::string> timeline;
266 RecordTimelineEvents(&timeline); 267 RecordTimelineEvents(&timeline);
267 Init(); 268 Init();
268 269
269 timeline.push_back("Post delayed and idle tasks"); 270 timeline.push_back("Post delayed and idle tasks");
270 // Post a delayed task timed to occur mid way during the long idle period. 271 // Post a delayed task timed to occur mid way during the long idle period.
271 default_task_runner_->PostDelayedTask( 272 default_task_runner_->PostDelayedTask(
272 FROM_HERE, base::Bind(&RecordTimelineTask, base::Unretained(&timeline), 273 FROM_HERE,
273 base::Unretained(clock_.get())), 274 base::Bind(&RecordTimelineTask, base::Unretained(&timeline),
275 base::Unretained(clock_.get())),
274 base::TimeDelta::FromMilliseconds(20)); 276 base::TimeDelta::FromMilliseconds(20));
275 idle_task_runner_->PostIdleTask(FROM_HERE, 277 idle_task_runner_->PostIdleTask(FROM_HERE,
276 base::Bind(&TimelineIdleTestTask, &timeline)); 278 base::Bind(&TimelineIdleTestTask, &timeline));
277 279
278 RunUntilIdle(); 280 RunUntilIdle();
279 281
280 std::string expected_timeline[] = { 282 std::string expected_timeline[] = {
281 "CanEnterLongIdlePeriod @ 5", "Post delayed and idle tasks", 283 "CanEnterLongIdlePeriod @ 5", "Post delayed and idle tasks",
282 "CanEnterLongIdlePeriod @ 5", 284 "CanEnterLongIdlePeriod @ 5",
283 "run TimelineIdleTestTask deadline 25", // Note the short 20ms deadline. 285 "run TimelineIdleTestTask deadline 25", // Note the short 20ms deadline.
284 "run RecordTimelineTask @ 25"}; 286 "run RecordTimelineTask @ 25"};
285 287
286 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline)); 288 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline));
287 } 289 }
288 290
289 TEST_F(WorkerSchedulerImplTest, 291 TEST_F(WorkerSchedulerImplTest,
290 TestIdleDeadlineWithPendingDelayedTaskFarInTheFuture) { 292 TestIdleDeadlineWithPendingDelayedTaskFarInTheFuture) {
291 std::vector<std::string> timeline; 293 std::vector<std::string> timeline;
292 RecordTimelineEvents(&timeline); 294 RecordTimelineEvents(&timeline);
293 Init(); 295 Init();
294 296
295 timeline.push_back("Post delayed and idle tasks"); 297 timeline.push_back("Post delayed and idle tasks");
296 // Post a delayed task timed to occur well after the long idle period. 298 // Post a delayed task timed to occur well after the long idle period.
297 default_task_runner_->PostDelayedTask( 299 default_task_runner_->PostDelayedTask(
298 FROM_HERE, base::Bind(&RecordTimelineTask, base::Unretained(&timeline), 300 FROM_HERE,
299 base::Unretained(clock_.get())), 301 base::Bind(&RecordTimelineTask, base::Unretained(&timeline),
302 base::Unretained(clock_.get())),
300 base::TimeDelta::FromMilliseconds(500)); 303 base::TimeDelta::FromMilliseconds(500));
301 idle_task_runner_->PostIdleTask(FROM_HERE, 304 idle_task_runner_->PostIdleTask(FROM_HERE,
302 base::Bind(&TimelineIdleTestTask, &timeline)); 305 base::Bind(&TimelineIdleTestTask, &timeline));
303 306
304 RunUntilIdle(); 307 RunUntilIdle();
305 308
306 std::string expected_timeline[] = { 309 std::string expected_timeline[] = {
307 "CanEnterLongIdlePeriod @ 5", "Post delayed and idle tasks", 310 "CanEnterLongIdlePeriod @ 5", "Post delayed and idle tasks",
308 "CanEnterLongIdlePeriod @ 5", 311 "CanEnterLongIdlePeriod @ 5",
309 "run TimelineIdleTestTask deadline 55", // Note the full 50ms deadline. 312 "run TimelineIdleTestTask deadline 55", // Note the full 50ms deadline.
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
354 RunUntilIdle(); 357 RunUntilIdle();
355 358
356 base::TimeTicks new_idle_period_deadline = 359 base::TimeTicks new_idle_period_deadline =
357 scheduler_->CurrentIdleTaskDeadlineForTesting(); 360 scheduler_->CurrentIdleTaskDeadlineForTesting();
358 EXPECT_EQ(idle_period_deadline, new_idle_period_deadline); 361 EXPECT_EQ(idle_period_deadline, new_idle_period_deadline);
359 362
360 // Post a task to post an idle task. Because the system is non-quiescent a 363 // Post a task to post an idle task. Because the system is non-quiescent a
361 // 300ms pause will occur before the next long idle period is initiated and 364 // 300ms pause will occur before the next long idle period is initiated and
362 // the idle task run. 365 // the idle task run.
363 default_task_runner_->PostDelayedTask( 366 default_task_runner_->PostDelayedTask(
364 FROM_HERE, base::Bind(&PostIdleTask, base::Unretained(&timeline), 367 FROM_HERE,
365 base::Unretained(clock_.get()), 368 base::Bind(&PostIdleTask, base::Unretained(&timeline),
366 base::Unretained(idle_task_runner_.get())), 369 base::Unretained(clock_.get()),
370 base::Unretained(idle_task_runner_.get())),
367 base::TimeDelta::FromMilliseconds(30)); 371 base::TimeDelta::FromMilliseconds(30));
368 372
369 timeline.push_back("PostFirstIdleTask"); 373 timeline.push_back("PostFirstIdleTask");
370 idle_task_runner_->PostIdleTask(FROM_HERE, 374 idle_task_runner_->PostIdleTask(FROM_HERE,
371 base::Bind(&TimelineIdleTestTask, &timeline)); 375 base::Bind(&TimelineIdleTestTask, &timeline));
372 RunUntilIdle(); 376 RunUntilIdle();
373 new_idle_period_deadline = scheduler_->CurrentIdleTaskDeadlineForTesting(); 377 new_idle_period_deadline = scheduler_->CurrentIdleTaskDeadlineForTesting();
374 378
375 // Running a normal task will mark the system as non-quiescent. 379 // Running a normal task will mark the system as non-quiescent.
376 timeline.push_back("Post RecordTimelineTask"); 380 timeline.push_back("Post RecordTimelineTask");
377 default_task_runner_->PostTask( 381 default_task_runner_->PostTask(
378 FROM_HERE, base::Bind(&RecordTimelineTask, base::Unretained(&timeline), 382 FROM_HERE,
379 base::Unretained(clock_.get()))); 383 base::Bind(&RecordTimelineTask, base::Unretained(&timeline),
384 base::Unretained(clock_.get())));
380 RunUntilIdle(); 385 RunUntilIdle();
381 386
382 std::string expected_timeline[] = {"RunUntilIdle begin @ 55", 387 std::string expected_timeline[] = {"RunUntilIdle begin @ 55",
383 "RunUntilIdle end @ 55", 388 "RunUntilIdle end @ 55",
384 "PostFirstIdleTask", 389 "PostFirstIdleTask",
385 "RunUntilIdle begin @ 55", 390 "RunUntilIdle begin @ 55",
386 "CanEnterLongIdlePeriod @ 55", 391 "CanEnterLongIdlePeriod @ 55",
387 "run TimelineIdleTestTask deadline 85", 392 "run TimelineIdleTestTask deadline 85",
388 "run PostIdleTask @ 85", 393 "run PostIdleTask @ 85",
389 "IsNotQuiescent @ 85", 394 "IsNotQuiescent @ 85",
390 "CanEnterLongIdlePeriod @ 385", 395 "CanEnterLongIdlePeriod @ 385",
391 "run TimelineIdleTestTask deadline 435", 396 "run TimelineIdleTestTask deadline 435",
392 "RunUntilIdle end @ 385", 397 "RunUntilIdle end @ 385",
393 "Post RecordTimelineTask", 398 "Post RecordTimelineTask",
394 "RunUntilIdle begin @ 385", 399 "RunUntilIdle begin @ 385",
395 "run RecordTimelineTask @ 385", 400 "run RecordTimelineTask @ 385",
396 "RunUntilIdle end @ 385"}; 401 "RunUntilIdle end @ 385"};
397 402
398 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline)); 403 EXPECT_THAT(timeline, ElementsAreArray(expected_timeline));
399 } 404 }
400 405
401 } // namespace scheduler 406 } // namespace scheduler
402 } // namespace blink 407 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698