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

Side by Side Diff: cc/trees/layer_tree_host_unittest.cc

Issue 134623005: Make SingleThreadProxy a SchedulerClient (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More danakj review Created 6 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 | Annotate | Revision Log
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/trees/layer_tree_host.h" 5 #include "cc/trees/layer_tree_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/synchronization/lock.h" 10 #include "base/synchronization/lock.h"
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 num_draws_++; 82 num_draws_++;
83 if (!impl->active_tree()->source_frame_number()) 83 if (!impl->active_tree()->source_frame_number())
84 EndTest(); 84 EndTest();
85 } 85 }
86 86
87 virtual void CommitCompleteOnThread(LayerTreeHostImpl* impl) OVERRIDE { 87 virtual void CommitCompleteOnThread(LayerTreeHostImpl* impl) OVERRIDE {
88 num_commits_++; 88 num_commits_++;
89 } 89 }
90 90
91 virtual void AfterTest() OVERRIDE { 91 virtual void AfterTest() OVERRIDE {
92 EXPECT_GE(1, num_commits_); 92 EXPECT_LE(1, num_commits_);
93 EXPECT_GE(1, num_draws_); 93 EXPECT_LE(1, num_draws_);
94 } 94 }
95 95
96 private: 96 private:
97 int num_commits_; 97 int num_commits_;
98 int num_draws_; 98 int num_draws_;
99 }; 99 };
100 100
101 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestSetNeedsCommit1); 101 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestSetNeedsCommit1);
102 102
103 // A SetNeedsCommit should lead to 1 commit. Issuing a second commit after that 103 // A SetNeedsCommit should lead to 1 commit. Issuing a second commit after that
(...skipping 2260 matching lines...) Expand 10 before | Expand all | Expand 10 after
2364 } 2364 }
2365 2365
2366 TEST(LayerTreeHostTest, PartialUpdatesWithGLRenderer) { 2366 TEST(LayerTreeHostTest, PartialUpdatesWithGLRenderer) {
2367 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DIRECT_3D); 2367 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DIRECT_3D);
2368 2368
2369 LayerTreeSettings settings; 2369 LayerTreeSettings settings;
2370 settings.max_partial_texture_updates = 4; 2370 settings.max_partial_texture_updates = 4;
2371 2371
2372 scoped_ptr<LayerTreeHost> host = 2372 scoped_ptr<LayerTreeHost> host =
2373 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings); 2373 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings);
2374 host->SetLayerTreeHostClientReady();
2374 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded()); 2375 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded());
2375 EXPECT_EQ(4u, host->settings().max_partial_texture_updates); 2376 EXPECT_EQ(4u, host->settings().max_partial_texture_updates);
2376 } 2377 }
2377 2378
2378 TEST(LayerTreeHostTest, PartialUpdatesWithSoftwareRenderer) { 2379 TEST(LayerTreeHostTest, PartialUpdatesWithSoftwareRenderer) {
2379 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DIRECT_SOFTWARE); 2380 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DIRECT_SOFTWARE);
2380 2381
2381 LayerTreeSettings settings; 2382 LayerTreeSettings settings;
2382 settings.max_partial_texture_updates = 4; 2383 settings.max_partial_texture_updates = 4;
2383 2384
2384 scoped_ptr<LayerTreeHost> host = 2385 scoped_ptr<LayerTreeHost> host =
2385 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings); 2386 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings);
2387 host->SetLayerTreeHostClientReady();
2386 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded()); 2388 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded());
2387 EXPECT_EQ(4u, host->settings().max_partial_texture_updates); 2389 EXPECT_EQ(4u, host->settings().max_partial_texture_updates);
2388 } 2390 }
2389 2391
2390 TEST(LayerTreeHostTest, PartialUpdatesWithDelegatingRendererAndGLContent) { 2392 TEST(LayerTreeHostTest, PartialUpdatesWithDelegatingRendererAndGLContent) {
2391 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DELEGATED_3D); 2393 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DELEGATED_3D);
2392 2394
2393 LayerTreeSettings settings; 2395 LayerTreeSettings settings;
2394 settings.max_partial_texture_updates = 4; 2396 settings.max_partial_texture_updates = 4;
2395 2397
2396 scoped_ptr<LayerTreeHost> host = 2398 scoped_ptr<LayerTreeHost> host =
2397 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings); 2399 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings);
2400 host->SetLayerTreeHostClientReady();
2398 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded()); 2401 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded());
2399 EXPECT_EQ(0u, host->MaxPartialTextureUpdates()); 2402 EXPECT_EQ(0u, host->MaxPartialTextureUpdates());
2400 } 2403 }
2401 2404
2402 TEST(LayerTreeHostTest, 2405 TEST(LayerTreeHostTest,
2403 PartialUpdatesWithDelegatingRendererAndSoftwareContent) { 2406 PartialUpdatesWithDelegatingRendererAndSoftwareContent) {
2404 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DELEGATED_SOFTWARE); 2407 FakeLayerTreeHostClient client(FakeLayerTreeHostClient::DELEGATED_SOFTWARE);
2405 2408
2406 LayerTreeSettings settings; 2409 LayerTreeSettings settings;
2407 settings.max_partial_texture_updates = 4; 2410 settings.max_partial_texture_updates = 4;
2408 2411
2409 scoped_ptr<LayerTreeHost> host = 2412 scoped_ptr<LayerTreeHost> host =
2410 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings); 2413 LayerTreeHost::CreateSingleThreaded(&client, &client, NULL, settings);
2414 host->SetLayerTreeHostClientReady();
2411 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded()); 2415 EXPECT_TRUE(host->InitializeOutputSurfaceIfNeeded());
2412 EXPECT_EQ(0u, host->MaxPartialTextureUpdates()); 2416 EXPECT_EQ(0u, host->MaxPartialTextureUpdates());
2413 } 2417 }
2414 2418
2415 class LayerTreeHostTestShutdownWithOnlySomeResourcesEvicted 2419 class LayerTreeHostTestShutdownWithOnlySomeResourcesEvicted
2416 : public LayerTreeHostTest { 2420 : public LayerTreeHostTest {
2417 public: 2421 public:
2418 LayerTreeHostTestShutdownWithOnlySomeResourcesEvicted() 2422 LayerTreeHostTestShutdownWithOnlySomeResourcesEvicted()
2419 : root_layer_(FakeContentLayer::Create(&client_)), 2423 : root_layer_(FakeContentLayer::Create(&client_)),
2420 child_layer1_(FakeContentLayer::Create(&client_)), 2424 child_layer1_(FakeContentLayer::Create(&client_)),
(...skipping 2543 matching lines...) Expand 10 before | Expand all | Expand 10 after
4964 4968
4965 EndTest(); 4969 EndTest();
4966 } 4970 }
4967 4971
4968 virtual void AfterTest() OVERRIDE {} 4972 virtual void AfterTest() OVERRIDE {}
4969 }; 4973 };
4970 4974
4971 MULTI_THREAD_TEST_F(LayerTreeHostTestSimpleSwapPromiseMonitor); 4975 MULTI_THREAD_TEST_F(LayerTreeHostTestSimpleSwapPromiseMonitor);
4972 4976
4973 } // namespace cc 4977 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698