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

Side by Side Diff: cc/resource_update_controller_unittest.cc

Issue 12774006: cc: Chromify Layer and LayerImpl classes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: MoreAndroidCompilings Created 7 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « cc/resource_provider_unittest.cc ('k') | cc/scheduler_state_machine_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/resource_update_controller.h" 5 #include "cc/resource_update_controller.h"
6 6
7 #include "cc/prioritized_resource_manager.h" 7 #include "cc/prioritized_resource_manager.h"
8 #include "cc/single_thread_proxy.h" // For DebugScopedSetImplThread 8 #include "cc/single_thread_proxy.h" // For DebugScopedSetImplThread
9 #include "cc/test/fake_output_surface.h" 9 #include "cc/test/fake_output_surface.h"
10 #include "cc/test/fake_proxy.h" 10 #include "cc/test/fake_proxy.h"
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 bool readyToFinalizeCalled() const { return m_readyToFinalizeCalled; } 343 bool readyToFinalizeCalled() const { return m_readyToFinalizeCalled; }
344 344
345 virtual void ReadyToFinalizeTextureUpdates() OVERRIDE { m_readyToFinalizeCal led = true; } 345 virtual void ReadyToFinalizeTextureUpdates() OVERRIDE { m_readyToFinalizeCal led = true; }
346 346
347 protected: 347 protected:
348 bool m_readyToFinalizeCalled; 348 bool m_readyToFinalizeCalled;
349 }; 349 };
350 350
351 class FakeResourceUpdateController : public cc::ResourceUpdateController { 351 class FakeResourceUpdateController : public cc::ResourceUpdateController {
352 public: 352 public:
353 static scoped_ptr<FakeResourceUpdateController> create(cc::ResourceUpdateCon trollerClient* client, cc::Thread* thread, scoped_ptr<ResourceUpdateQueue> queue , ResourceProvider* resourceProvider) 353 static scoped_ptr<FakeResourceUpdateController> Create(cc::ResourceUpdateCon trollerClient* client, cc::Thread* thread, scoped_ptr<ResourceUpdateQueue> queue , ResourceProvider* resourceProvider)
354 { 354 {
355 return make_scoped_ptr(new FakeResourceUpdateController(client, thread, queue.Pass(), resourceProvider)); 355 return make_scoped_ptr(new FakeResourceUpdateController(client, thread, queue.Pass(), resourceProvider));
356 } 356 }
357 357
358 void setNow(base::TimeTicks time) { m_now = time; } 358 void setNow(base::TimeTicks time) { m_now = time; }
359 virtual base::TimeTicks Now() const OVERRIDE { return m_now; } 359 virtual base::TimeTicks Now() const OVERRIDE { return m_now; }
360 void setUpdateMoreTexturesTime(base::TimeDelta time) { m_updateMoreTexturesT ime = time; } 360 void setUpdateMoreTexturesTime(base::TimeDelta time) { m_updateMoreTexturesT ime = time; }
361 virtual base::TimeDelta UpdateMoreTexturesTime() const OVERRIDE { return m_u pdateMoreTexturesTime; } 361 virtual base::TimeDelta UpdateMoreTexturesTime() const OVERRIDE { return m_u pdateMoreTexturesTime; }
362 void setUpdateMoreTexturesSize(size_t size) { m_updateMoreTexturesSize = siz e; } 362 void setUpdateMoreTexturesSize(size_t size) { m_updateMoreTexturesSize = siz e; }
363 virtual size_t UpdateMoreTexturesSize() const OVERRIDE { return m_updateMore TexturesSize; } 363 virtual size_t UpdateMoreTexturesSize() const OVERRIDE { return m_updateMore TexturesSize; }
(...skipping 19 matching lines...) Expand all
383 { 383 {
384 FakeResourceUpdateControllerClient client; 384 FakeResourceUpdateControllerClient client;
385 FakeThread thread; 385 FakeThread thread;
386 386
387 setMaxUploadCountPerUpdate(1); 387 setMaxUploadCountPerUpdate(1);
388 appendFullUploadsToUpdateQueue(3); 388 appendFullUploadsToUpdateQueue(3);
389 appendPartialUploadsToUpdateQueue(0); 389 appendPartialUploadsToUpdateQueue(0);
390 390
391 DebugScopedSetImplThreadAndMainThreadBlocked 391 DebugScopedSetImplThreadAndMainThreadBlocked
392 implThreadAndMainThreadBlocked(&m_proxy); 392 implThreadAndMainThreadBlocked(&m_proxy);
393 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::create(&client, &thread, m_queue.Pass(), m_resourceProvider.get())); 393 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::Create(&client, &thread, m_queue.Pass(), m_resourceProvider.get()));
394 394
395 controller->setNow( 395 controller->setNow(
396 controller->Now() + base::TimeDelta::FromMilliseconds(1)); 396 controller->Now() + base::TimeDelta::FromMilliseconds(1));
397 controller->setUpdateMoreTexturesTime( 397 controller->setUpdateMoreTexturesTime(
398 base::TimeDelta::FromMilliseconds(100)); 398 base::TimeDelta::FromMilliseconds(100));
399 controller->setUpdateMoreTexturesSize(1); 399 controller->setUpdateMoreTexturesSize(1);
400 // Not enough time for any updates. 400 // Not enough time for any updates.
401 controller->PerformMoreUpdates( 401 controller->PerformMoreUpdates(
402 controller->Now() + base::TimeDelta::FromMilliseconds(90)); 402 controller->Now() + base::TimeDelta::FromMilliseconds(90));
403 EXPECT_FALSE(thread.hasPendingTask()); 403 EXPECT_FALSE(thread.hasPendingTask());
(...skipping 26 matching lines...) Expand all
430 { 430 {
431 FakeResourceUpdateControllerClient client; 431 FakeResourceUpdateControllerClient client;
432 FakeThread thread; 432 FakeThread thread;
433 433
434 setMaxUploadCountPerUpdate(1); 434 setMaxUploadCountPerUpdate(1);
435 appendFullUploadsToUpdateQueue(2); 435 appendFullUploadsToUpdateQueue(2);
436 appendPartialUploadsToUpdateQueue(0); 436 appendPartialUploadsToUpdateQueue(0);
437 437
438 DebugScopedSetImplThreadAndMainThreadBlocked 438 DebugScopedSetImplThreadAndMainThreadBlocked
439 implThreadAndMainThreadBlocked(&m_proxy); 439 implThreadAndMainThreadBlocked(&m_proxy);
440 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::create(&client, &thread, m_queue.Pass(), m_resourceProvider.get())); 440 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::Create(&client, &thread, m_queue.Pass(), m_resourceProvider.get()));
441 441
442 controller->setNow( 442 controller->setNow(
443 controller->Now() + base::TimeDelta::FromMilliseconds(1)); 443 controller->Now() + base::TimeDelta::FromMilliseconds(1));
444 controller->setUpdateMoreTexturesTime( 444 controller->setUpdateMoreTexturesTime(
445 base::TimeDelta::FromMilliseconds(100)); 445 base::TimeDelta::FromMilliseconds(100));
446 controller->setUpdateMoreTexturesSize(1); 446 controller->setUpdateMoreTexturesSize(1);
447 // Enough time for 3 updates but only 2 necessary. 447 // Enough time for 3 updates but only 2 necessary.
448 controller->PerformMoreUpdates( 448 controller->PerformMoreUpdates(
449 controller->Now() + base::TimeDelta::FromMilliseconds(310)); 449 controller->Now() + base::TimeDelta::FromMilliseconds(310));
450 runPendingTask(&thread, controller.get()); 450 runPendingTask(&thread, controller.get());
(...skipping 18 matching lines...) Expand all
469 { 469 {
470 FakeResourceUpdateControllerClient client; 470 FakeResourceUpdateControllerClient client;
471 FakeThread thread; 471 FakeThread thread;
472 472
473 setMaxUploadCountPerUpdate(1); 473 setMaxUploadCountPerUpdate(1);
474 appendFullUploadsToUpdateQueue(2); 474 appendFullUploadsToUpdateQueue(2);
475 appendPartialUploadsToUpdateQueue(0); 475 appendPartialUploadsToUpdateQueue(0);
476 476
477 DebugScopedSetImplThreadAndMainThreadBlocked 477 DebugScopedSetImplThreadAndMainThreadBlocked
478 implThreadAndMainThreadBlocked(&m_proxy); 478 implThreadAndMainThreadBlocked(&m_proxy);
479 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::create(&client, &thread, m_queue.Pass(), m_resourceProvider.get())); 479 scoped_ptr<FakeResourceUpdateController> controller(FakeResourceUpdateContro ller::Create(&client, &thread, m_queue.Pass(), m_resourceProvider.get()));
480 480
481 controller->setNow( 481 controller->setNow(
482 controller->Now() + base::TimeDelta::FromMilliseconds(1)); 482 controller->Now() + base::TimeDelta::FromMilliseconds(1));
483 controller->setUpdateMoreTexturesTime( 483 controller->setUpdateMoreTexturesTime(
484 base::TimeDelta::FromMilliseconds(500)); 484 base::TimeDelta::FromMilliseconds(500));
485 controller->setUpdateMoreTexturesSize(1); 485 controller->setUpdateMoreTexturesSize(1);
486 486
487 for (int i = 0; i < 100; i++) { 487 for (int i = 0; i < 100; i++) {
488 if (client.readyToFinalizeCalled()) 488 if (client.readyToFinalizeCalled())
489 break; 489 break;
490 490
491 // Not enough time for any updates. 491 // Not enough time for any updates.
492 controller->PerformMoreUpdates( 492 controller->PerformMoreUpdates(
493 controller->Now() + base::TimeDelta::FromMilliseconds(400)); 493 controller->Now() + base::TimeDelta::FromMilliseconds(400));
494 494
495 if (thread.hasPendingTask()) 495 if (thread.hasPendingTask())
496 runPendingTask(&thread, controller.get()); 496 runPendingTask(&thread, controller.get());
497 } 497 }
498 498
499 EXPECT_FALSE(thread.hasPendingTask()); 499 EXPECT_FALSE(thread.hasPendingTask());
500 EXPECT_TRUE(client.readyToFinalizeCalled()); 500 EXPECT_TRUE(client.readyToFinalizeCalled());
501 EXPECT_EQ(2, m_numTotalUploads); 501 EXPECT_EQ(2, m_numTotalUploads);
502 } 502 }
503 503
504 } // namespace 504 } // namespace
505 } // namespace cc 505 } // namespace cc
OLDNEW
« no previous file with comments | « cc/resource_provider_unittest.cc ('k') | cc/scheduler_state_machine_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698