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

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

Issue 1336733002: Re-land: cc: Implement shared worker contexts. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix LayerTreeHostClientTakeAwayOutputSurface test. Content provider is always destroyed on the clie… Created 5 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/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_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 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 <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 void set_reduce_memory_result(bool reduce_memory_result) { 161 void set_reduce_memory_result(bool reduce_memory_result) {
162 reduce_memory_result_ = reduce_memory_result; 162 reduce_memory_result_ = reduce_memory_result;
163 } 163 }
164 164
165 virtual bool CreateHostImpl(const LayerTreeSettings& settings, 165 virtual bool CreateHostImpl(const LayerTreeSettings& settings,
166 scoped_ptr<OutputSurface> output_surface) { 166 scoped_ptr<OutputSurface> output_surface) {
167 host_impl_ = LayerTreeHostImpl::Create( 167 host_impl_ = LayerTreeHostImpl::Create(
168 settings, this, &proxy_, &stats_instrumentation_, 168 settings, this, &proxy_, &stats_instrumentation_,
169 &shared_bitmap_manager_, &gpu_memory_buffer_manager_, 169 &shared_bitmap_manager_, &gpu_memory_buffer_manager_,
170 &task_graph_runner_, 0); 170 &task_graph_runner_, 0);
171 bool init = host_impl_->InitializeRenderer(output_surface.Pass()); 171 output_surface_ = output_surface.Pass();
172 bool init = host_impl_->InitializeRenderer(output_surface_.get());
172 host_impl_->SetViewportSize(gfx::Size(10, 10)); 173 host_impl_->SetViewportSize(gfx::Size(10, 10));
173 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 1.f); 174 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 1.f);
174 // Set the BeginFrameArgs so that methods which use it are able to. 175 // Set the BeginFrameArgs so that methods which use it are able to.
175 host_impl_->WillBeginImplFrame(CreateBeginFrameArgsForTesting( 176 host_impl_->WillBeginImplFrame(CreateBeginFrameArgsForTesting(
176 BEGINFRAME_FROM_HERE, 177 BEGINFRAME_FROM_HERE,
177 base::TimeTicks() + base::TimeDelta::FromMilliseconds(1))); 178 base::TimeTicks() + base::TimeDelta::FromMilliseconds(1)));
178 host_impl_->DidFinishImplFrame(); 179 host_impl_->DidFinishImplFrame();
179 return init; 180 return init;
180 } 181 }
181 182
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 host_impl_->DidDrawAllLayers(frame_data); 414 host_impl_->DidDrawAllLayers(frame_data);
414 } 415 }
415 416
416 FakeProxy proxy_; 417 FakeProxy proxy_;
417 DebugScopedSetImplThread always_impl_thread_; 418 DebugScopedSetImplThread always_impl_thread_;
418 DebugScopedSetMainThreadBlocked always_main_thread_blocked_; 419 DebugScopedSetMainThreadBlocked always_main_thread_blocked_;
419 420
420 TestSharedBitmapManager shared_bitmap_manager_; 421 TestSharedBitmapManager shared_bitmap_manager_;
421 TestGpuMemoryBufferManager gpu_memory_buffer_manager_; 422 TestGpuMemoryBufferManager gpu_memory_buffer_manager_;
422 TestTaskGraphRunner task_graph_runner_; 423 TestTaskGraphRunner task_graph_runner_;
424 scoped_ptr<OutputSurface> output_surface_;
423 scoped_ptr<LayerTreeHostImpl> host_impl_; 425 scoped_ptr<LayerTreeHostImpl> host_impl_;
424 FakeRenderingStatsInstrumentation stats_instrumentation_; 426 FakeRenderingStatsInstrumentation stats_instrumentation_;
425 bool on_can_draw_state_changed_called_; 427 bool on_can_draw_state_changed_called_;
426 bool did_notify_ready_to_activate_; 428 bool did_notify_ready_to_activate_;
427 bool did_request_commit_; 429 bool did_request_commit_;
428 bool did_request_redraw_; 430 bool did_request_redraw_;
429 bool did_request_animate_; 431 bool did_request_animate_;
430 bool did_request_prepare_tiles_; 432 bool did_request_prepare_tiles_;
431 bool did_complete_page_scale_animation_; 433 bool did_complete_page_scale_animation_;
432 bool reduce_memory_result_; 434 bool reduce_memory_result_;
(...skipping 1677 matching lines...) Expand 10 before | Expand all | Expand 10 after
2110 class LayerTreeHostImplTestScrollbarAnimation : public LayerTreeHostImplTest { 2112 class LayerTreeHostImplTestScrollbarAnimation : public LayerTreeHostImplTest {
2111 protected: 2113 protected:
2112 void SetupLayers(LayerTreeSettings settings) { 2114 void SetupLayers(LayerTreeSettings settings) {
2113 gfx::Size content_size(100, 100); 2115 gfx::Size content_size(100, 100);
2114 2116
2115 LayerTreeHostImplOverridePhysicalTime* host_impl_override_time = 2117 LayerTreeHostImplOverridePhysicalTime* host_impl_override_time =
2116 new LayerTreeHostImplOverridePhysicalTime( 2118 new LayerTreeHostImplOverridePhysicalTime(
2117 settings, this, &proxy_, &shared_bitmap_manager_, 2119 settings, this, &proxy_, &shared_bitmap_manager_,
2118 &task_graph_runner_, &stats_instrumentation_); 2120 &task_graph_runner_, &stats_instrumentation_);
2119 host_impl_ = make_scoped_ptr(host_impl_override_time); 2121 host_impl_ = make_scoped_ptr(host_impl_override_time);
2120 host_impl_->InitializeRenderer(CreateOutputSurface()); 2122 output_surface_ = CreateOutputSurface();
2123 host_impl_->InitializeRenderer(output_surface_.get());
2121 2124
2122 SetupScrollAndContentsLayers(content_size); 2125 SetupScrollAndContentsLayers(content_size);
2123 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 4.f); 2126 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 4.f);
2124 host_impl_->SetViewportSize( 2127 host_impl_->SetViewportSize(
2125 gfx::Size(content_size.width() / 2, content_size.height() / 2)); 2128 gfx::Size(content_size.width() / 2, content_size.height() / 2));
2126 2129
2127 scoped_ptr<SolidColorScrollbarLayerImpl> scrollbar = 2130 scoped_ptr<SolidColorScrollbarLayerImpl> scrollbar =
2128 SolidColorScrollbarLayerImpl::Create(host_impl_->active_tree(), 400, 2131 SolidColorScrollbarLayerImpl::Create(host_impl_->active_tree(), 400,
2129 VERTICAL, 10, 0, false, true); 2132 VERTICAL, 10, 0, false, true);
2130 EXPECT_FLOAT_EQ(0.f, scrollbar->opacity()); 2133 EXPECT_FLOAT_EQ(0.f, scrollbar->opacity());
(...skipping 3531 matching lines...) Expand 10 before | Expand all | Expand 10 after
5662 FakeOutputSurface* fake_output_surface = output_surface.get(); 5665 FakeOutputSurface* fake_output_surface = output_surface.get();
5663 5666
5664 // This test creates its own LayerTreeHostImpl, so 5667 // This test creates its own LayerTreeHostImpl, so
5665 // that we can force partial swap enabled. 5668 // that we can force partial swap enabled.
5666 LayerTreeSettings settings; 5669 LayerTreeSettings settings;
5667 settings.renderer_settings.partial_swap_enabled = true; 5670 settings.renderer_settings.partial_swap_enabled = true;
5668 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl = 5671 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl =
5669 LayerTreeHostImpl::Create( 5672 LayerTreeHostImpl::Create(
5670 settings, this, &proxy_, &stats_instrumentation_, 5673 settings, this, &proxy_, &stats_instrumentation_,
5671 &shared_bitmap_manager_, NULL, &task_graph_runner_, 0); 5674 &shared_bitmap_manager_, NULL, &task_graph_runner_, 0);
5672 layer_tree_host_impl->InitializeRenderer(output_surface.Pass()); 5675 layer_tree_host_impl->InitializeRenderer(output_surface.get());
5673 layer_tree_host_impl->WillBeginImplFrame( 5676 layer_tree_host_impl->WillBeginImplFrame(
5674 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE)); 5677 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
5675 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500)); 5678 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500));
5676 5679
5677 scoped_ptr<LayerImpl> root = 5680 scoped_ptr<LayerImpl> root =
5678 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1); 5681 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1);
5679 root->SetHasRenderSurface(true); 5682 root->SetHasRenderSurface(true);
5680 scoped_ptr<LayerImpl> child = 5683 scoped_ptr<LayerImpl> child =
5681 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 2); 5684 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 2);
5682 child->SetPosition(gfx::PointF(12.f, 13.f)); 5685 child->SetPosition(gfx::PointF(12.f, 13.f));
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
5939 } 5942 }
5940 Mock::VerifyAndClearExpectations(&mock_context); 5943 Mock::VerifyAndClearExpectations(&mock_context);
5941 } 5944 }
5942 5945
5943 static scoped_ptr<LayerTreeHostImpl> SetupLayersForOpacity( 5946 static scoped_ptr<LayerTreeHostImpl> SetupLayersForOpacity(
5944 bool partial_swap, 5947 bool partial_swap,
5945 LayerTreeHostImplClient* client, 5948 LayerTreeHostImplClient* client,
5946 Proxy* proxy, 5949 Proxy* proxy,
5947 SharedBitmapManager* manager, 5950 SharedBitmapManager* manager,
5948 TaskGraphRunner* task_graph_runner, 5951 TaskGraphRunner* task_graph_runner,
5949 RenderingStatsInstrumentation* stats_instrumentation) { 5952 RenderingStatsInstrumentation* stats_instrumentation,
5950 scoped_refptr<TestContextProvider> provider(TestContextProvider::Create()); 5953 OutputSurface* output_surface) {
5951 scoped_ptr<OutputSurface> output_surface(
5952 FakeOutputSurface::Create3d(provider));
5953 provider->BindToCurrentThread();
5954 provider->TestContext3d()->set_have_post_sub_buffer(true);
5955
5956 LayerTreeSettings settings; 5954 LayerTreeSettings settings;
5957 settings.renderer_settings.partial_swap_enabled = partial_swap; 5955 settings.renderer_settings.partial_swap_enabled = partial_swap;
5958 scoped_ptr<LayerTreeHostImpl> my_host_impl = 5956 scoped_ptr<LayerTreeHostImpl> my_host_impl =
5959 LayerTreeHostImpl::Create(settings, client, proxy, stats_instrumentation, 5957 LayerTreeHostImpl::Create(settings, client, proxy, stats_instrumentation,
5960 manager, nullptr, task_graph_runner, 0); 5958 manager, nullptr, task_graph_runner, 0);
5961 my_host_impl->InitializeRenderer(output_surface.Pass()); 5959 my_host_impl->InitializeRenderer(output_surface);
5962 my_host_impl->WillBeginImplFrame( 5960 my_host_impl->WillBeginImplFrame(
5963 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE)); 5961 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
5964 my_host_impl->SetViewportSize(gfx::Size(100, 100)); 5962 my_host_impl->SetViewportSize(gfx::Size(100, 100));
5965 5963
5966 /* 5964 /*
5967 Layers are created as follows: 5965 Layers are created as follows:
5968 5966
5969 +--------------------+ 5967 +--------------------+
5970 | 1 | 5968 | 1 |
5971 | +-----------+ | 5969 | +-----------+ |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
6014 child->AddChild(grand_child.Pass()); 6012 child->AddChild(grand_child.Pass());
6015 root->AddChild(child.Pass()); 6013 root->AddChild(child.Pass());
6016 6014
6017 my_host_impl->active_tree()->SetRootLayer(root.Pass()); 6015 my_host_impl->active_tree()->SetRootLayer(root.Pass());
6018 return my_host_impl.Pass(); 6016 return my_host_impl.Pass();
6019 } 6017 }
6020 6018
6021 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorPartialSwap) { 6019 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorPartialSwap) {
6022 TestSharedBitmapManager shared_bitmap_manager; 6020 TestSharedBitmapManager shared_bitmap_manager;
6023 TestTaskGraphRunner task_graph_runner; 6021 TestTaskGraphRunner task_graph_runner;
6024 scoped_ptr<LayerTreeHostImpl> my_host_impl = 6022 scoped_refptr<TestContextProvider> provider(TestContextProvider::Create());
6025 SetupLayersForOpacity(true, this, &proxy_, &shared_bitmap_manager, 6023 provider->BindToCurrentThread();
6026 &task_graph_runner, &stats_instrumentation_); 6024 provider->TestContext3d()->set_have_post_sub_buffer(true);
6025 scoped_ptr<OutputSurface> output_surface(
6026 FakeOutputSurface::Create3d(provider));
6027 scoped_ptr<LayerTreeHostImpl> my_host_impl = SetupLayersForOpacity(
6028 true, this, &proxy_, &shared_bitmap_manager, &task_graph_runner,
6029 &stats_instrumentation_, output_surface.get());
6027 { 6030 {
6028 LayerTreeHostImpl::FrameData frame; 6031 LayerTreeHostImpl::FrameData frame;
6029 EXPECT_EQ(DRAW_SUCCESS, my_host_impl->PrepareToDraw(&frame)); 6032 EXPECT_EQ(DRAW_SUCCESS, my_host_impl->PrepareToDraw(&frame));
6030 6033
6031 // Verify all quads have been computed 6034 // Verify all quads have been computed
6032 ASSERT_EQ(2U, frame.render_passes.size()); 6035 ASSERT_EQ(2U, frame.render_passes.size());
6033 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size()); 6036 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
6034 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size()); 6037 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
6035 EXPECT_EQ(DrawQuad::SOLID_COLOR, 6038 EXPECT_EQ(DrawQuad::SOLID_COLOR,
6036 frame.render_passes[0]->quad_list.front()->material); 6039 frame.render_passes[0]->quad_list.front()->material);
6037 EXPECT_EQ(DrawQuad::RENDER_PASS, 6040 EXPECT_EQ(DrawQuad::RENDER_PASS,
6038 frame.render_passes[1]->quad_list.front()->material); 6041 frame.render_passes[1]->quad_list.front()->material);
6039 6042
6040 my_host_impl->DrawLayers(&frame); 6043 my_host_impl->DrawLayers(&frame);
6041 my_host_impl->DidDrawAllLayers(frame); 6044 my_host_impl->DidDrawAllLayers(frame);
6042 } 6045 }
6043 } 6046 }
6044 6047
6045 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorNoPartialSwap) { 6048 TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorNoPartialSwap) {
6046 TestSharedBitmapManager shared_bitmap_manager; 6049 TestSharedBitmapManager shared_bitmap_manager;
6047 TestTaskGraphRunner task_graph_runner; 6050 TestTaskGraphRunner task_graph_runner;
6048 scoped_ptr<LayerTreeHostImpl> my_host_impl = 6051 scoped_refptr<TestContextProvider> provider(TestContextProvider::Create());
6049 SetupLayersForOpacity(false, this, &proxy_, &shared_bitmap_manager, 6052 provider->BindToCurrentThread();
6050 &task_graph_runner, &stats_instrumentation_); 6053 provider->TestContext3d()->set_have_post_sub_buffer(true);
6054 scoped_ptr<OutputSurface> output_surface(
6055 FakeOutputSurface::Create3d(provider));
6056 scoped_ptr<LayerTreeHostImpl> my_host_impl = SetupLayersForOpacity(
6057 false, this, &proxy_, &shared_bitmap_manager, &task_graph_runner,
6058 &stats_instrumentation_, output_surface.get());
6051 { 6059 {
6052 LayerTreeHostImpl::FrameData frame; 6060 LayerTreeHostImpl::FrameData frame;
6053 EXPECT_EQ(DRAW_SUCCESS, my_host_impl->PrepareToDraw(&frame)); 6061 EXPECT_EQ(DRAW_SUCCESS, my_host_impl->PrepareToDraw(&frame));
6054 6062
6055 // Verify all quads have been computed 6063 // Verify all quads have been computed
6056 ASSERT_EQ(2U, frame.render_passes.size()); 6064 ASSERT_EQ(2U, frame.render_passes.size());
6057 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size()); 6065 ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
6058 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size()); 6066 ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
6059 EXPECT_EQ(DrawQuad::SOLID_COLOR, 6067 EXPECT_EQ(DrawQuad::SOLID_COLOR,
6060 frame.render_passes[0]->quad_list.front()->material); 6068 frame.render_passes[0]->quad_list.front()->material);
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
6459 } 6467 }
6460 6468
6461 // Checks that we have a non-0 default allocation if we pass a context that 6469 // Checks that we have a non-0 default allocation if we pass a context that
6462 // doesn't support memory management extensions. 6470 // doesn't support memory management extensions.
6463 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) { 6471 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) {
6464 LayerTreeSettings settings; 6472 LayerTreeSettings settings;
6465 host_impl_ = LayerTreeHostImpl::Create( 6473 host_impl_ = LayerTreeHostImpl::Create(
6466 settings, this, &proxy_, &stats_instrumentation_, &shared_bitmap_manager_, 6474 settings, this, &proxy_, &stats_instrumentation_, &shared_bitmap_manager_,
6467 &gpu_memory_buffer_manager_, &task_graph_runner_, 0); 6475 &gpu_memory_buffer_manager_, &task_graph_runner_, 0);
6468 6476
6469 scoped_ptr<OutputSurface> output_surface( 6477 output_surface_ =
6470 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create())); 6478 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create());
6471 host_impl_->InitializeRenderer(output_surface.Pass()); 6479 host_impl_->InitializeRenderer(output_surface_.get());
6472 EXPECT_LT(0ul, host_impl_->memory_allocation_limit_bytes()); 6480 EXPECT_LT(0ul, host_impl_->memory_allocation_limit_bytes());
6473 } 6481 }
6474 6482
6475 TEST_F(LayerTreeHostImplTest, RequireHighResWhenVisible) { 6483 TEST_F(LayerTreeHostImplTest, RequireHighResWhenVisible) {
6476 ASSERT_TRUE(host_impl_->active_tree()); 6484 ASSERT_TRUE(host_impl_->active_tree());
6477 6485
6478 // RequiresHighResToDraw is set when new output surface is used. 6486 // RequiresHighResToDraw is set when new output surface is used.
6479 EXPECT_TRUE(host_impl_->RequiresHighResToDraw()); 6487 EXPECT_TRUE(host_impl_->RequiresHighResToDraw());
6480 6488
6481 host_impl_->ResetRequiresHighResToDraw(); 6489 host_impl_->ResetRequiresHighResToDraw();
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
6522 EXPECT_TRUE(host_impl_->RequiresHighResToDraw()); 6530 EXPECT_TRUE(host_impl_->RequiresHighResToDraw());
6523 } 6531 }
6524 6532
6525 class LayerTreeHostImplTestPrepareTiles : public LayerTreeHostImplTest { 6533 class LayerTreeHostImplTestPrepareTiles : public LayerTreeHostImplTest {
6526 public: 6534 public:
6527 void SetUp() override { 6535 void SetUp() override {
6528 fake_host_impl_ = 6536 fake_host_impl_ =
6529 new FakeLayerTreeHostImpl(LayerTreeSettings(), &proxy_, 6537 new FakeLayerTreeHostImpl(LayerTreeSettings(), &proxy_,
6530 &shared_bitmap_manager_, &task_graph_runner_); 6538 &shared_bitmap_manager_, &task_graph_runner_);
6531 host_impl_.reset(fake_host_impl_); 6539 host_impl_.reset(fake_host_impl_);
6532 host_impl_->InitializeRenderer(CreateOutputSurface()); 6540 output_surface_ = CreateOutputSurface();
6541 host_impl_->InitializeRenderer(output_surface_.get());
6533 host_impl_->SetViewportSize(gfx::Size(10, 10)); 6542 host_impl_->SetViewportSize(gfx::Size(10, 10));
6534 } 6543 }
6535 6544
6536 FakeLayerTreeHostImpl* fake_host_impl_; 6545 FakeLayerTreeHostImpl* fake_host_impl_;
6537 }; 6546 };
6538 6547
6539 TEST_F(LayerTreeHostImplTestPrepareTiles, PrepareTilesWhenInvisible) { 6548 TEST_F(LayerTreeHostImplTestPrepareTiles, PrepareTilesWhenInvisible) {
6540 fake_host_impl_->DidModifyTilePriorities(); 6549 fake_host_impl_->DidModifyTilePriorities();
6541 EXPECT_TRUE(fake_host_impl_->prepare_tiles_needed()); 6550 EXPECT_TRUE(fake_host_impl_->prepare_tiles_needed());
6542 fake_host_impl_->SetVisible(false); 6551 fake_host_impl_->SetVisible(false);
(...skipping 1972 matching lines...) Expand 10 before | Expand all | Expand 10 after
8515 EXPECT_EQ(GpuRasterizationStatus::ON_FORCED, 8524 EXPECT_EQ(GpuRasterizationStatus::ON_FORCED,
8516 host_impl_->gpu_rasterization_status()); 8525 host_impl_->gpu_rasterization_status());
8517 EXPECT_TRUE(host_impl_->use_gpu_rasterization()); 8526 EXPECT_TRUE(host_impl_->use_gpu_rasterization());
8518 } 8527 }
8519 8528
8520 // A mock output surface which lets us detect calls to ForceReclaimResources. 8529 // A mock output surface which lets us detect calls to ForceReclaimResources.
8521 class MockReclaimResourcesOutputSurface : public FakeOutputSurface { 8530 class MockReclaimResourcesOutputSurface : public FakeOutputSurface {
8522 public: 8531 public:
8523 static scoped_ptr<MockReclaimResourcesOutputSurface> Create3d() { 8532 static scoped_ptr<MockReclaimResourcesOutputSurface> Create3d() {
8524 return make_scoped_ptr(new MockReclaimResourcesOutputSurface( 8533 return make_scoped_ptr(new MockReclaimResourcesOutputSurface(
8525 TestContextProvider::Create(), TestContextProvider::Create(), false)); 8534 TestContextProvider::Create(), TestContextProvider::CreateWorker(),
8535 false));
8526 } 8536 }
8527 8537
8528 MOCK_METHOD0(ForceReclaimResources, void()); 8538 MOCK_METHOD0(ForceReclaimResources, void());
8529 8539
8530 protected: 8540 protected:
8531 MockReclaimResourcesOutputSurface( 8541 MockReclaimResourcesOutputSurface(
8532 scoped_refptr<ContextProvider> context_provider, 8542 scoped_refptr<ContextProvider> context_provider,
8533 scoped_refptr<ContextProvider> worker_context_provider, 8543 scoped_refptr<ContextProvider> worker_context_provider,
8534 bool delegated_rendering) 8544 bool delegated_rendering)
8535 : FakeOutputSurface(context_provider, 8545 : FakeOutputSurface(context_provider,
(...skipping 11 matching lines...) Expand all
8547 // Hold an unowned pointer to the output surface to use for mock expectations. 8557 // Hold an unowned pointer to the output surface to use for mock expectations.
8548 MockReclaimResourcesOutputSurface* mock_output_surface = output_surface.get(); 8558 MockReclaimResourcesOutputSurface* mock_output_surface = output_surface.get();
8549 8559
8550 CreateHostImpl(DefaultSettings(), output_surface.Pass()); 8560 CreateHostImpl(DefaultSettings(), output_surface.Pass());
8551 EXPECT_CALL(*mock_output_surface, ForceReclaimResources()).Times(1); 8561 EXPECT_CALL(*mock_output_surface, ForceReclaimResources()).Times(1);
8552 host_impl_->BeginCommit(); 8562 host_impl_->BeginCommit();
8553 } 8563 }
8554 8564
8555 } // namespace 8565 } // namespace
8556 } // namespace cc 8566 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698