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

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

Issue 202763002: Switch to use SharedBitmapManager all the time in cc_unittests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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
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_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 #include "cc/test/fake_output_surface.h" 42 #include "cc/test/fake_output_surface.h"
43 #include "cc/test/fake_output_surface_client.h" 43 #include "cc/test/fake_output_surface_client.h"
44 #include "cc/test/fake_picture_layer_impl.h" 44 #include "cc/test/fake_picture_layer_impl.h"
45 #include "cc/test/fake_picture_pile_impl.h" 45 #include "cc/test/fake_picture_pile_impl.h"
46 #include "cc/test/fake_proxy.h" 46 #include "cc/test/fake_proxy.h"
47 #include "cc/test/fake_rendering_stats_instrumentation.h" 47 #include "cc/test/fake_rendering_stats_instrumentation.h"
48 #include "cc/test/fake_video_frame_provider.h" 48 #include "cc/test/fake_video_frame_provider.h"
49 #include "cc/test/geometry_test_utils.h" 49 #include "cc/test/geometry_test_utils.h"
50 #include "cc/test/layer_test_common.h" 50 #include "cc/test/layer_test_common.h"
51 #include "cc/test/render_pass_test_common.h" 51 #include "cc/test/render_pass_test_common.h"
52 #include "cc/test/test_shared_bitmap_manager.h"
52 #include "cc/test/test_web_graphics_context_3d.h" 53 #include "cc/test/test_web_graphics_context_3d.h"
53 #include "cc/trees/layer_tree_impl.h" 54 #include "cc/trees/layer_tree_impl.h"
54 #include "cc/trees/single_thread_proxy.h" 55 #include "cc/trees/single_thread_proxy.h"
55 #include "media/base/media.h" 56 #include "media/base/media.h"
56 #include "testing/gmock/include/gmock/gmock.h" 57 #include "testing/gmock/include/gmock/gmock.h"
57 #include "testing/gtest/include/gtest/gtest.h" 58 #include "testing/gtest/include/gtest/gtest.h"
58 #include "third_party/skia/include/core/SkMallocPixelRef.h" 59 #include "third_party/skia/include/core/SkMallocPixelRef.h"
59 #include "ui/gfx/frame_time.h" 60 #include "ui/gfx/frame_time.h"
60 #include "ui/gfx/rect_conversions.h" 61 #include "ui/gfx/rect_conversions.h"
61 #include "ui/gfx/size_conversions.h" 62 #include "ui/gfx/size_conversions.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 OVERRIDE { requested_scrollbar_animation_delay_ = delay; } 148 OVERRIDE { requested_scrollbar_animation_delay_ = delay; }
148 virtual void DidActivatePendingTree() OVERRIDE {} 149 virtual void DidActivatePendingTree() OVERRIDE {}
149 virtual void DidManageTiles() OVERRIDE {} 150 virtual void DidManageTiles() OVERRIDE {}
150 151
151 void set_reduce_memory_result(bool reduce_memory_result) { 152 void set_reduce_memory_result(bool reduce_memory_result) {
152 reduce_memory_result_ = reduce_memory_result; 153 reduce_memory_result_ = reduce_memory_result;
153 } 154 }
154 155
155 bool CreateHostImpl(const LayerTreeSettings& settings, 156 bool CreateHostImpl(const LayerTreeSettings& settings,
156 scoped_ptr<OutputSurface> output_surface) { 157 scoped_ptr<OutputSurface> output_surface) {
157 host_impl_ = LayerTreeHostImpl::Create( 158 shared_bitmap_manager_.reset(new TestSharedBitmapManager());
158 settings, this, &proxy_, &stats_instrumentation_, NULL, 0); 159 host_impl_ = LayerTreeHostImpl::Create(settings,
160 this,
161 &proxy_,
162 &stats_instrumentation_,
163 shared_bitmap_manager_.get(),
164 0);
159 bool init = host_impl_->InitializeRenderer(output_surface.Pass()); 165 bool init = host_impl_->InitializeRenderer(output_surface.Pass());
160 host_impl_->SetViewportSize(gfx::Size(10, 10)); 166 host_impl_->SetViewportSize(gfx::Size(10, 10));
161 return init; 167 return init;
162 } 168 }
163 169
164 void SetupRootLayerImpl(scoped_ptr<LayerImpl> root) { 170 void SetupRootLayerImpl(scoped_ptr<LayerImpl> root) {
165 root->SetAnchorPoint(gfx::PointF()); 171 root->SetAnchorPoint(gfx::PointF());
166 root->SetPosition(gfx::PointF()); 172 root->SetPosition(gfx::PointF());
167 root->SetBounds(gfx::Size(10, 10)); 173 root->SetBounds(gfx::Size(10, 10));
168 root->SetContentBounds(gfx::Size(10, 10)); 174 root->SetContentBounds(gfx::Size(10, 10));
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 void DrawOneFrame() { 376 void DrawOneFrame() {
371 LayerTreeHostImpl::FrameData frame_data; 377 LayerTreeHostImpl::FrameData frame_data;
372 host_impl_->PrepareToDraw(&frame_data, gfx::Rect()); 378 host_impl_->PrepareToDraw(&frame_data, gfx::Rect());
373 host_impl_->DidDrawAllLayers(frame_data); 379 host_impl_->DidDrawAllLayers(frame_data);
374 } 380 }
375 381
376 FakeProxy proxy_; 382 FakeProxy proxy_;
377 DebugScopedSetImplThread always_impl_thread_; 383 DebugScopedSetImplThread always_impl_thread_;
378 DebugScopedSetMainThreadBlocked always_main_thread_blocked_; 384 DebugScopedSetMainThreadBlocked always_main_thread_blocked_;
379 385
386 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_;
380 scoped_ptr<LayerTreeHostImpl> host_impl_; 387 scoped_ptr<LayerTreeHostImpl> host_impl_;
381 FakeRenderingStatsInstrumentation stats_instrumentation_; 388 FakeRenderingStatsInstrumentation stats_instrumentation_;
382 bool on_can_draw_state_changed_called_; 389 bool on_can_draw_state_changed_called_;
383 bool did_notify_ready_to_activate_; 390 bool did_notify_ready_to_activate_;
384 bool did_request_commit_; 391 bool did_request_commit_;
385 bool did_request_redraw_; 392 bool did_request_redraw_;
386 bool did_request_manage_tiles_; 393 bool did_request_manage_tiles_;
387 bool did_upload_visible_tile_; 394 bool did_upload_visible_tile_;
388 bool reduce_memory_result_; 395 bool reduce_memory_result_;
389 base::TimeDelta requested_scrollbar_animation_delay_; 396 base::TimeDelta requested_scrollbar_animation_delay_;
(...skipping 765 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 ExpectNone(*scroll_info, scroll_layer->id()); 1162 ExpectNone(*scroll_info, scroll_layer->id());
1156 } 1163 }
1157 } 1164 }
1158 1165
1159 class LayerTreeHostImplOverridePhysicalTime : public LayerTreeHostImpl { 1166 class LayerTreeHostImplOverridePhysicalTime : public LayerTreeHostImpl {
1160 public: 1167 public:
1161 LayerTreeHostImplOverridePhysicalTime( 1168 LayerTreeHostImplOverridePhysicalTime(
1162 const LayerTreeSettings& settings, 1169 const LayerTreeSettings& settings,
1163 LayerTreeHostImplClient* client, 1170 LayerTreeHostImplClient* client,
1164 Proxy* proxy, 1171 Proxy* proxy,
1172 SharedBitmapManager* manager,
1165 RenderingStatsInstrumentation* rendering_stats_instrumentation) 1173 RenderingStatsInstrumentation* rendering_stats_instrumentation)
1166 : LayerTreeHostImpl(settings, 1174 : LayerTreeHostImpl(settings,
1167 client, 1175 client,
1168 proxy, 1176 proxy,
1169 rendering_stats_instrumentation, 1177 rendering_stats_instrumentation,
1170 NULL, 1178 manager,
1171 0) {} 1179 0) {}
1172 1180
1173 virtual base::TimeTicks CurrentPhysicalTimeTicks() const OVERRIDE { 1181 virtual base::TimeTicks CurrentPhysicalTimeTicks() const OVERRIDE {
1174 return fake_current_physical_time_; 1182 return fake_current_physical_time_;
1175 } 1183 }
1176 1184
1177 void SetCurrentPhysicalTimeTicksForTest(base::TimeTicks fake_now) { 1185 void SetCurrentPhysicalTimeTicksForTest(base::TimeTicks fake_now) {
1178 fake_current_physical_time_ = fake_now; 1186 fake_current_physical_time_ = fake_now;
1179 } 1187 }
1180 1188
1181 private: 1189 private:
1182 base::TimeTicks fake_current_physical_time_; 1190 base::TimeTicks fake_current_physical_time_;
1183 }; 1191 };
1184 1192
1185 TEST_F(LayerTreeHostImplTest, ScrollbarLinearFadeScheduling) { 1193 TEST_F(LayerTreeHostImplTest, ScrollbarLinearFadeScheduling) {
1186 LayerTreeSettings settings; 1194 LayerTreeSettings settings;
1187 settings.scrollbar_animator = LayerTreeSettings::LinearFade; 1195 settings.scrollbar_animator = LayerTreeSettings::LinearFade;
1188 settings.scrollbar_linear_fade_delay_ms = 20; 1196 settings.scrollbar_linear_fade_delay_ms = 20;
1189 settings.scrollbar_linear_fade_length_ms = 20; 1197 settings.scrollbar_linear_fade_length_ms = 20;
1190 1198
1191 gfx::Size viewport_size(10, 10); 1199 gfx::Size viewport_size(10, 10);
1192 gfx::Size content_size(100, 100); 1200 gfx::Size content_size(100, 100);
1193 1201
1202 shared_bitmap_manager_.reset(new TestSharedBitmapManager());
1194 LayerTreeHostImplOverridePhysicalTime* host_impl_override_time = 1203 LayerTreeHostImplOverridePhysicalTime* host_impl_override_time =
1195 new LayerTreeHostImplOverridePhysicalTime( 1204 new LayerTreeHostImplOverridePhysicalTime(settings,
1196 settings, this, &proxy_, &stats_instrumentation_); 1205 this,
1206 &proxy_,
1207 shared_bitmap_manager_.get(),
1208 &stats_instrumentation_);
1197 host_impl_ = make_scoped_ptr(host_impl_override_time); 1209 host_impl_ = make_scoped_ptr(host_impl_override_time);
1198 host_impl_->InitializeRenderer(CreateOutputSurface()); 1210 host_impl_->InitializeRenderer(CreateOutputSurface());
1199 host_impl_->SetViewportSize(viewport_size); 1211 host_impl_->SetViewportSize(viewport_size);
1200 1212
1201 scoped_ptr<LayerImpl> root = 1213 scoped_ptr<LayerImpl> root =
1202 LayerImpl::Create(host_impl_->active_tree(), 1); 1214 LayerImpl::Create(host_impl_->active_tree(), 1);
1203 root->SetBounds(viewport_size); 1215 root->SetBounds(viewport_size);
1204 1216
1205 scoped_ptr<LayerImpl> scroll = 1217 scoped_ptr<LayerImpl> scroll =
1206 LayerImpl::Create(host_impl_->active_tree(), 2); 1218 LayerImpl::Create(host_impl_->active_tree(), 2);
(...skipping 2633 matching lines...) Expand 10 before | Expand all | Expand 10 after
3840 context_provider->BindToCurrentThread(); 3852 context_provider->BindToCurrentThread();
3841 context_provider->TestContext3d()->set_have_post_sub_buffer(true); 3853 context_provider->TestContext3d()->set_have_post_sub_buffer(true);
3842 3854
3843 scoped_ptr<OutputSurface> output_surface( 3855 scoped_ptr<OutputSurface> output_surface(
3844 FakeOutputSurface::Create3d(context_provider)); 3856 FakeOutputSurface::Create3d(context_provider));
3845 3857
3846 // This test creates its own LayerTreeHostImpl, so 3858 // This test creates its own LayerTreeHostImpl, so
3847 // that we can force partial swap enabled. 3859 // that we can force partial swap enabled.
3848 LayerTreeSettings settings; 3860 LayerTreeSettings settings;
3849 settings.partial_swap_enabled = true; 3861 settings.partial_swap_enabled = true;
3862 scoped_ptr<SharedBitmapManager> shared_bitmap_manager(
3863 new TestSharedBitmapManager());
3850 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl = 3864 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl =
3851 LayerTreeHostImpl::Create( 3865 LayerTreeHostImpl::Create(settings,
3852 settings, this, &proxy_, &stats_instrumentation_, NULL, 0); 3866 this,
3867 &proxy_,
3868 &stats_instrumentation_,
3869 shared_bitmap_manager.get(),
3870 0);
3853 layer_tree_host_impl->InitializeRenderer(output_surface.Pass()); 3871 layer_tree_host_impl->InitializeRenderer(output_surface.Pass());
3854 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500)); 3872 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500));
3855 3873
3856 scoped_ptr<LayerImpl> root = 3874 scoped_ptr<LayerImpl> root =
3857 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1); 3875 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1);
3858 scoped_ptr<LayerImpl> child = 3876 scoped_ptr<LayerImpl> child =
3859 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 2); 3877 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 2);
3860 child->SetPosition(gfx::PointF(12.f, 13.f)); 3878 child->SetPosition(gfx::PointF(12.f, 13.f));
3861 child->SetAnchorPoint(gfx::PointF()); 3879 child->SetAnchorPoint(gfx::PointF());
3862 child->SetBounds(gfx::Size(14, 15)); 3880 child->SetBounds(gfx::Size(14, 15));
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
4134 host_impl_->DrawLayers(&frame, gfx::FrameTime::Now()); 4152 host_impl_->DrawLayers(&frame, gfx::FrameTime::Now());
4135 host_impl_->DidDrawAllLayers(frame); 4153 host_impl_->DidDrawAllLayers(frame);
4136 } 4154 }
4137 Mock::VerifyAndClearExpectations(&mock_context); 4155 Mock::VerifyAndClearExpectations(&mock_context);
4138 } 4156 }
4139 4157
4140 static scoped_ptr<LayerTreeHostImpl> SetupLayersForOpacity( 4158 static scoped_ptr<LayerTreeHostImpl> SetupLayersForOpacity(
4141 bool partial_swap, 4159 bool partial_swap,
4142 LayerTreeHostImplClient* client, 4160 LayerTreeHostImplClient* client,
4143 Proxy* proxy, 4161 Proxy* proxy,
4162 SharedBitmapManager* manager,
4144 RenderingStatsInstrumentation* stats_instrumentation) { 4163 RenderingStatsInstrumentation* stats_instrumentation) {
4145 scoped_refptr<TestContextProvider> provider(TestContextProvider::Create()); 4164 scoped_refptr<TestContextProvider> provider(TestContextProvider::Create());
4146 scoped_ptr<OutputSurface> output_surface( 4165 scoped_ptr<OutputSurface> output_surface(
4147 FakeOutputSurface::Create3d(provider)); 4166 FakeOutputSurface::Create3d(provider));
4148 provider->BindToCurrentThread(); 4167 provider->BindToCurrentThread();
4149 provider->TestContext3d()->set_have_post_sub_buffer(true); 4168 provider->TestContext3d()->set_have_post_sub_buffer(true);
4150 4169
4151 LayerTreeSettings settings; 4170 LayerTreeSettings settings;
4152 settings.partial_swap_enabled = partial_swap; 4171 settings.partial_swap_enabled = partial_swap;
4153 scoped_ptr<LayerTreeHostImpl> my_host_impl = LayerTreeHostImpl::Create( 4172 scoped_ptr<LayerTreeHostImpl> my_host_impl = LayerTreeHostImpl::Create(
4154 settings, client, proxy, stats_instrumentation, NULL, 0); 4173 settings, client, proxy, stats_instrumentation, manager, 0);
4155 my_host_impl->InitializeRenderer(output_surface.Pass()); 4174 my_host_impl->InitializeRenderer(output_surface.Pass());
4156 my_host_impl->SetViewportSize(gfx::Size(100, 100)); 4175 my_host_impl->SetViewportSize(gfx::Size(100, 100));
4157 4176
4158 /* 4177 /*
4159 Layers are created as follows: 4178 Layers are created as follows:
4160 4179
4161 +--------------------+ 4180 +--------------------+
4162 | 1 | 4181 | 1 |
4163 | +-----------+ | 4182 | +-----------+ |
4164 | | 2 | | 4183 | | 2 | |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
4210 grand_child->SetDrawsContent(true); 4229 grand_child->SetDrawsContent(true);
4211 4230
4212 child->AddChild(grand_child.Pass()); 4231 child->AddChild(grand_child.Pass());
4213 root->AddChild(child.Pass()); 4232 root->AddChild(child.Pass());
4214 4233
4215 my_host_impl->active_tree()->SetRootLayer(root.Pass()); 4234 my_host_impl->active_tree()->SetRootLayer(root.Pass());
4216 return my_host_impl.Pass(); 4235 return my_host_impl.Pass();
4217 } 4236 }
4218 4237
4219 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorPartialSwap) { 4238 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorPartialSwap) {
4239 scoped_ptr<SharedBitmapManager> shared_bitmap_manager(
4240 new TestSharedBitmapManager());
4220 scoped_ptr<LayerTreeHostImpl> my_host_impl = 4241 scoped_ptr<LayerTreeHostImpl> my_host_impl =
4221 SetupLayersForOpacity(true, this, &proxy_, &stats_instrumentation_); 4242 SetupLayersForOpacity(true,
4243 this,
4244 &proxy_,
4245 shared_bitmap_manager.get(),
4246 &stats_instrumentation_);
4222 { 4247 {
4223 LayerTreeHostImpl::FrameData frame; 4248 LayerTreeHostImpl::FrameData frame;
4224 EXPECT_EQ(DrawSwapReadbackResult::DRAW_SUCCESS, 4249 EXPECT_EQ(DrawSwapReadbackResult::DRAW_SUCCESS,
4225 my_host_impl->PrepareToDraw(&frame, gfx::Rect())); 4250 my_host_impl->PrepareToDraw(&frame, gfx::Rect()));
4226 4251
4227 // Verify all quads have been computed 4252 // Verify all quads have been computed
4228 ASSERT_EQ(2U, frame.render_passes.size()); 4253 ASSERT_EQ(2U, frame.render_passes.size());
4229 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size()); 4254 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
4230 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size()); 4255 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
4231 EXPECT_EQ(DrawQuad::SOLID_COLOR, 4256 EXPECT_EQ(DrawQuad::SOLID_COLOR,
4232 frame.render_passes[0]->quad_list[0]->material); 4257 frame.render_passes[0]->quad_list[0]->material);
4233 EXPECT_EQ(DrawQuad::RENDER_PASS, 4258 EXPECT_EQ(DrawQuad::RENDER_PASS,
4234 frame.render_passes[1]->quad_list[0]->material); 4259 frame.render_passes[1]->quad_list[0]->material);
4235 4260
4236 my_host_impl->DrawLayers(&frame, gfx::FrameTime::Now()); 4261 my_host_impl->DrawLayers(&frame, gfx::FrameTime::Now());
4237 my_host_impl->DidDrawAllLayers(frame); 4262 my_host_impl->DidDrawAllLayers(frame);
4238 } 4263 }
4239 } 4264 }
4240 4265
4241 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorNoPartialSwap) { 4266 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorNoPartialSwap) {
4267 scoped_ptr<SharedBitmapManager> shared_bitmap_manager(
4268 new TestSharedBitmapManager());
4242 scoped_ptr<LayerTreeHostImpl> my_host_impl = 4269 scoped_ptr<LayerTreeHostImpl> my_host_impl =
4243 SetupLayersForOpacity(false, this, &proxy_, &stats_instrumentation_); 4270 SetupLayersForOpacity(false,
4271 this,
4272 &proxy_,
4273 shared_bitmap_manager.get(),
4274 &stats_instrumentation_);
4244 { 4275 {
4245 LayerTreeHostImpl::FrameData frame; 4276 LayerTreeHostImpl::FrameData frame;
4246 EXPECT_EQ(DrawSwapReadbackResult::DRAW_SUCCESS, 4277 EXPECT_EQ(DrawSwapReadbackResult::DRAW_SUCCESS,
4247 my_host_impl->PrepareToDraw(&frame, gfx::Rect())); 4278 my_host_impl->PrepareToDraw(&frame, gfx::Rect()));
4248 4279
4249 // Verify all quads have been computed 4280 // Verify all quads have been computed
4250 ASSERT_EQ(2U, frame.render_passes.size()); 4281 ASSERT_EQ(2U, frame.render_passes.size());
4251 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size()); 4282 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
4252 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size()); 4283 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
4253 EXPECT_EQ(DrawQuad::SOLID_COLOR, 4284 EXPECT_EQ(DrawQuad::SOLID_COLOR,
(...skipping 1252 matching lines...) Expand 10 before | Expand all | Expand 10 after
5506 onscreen_context_provider_, offscreen_context_provider_)); 5537 onscreen_context_provider_, offscreen_context_provider_));
5507 EXPECT_FALSE(host_impl_->output_surface()->context_provider()); 5538 EXPECT_FALSE(host_impl_->output_surface()->context_provider());
5508 EXPECT_FALSE(host_impl_->offscreen_context_provider()); 5539 EXPECT_FALSE(host_impl_->offscreen_context_provider());
5509 EXPECT_FALSE(did_update_renderer_capabilities_); 5540 EXPECT_FALSE(did_update_renderer_capabilities_);
5510 } 5541 }
5511 5542
5512 // Checks that we have a non-0 default allocation if we pass a context that 5543 // Checks that we have a non-0 default allocation if we pass a context that
5513 // doesn't support memory management extensions. 5544 // doesn't support memory management extensions.
5514 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) { 5545 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) {
5515 LayerTreeSettings settings; 5546 LayerTreeSettings settings;
5516 host_impl_ = LayerTreeHostImpl::Create( 5547 scoped_ptr<SharedBitmapManager> shared_bitmap_manager(
danakj 2014/03/18 23:42:44 can use shared_bitmap_manager_ here since we're se
5517 settings, this, &proxy_, &stats_instrumentation_, NULL, 0); 5548 new TestSharedBitmapManager());
5549 host_impl_ = LayerTreeHostImpl::Create(settings,
5550 this,
5551 &proxy_,
5552 &stats_instrumentation_,
5553 shared_bitmap_manager.get(),
5554 0);
5518 5555
5519 scoped_ptr<OutputSurface> output_surface( 5556 scoped_ptr<OutputSurface> output_surface(
5520 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create())); 5557 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()));
5521 host_impl_->InitializeRenderer(output_surface.Pass()); 5558 host_impl_->InitializeRenderer(output_surface.Pass());
5522 EXPECT_LT(0ul, host_impl_->memory_allocation_limit_bytes()); 5559 EXPECT_LT(0ul, host_impl_->memory_allocation_limit_bytes());
5523 } 5560 }
5524 5561
5525 TEST_F(LayerTreeHostImplTest, MemoryPolicy) { 5562 TEST_F(LayerTreeHostImplTest, MemoryPolicy) {
5526 ManagedMemoryPolicy policy1( 5563 ManagedMemoryPolicy policy1(
5527 456, gpu::MemoryAllocation::CUTOFF_ALLOW_EVERYTHING, 1000); 5564 456, gpu::MemoryAllocation::CUTOFF_ALLOW_EVERYTHING, 1000);
(...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after
6178 EXPECT_EQ(host_impl_->global_tile_state().hard_memory_limit_in_bytes, 6215 EXPECT_EQ(host_impl_->global_tile_state().hard_memory_limit_in_bytes,
6179 300u * 1024u * 1024u); 6216 300u * 1024u * 1024u);
6180 EXPECT_EQ(host_impl_->global_tile_state().soft_memory_limit_in_bytes, 6217 EXPECT_EQ(host_impl_->global_tile_state().soft_memory_limit_in_bytes,
6181 150u * 1024u * 1024u); 6218 150u * 1024u * 1024u);
6182 EXPECT_EQ(host_impl_->global_tile_state().unused_memory_limit_in_bytes, 6219 EXPECT_EQ(host_impl_->global_tile_state().unused_memory_limit_in_bytes,
6183 75u * 1024u * 1024u); 6220 75u * 1024u * 1024u);
6184 } 6221 }
6185 6222
6186 } // namespace 6223 } // namespace
6187 } // namespace cc 6224 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698