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

Side by Side Diff: cc/scheduler/scheduler_unittest.cc

Issue 23498035: cc: Always use SetNeedsBeginFrame to request the next BeginFrame (Closed) Base URL: http://git.chromium.org/chromium/src.git@epenner23495022
Patch Set: Created 7 years, 3 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
« no previous file with comments | « cc/scheduler/scheduler_state_machine.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 "cc/scheduler/scheduler.h" 5 #include "cc/scheduler/scheduler.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 // FinishCommit should commit 202 // FinishCommit should commit
203 scheduler->FinishCommit(); 203 scheduler->FinishCommit();
204 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client); 204 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
205 EXPECT_TRUE(client.needs_begin_frame()); 205 EXPECT_TRUE(client.needs_begin_frame());
206 client.Reset(); 206 client.Reset();
207 207
208 // BeginFrame should draw. 208 // BeginFrame should draw.
209 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 209 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
210 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2); 210 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2);
211 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2); 211 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2);
212 EXPECT_FALSE(client.needs_begin_frame()); 212 EXPECT_TRUE(client.needs_begin_frame());
213 client.Reset(); 213 client.Reset();
214 } 214 }
215 215
216 TEST(SchedulerTest, RequestCommitAfterBeginFrameSentToMainThread) { 216 TEST(SchedulerTest, RequestCommitAfterBeginFrameSentToMainThread) {
217 FakeSchedulerClient client; 217 FakeSchedulerClient client;
218 SchedulerSettings default_scheduler_settings; 218 SchedulerSettings default_scheduler_settings;
219 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 219 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
220 scheduler->SetCanStart(); 220 scheduler->SetCanStart();
221 scheduler->SetVisible(true); 221 scheduler->SetVisible(true);
222 scheduler->SetCanDraw(true); 222 scheduler->SetCanDraw(true);
(...skipping 10 matching lines...) Expand all
233 233
234 // Now SetNeedsCommit again. Calling here means we need a second frame. 234 // Now SetNeedsCommit again. Calling here means we need a second frame.
235 scheduler->SetNeedsCommit(); 235 scheduler->SetNeedsCommit();
236 236
237 // Finish the commit for the first frame. 237 // Finish the commit for the first frame.
238 scheduler->FinishCommit(); 238 scheduler->FinishCommit();
239 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client); 239 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
240 client.Reset(); 240 client.Reset();
241 241
242 // Tick should draw but then begin another frame for the second commit. 242 // Tick should draw but then begin another frame for the second commit.
243 // Because we just swapped, the Scheduler should also request the next
244 // BeginFrame from the OutputSurface.
243 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 245 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
244 EXPECT_TRUE(client.needs_begin_frame()); 246 EXPECT_TRUE(client.needs_begin_frame());
245 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2); 247 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 3);
246 EXPECT_ACTION("ScheduledActionSendBeginFrameToMainThread", client, 1, 2); 248 EXPECT_ACTION("ScheduledActionSendBeginFrameToMainThread", client, 1, 3);
249 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 2, 3);
247 client.Reset(); 250 client.Reset();
248 251
249 // Finish the second commit to go back to quiescent state and verify we no 252 // Finish the second commit.
250 // longer request BeginFrames.
251 scheduler->FinishCommit(); 253 scheduler->FinishCommit();
252 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 254 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
255 EXPECT_ACTION("ScheduledActionCommit", client, 0, 3);
256 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 1, 3);
257 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 2, 3);
258 EXPECT_TRUE(client.needs_begin_frame());
259 client.Reset();
260
261 // On the next BeginFrame, verify we go back to a quiescent state and
262 // no longer request BeginFrames.
263 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
253 EXPECT_FALSE(client.needs_begin_frame()); 264 EXPECT_FALSE(client.needs_begin_frame());
254 } 265 }
255 266
256 TEST(SchedulerTest, TextureAcquisitionCausesCommitInsteadOfDraw) { 267 TEST(SchedulerTest, TextureAcquisitionCausesCommitInsteadOfDraw) {
257 FakeSchedulerClient client; 268 FakeSchedulerClient client;
258 SchedulerSettings default_scheduler_settings; 269 SchedulerSettings default_scheduler_settings;
259 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 270 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
260 scheduler->SetCanStart(); 271 scheduler->SetCanStart();
261 scheduler->SetVisible(true); 272 scheduler->SetVisible(true);
262 scheduler->SetCanDraw(true); 273 scheduler->SetCanDraw(true);
263 EXPECT_SINGLE_ACTION("ScheduledActionBeginOutputSurfaceCreation", client); 274 EXPECT_SINGLE_ACTION("ScheduledActionBeginOutputSurfaceCreation", client);
264 275
265 InitializeOutputSurfaceAndFirstCommit(scheduler); 276 InitializeOutputSurfaceAndFirstCommit(scheduler);
266 client.Reset(); 277 client.Reset();
267 scheduler->SetNeedsRedraw(); 278 scheduler->SetNeedsRedraw();
268 EXPECT_TRUE(scheduler->RedrawPending()); 279 EXPECT_TRUE(scheduler->RedrawPending());
269 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client); 280 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client);
270 EXPECT_TRUE(client.needs_begin_frame()); 281 EXPECT_TRUE(client.needs_begin_frame());
271 282
272 client.Reset(); 283 client.Reset();
273 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 284 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
274 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2); 285 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2);
275 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2); 286 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2);
276 EXPECT_FALSE(scheduler->RedrawPending()); 287 EXPECT_FALSE(scheduler->RedrawPending());
288 EXPECT_TRUE(client.needs_begin_frame());
289
290 client.Reset();
291 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
292 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client);
293 EXPECT_FALSE(scheduler->RedrawPending());
277 EXPECT_FALSE(client.needs_begin_frame()); 294 EXPECT_FALSE(client.needs_begin_frame());
278 295
279 client.Reset(); 296 client.Reset();
280 scheduler->SetMainThreadNeedsLayerTextures(); 297 scheduler->SetMainThreadNeedsLayerTextures();
281 EXPECT_SINGLE_ACTION("ScheduledActionAcquireLayerTexturesForMainThread", 298 EXPECT_SINGLE_ACTION("ScheduledActionAcquireLayerTexturesForMainThread",
282 client); 299 client);
283 300
284 // We should request a BeginFrame in anticipation of a draw. 301 // We should request a BeginFrame in anticipation of a draw.
285 client.Reset(); 302 client.Reset();
286 scheduler->SetNeedsRedraw(); 303 scheduler->SetNeedsRedraw();
(...skipping 19 matching lines...) Expand all
306 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client); 323 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
307 EXPECT_TRUE(scheduler->RedrawPending()); 324 EXPECT_TRUE(scheduler->RedrawPending());
308 EXPECT_TRUE(client.needs_begin_frame()); 325 EXPECT_TRUE(client.needs_begin_frame());
309 326
310 // Now we can draw again after the commit happens. 327 // Now we can draw again after the commit happens.
311 client.Reset(); 328 client.Reset();
312 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 329 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
313 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2); 330 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2);
314 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2); 331 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2);
315 EXPECT_FALSE(scheduler->RedrawPending()); 332 EXPECT_FALSE(scheduler->RedrawPending());
333 EXPECT_TRUE(client.needs_begin_frame());
334
335 // Make sure we stop requesting BeginFrames if we don't swap.
336 client.Reset();
337 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
338 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client);
316 EXPECT_FALSE(client.needs_begin_frame()); 339 EXPECT_FALSE(client.needs_begin_frame());
317 client.Reset();
318 } 340 }
319 341
320 TEST(SchedulerTest, TextureAcquisitionCollision) { 342 TEST(SchedulerTest, TextureAcquisitionCollision) {
321 FakeSchedulerClient client; 343 FakeSchedulerClient client;
322 SchedulerSettings default_scheduler_settings; 344 SchedulerSettings default_scheduler_settings;
323 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 345 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
324 scheduler->SetCanStart(); 346 scheduler->SetCanStart();
325 scheduler->SetVisible(true); 347 scheduler->SetVisible(true);
326 scheduler->SetCanDraw(true); 348 scheduler->SetCanDraw(true);
327 349
(...skipping 26 matching lines...) Expand all
354 client.Reset(); 376 client.Reset();
355 377
356 // No implicit commit is expected. 378 // No implicit commit is expected.
357 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 379 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
358 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 3); 380 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 3);
359 EXPECT_ACTION("ScheduledActionAcquireLayerTexturesForMainThread", 381 EXPECT_ACTION("ScheduledActionAcquireLayerTexturesForMainThread",
360 client, 382 client,
361 1, 383 1,
362 3); 384 3);
363 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 2, 3); 385 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 2, 3);
386 EXPECT_TRUE(client.needs_begin_frame());
364 client.Reset(); 387 client.Reset();
365 388
366 // Compositor not scheduled to draw because textures are locked by main 389 // Compositor not scheduled to draw because textures are locked by main
367 // thread. 390 // thread.
391 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
392 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client);
368 EXPECT_FALSE(client.needs_begin_frame()); 393 EXPECT_FALSE(client.needs_begin_frame());
394 client.Reset();
369 395
370 // Needs an explicit commit from the main thread. 396 // Needs an explicit commit from the main thread.
371 scheduler->SetNeedsCommit(); 397 scheduler->SetNeedsCommit();
372 EXPECT_ACTION("ScheduledActionSendBeginFrameToMainThread", client, 0, 2); 398 EXPECT_ACTION("ScheduledActionSendBeginFrameToMainThread", client, 0, 2);
373 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2); 399 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2);
374 client.Reset(); 400 client.Reset();
375 401
376 // Trigger the commit 402 // Trigger the commit
377 scheduler->FinishCommit(); 403 scheduler->FinishCommit();
404 EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
378 EXPECT_TRUE(client.needs_begin_frame()); 405 EXPECT_TRUE(client.needs_begin_frame());
406 client.Reset();
407
408 // Verify we draw on the next BeginFrame.
409 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
410 EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 0, 2);
411 EXPECT_ACTION("SetNeedsBeginFrameOnImplThread", client, 1, 2);
412 EXPECT_TRUE(client.needs_begin_frame());
413 client.Reset();
379 } 414 }
380 415
381 TEST(SchedulerTest, VisibilitySwitchWithTextureAcquisition) { 416 TEST(SchedulerTest, VisibilitySwitchWithTextureAcquisition) {
382 FakeSchedulerClient client; 417 FakeSchedulerClient client;
383 SchedulerSettings default_scheduler_settings; 418 SchedulerSettings default_scheduler_settings;
384 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 419 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
385 scheduler->SetCanStart(); 420 scheduler->SetCanStart();
386 scheduler->SetVisible(true); 421 scheduler->SetVisible(true);
387 scheduler->SetCanDraw(true); 422 scheduler->SetCanDraw(true);
388 423
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 EXPECT_EQ(0, client.num_draws()); 494 EXPECT_EQ(0, client.num_draws());
460 495
461 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 496 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
462 EXPECT_EQ(1, client.num_draws()); 497 EXPECT_EQ(1, client.num_draws());
463 EXPECT_TRUE(scheduler->RedrawPending()); 498 EXPECT_TRUE(scheduler->RedrawPending());
464 EXPECT_TRUE(client.needs_begin_frame()); 499 EXPECT_TRUE(client.needs_begin_frame());
465 500
466 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 501 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
467 EXPECT_EQ(2, client.num_draws()); 502 EXPECT_EQ(2, client.num_draws());
468 EXPECT_FALSE(scheduler->RedrawPending()); 503 EXPECT_FALSE(scheduler->RedrawPending());
504 EXPECT_TRUE(client.needs_begin_frame());
505
506 // We stop requesting BeginFrames after a BeginFrame where we don't swap.
507 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
508 EXPECT_EQ(2, client.num_draws());
509 EXPECT_FALSE(scheduler->RedrawPending());
469 EXPECT_FALSE(client.needs_begin_frame()); 510 EXPECT_FALSE(client.needs_begin_frame());
470 } 511 }
471 512
472 // Test that requesting redraw inside a failed draw doesn't lose the request. 513 // Test that requesting redraw inside a failed draw doesn't lose the request.
473 TEST(SchedulerTest, RequestRedrawInsideFailedDraw) { 514 TEST(SchedulerTest, RequestRedrawInsideFailedDraw) {
474 SchedulerClientThatsetNeedsDrawInsideDraw client; 515 SchedulerClientThatsetNeedsDrawInsideDraw client;
475 SchedulerSettings default_scheduler_settings; 516 SchedulerSettings default_scheduler_settings;
476 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 517 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
477 scheduler->SetCanStart(); 518 scheduler->SetCanStart();
478 scheduler->SetVisible(true); 519 scheduler->SetVisible(true);
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
568 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 609 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
569 EXPECT_EQ(1, client.num_draws()); 610 EXPECT_EQ(1, client.num_draws());
570 EXPECT_TRUE(scheduler->CommitPending()); 611 EXPECT_TRUE(scheduler->CommitPending());
571 EXPECT_TRUE(client.needs_begin_frame()); 612 EXPECT_TRUE(client.needs_begin_frame());
572 scheduler->FinishCommit(); 613 scheduler->FinishCommit();
573 614
574 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 615 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
575 EXPECT_EQ(2, client.num_draws());; 616 EXPECT_EQ(2, client.num_draws());;
576 EXPECT_FALSE(scheduler->RedrawPending()); 617 EXPECT_FALSE(scheduler->RedrawPending());
577 EXPECT_FALSE(scheduler->CommitPending()); 618 EXPECT_FALSE(scheduler->CommitPending());
619 EXPECT_TRUE(client.needs_begin_frame());
620
621 // We stop requesting BeginFrames after a BeginFrame where we don't swap.
622 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
623 EXPECT_EQ(2, client.num_draws());
624 EXPECT_FALSE(scheduler->RedrawPending());
625 EXPECT_FALSE(scheduler->CommitPending());
578 EXPECT_FALSE(client.needs_begin_frame()); 626 EXPECT_FALSE(client.needs_begin_frame());
579 } 627 }
580 628
581 // Tests that when a draw fails then the pending commit should not be dropped. 629 // Tests that when a draw fails then the pending commit should not be dropped.
582 TEST(SchedulerTest, RequestCommitInsideFailedDraw) { 630 TEST(SchedulerTest, RequestCommitInsideFailedDraw) {
583 SchedulerClientThatsetNeedsDrawInsideDraw client; 631 SchedulerClientThatsetNeedsDrawInsideDraw client;
584 SchedulerSettings default_scheduler_settings; 632 SchedulerSettings default_scheduler_settings;
585 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings); 633 Scheduler* scheduler = client.CreateScheduler(default_scheduler_settings);
586 scheduler->SetCanStart(); 634 scheduler->SetCanStart();
587 scheduler->SetVisible(true); 635 scheduler->SetVisible(true);
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
749 // Afterwards, neither a draw nor ManageTiles are pending. 797 // Afterwards, neither a draw nor ManageTiles are pending.
750 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 798 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
751 EXPECT_EQ(1, client.num_draws()); 799 EXPECT_EQ(1, client.num_draws());
752 EXPECT_TRUE(client.HasAction("ScheduledActionDrawAndSwapIfPossible")); 800 EXPECT_TRUE(client.HasAction("ScheduledActionDrawAndSwapIfPossible"));
753 EXPECT_TRUE(client.HasAction("ScheduledActionManageTiles")); 801 EXPECT_TRUE(client.HasAction("ScheduledActionManageTiles"));
754 EXPECT_LT(client.ActionIndex("ScheduledActionDrawAndSwapIfPossible"), 802 EXPECT_LT(client.ActionIndex("ScheduledActionDrawAndSwapIfPossible"),
755 client.ActionIndex("ScheduledActionManageTiles")); 803 client.ActionIndex("ScheduledActionManageTiles"));
756 EXPECT_FALSE(scheduler->RedrawPending()); 804 EXPECT_FALSE(scheduler->RedrawPending());
757 EXPECT_FALSE(scheduler->ManageTilesPending()); 805 EXPECT_FALSE(scheduler->ManageTilesPending());
758 806
807 // We need a BeginFrame where we don't swap to go idle.
brianderson 2013/09/13 20:19:10 Had to add this to @epenner's test to make sure we
808 client.Reset();
809 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
810 EXPECT_SINGLE_ACTION("SetNeedsBeginFrameOnImplThread", client);
811 EXPECT_EQ(0, client.num_draws());
812
759 // Now trigger a ManageTiles outside of a draw. We will then need 813 // Now trigger a ManageTiles outside of a draw. We will then need
760 // a begin-frame for the ManageTiles, but we don't need a draw. 814 // a begin-frame for the ManageTiles, but we don't need a draw.
761 client.Reset(); 815 client.Reset();
762 EXPECT_FALSE(client.needs_begin_frame()); 816 EXPECT_FALSE(client.needs_begin_frame());
763 scheduler->SetNeedsManageTiles(); 817 scheduler->SetNeedsManageTiles();
764 EXPECT_TRUE(client.needs_begin_frame()); 818 EXPECT_TRUE(client.needs_begin_frame());
765 EXPECT_TRUE(scheduler->ManageTilesPending()); 819 EXPECT_TRUE(scheduler->ManageTilesPending());
766 EXPECT_FALSE(scheduler->RedrawPending()); 820 EXPECT_FALSE(scheduler->RedrawPending());
767 821
768 // BeginFrame. There will be no draw, only ManageTiles. 822 // BeginFrame. There will be no draw, only ManageTiles.
769 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting()); 823 scheduler->BeginFrame(BeginFrameArgs::CreateForTesting());
770 EXPECT_EQ(0, client.num_draws()); 824 EXPECT_EQ(0, client.num_draws());
771 EXPECT_FALSE(client.HasAction("ScheduledActionDrawAndSwapIfPossible")); 825 EXPECT_FALSE(client.HasAction("ScheduledActionDrawAndSwapIfPossible"));
772 EXPECT_TRUE(client.HasAction("ScheduledActionManageTiles")); 826 EXPECT_TRUE(client.HasAction("ScheduledActionManageTiles"));
773 } 827 }
774 828
775 } // namespace 829 } // namespace
776 } // namespace cc 830 } // namespace cc
OLDNEW
« no previous file with comments | « cc/scheduler/scheduler_state_machine.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698