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

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

Issue 1063493002: cc: Remove all traces of synchronous GPU rasterization (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more deleted code Created 5 years, 8 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
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 6044 matching lines...) Expand 10 before | Expand all | Expand 10 after
6055 EndTest(); 6055 EndTest();
6056 return draw_result; 6056 return draw_result;
6057 } 6057 }
6058 void AfterTest() override {} 6058 void AfterTest() override {}
6059 6059
6060 FakeContentLayerClient client_; 6060 FakeContentLayerClient client_;
6061 }; 6061 };
6062 6062
6063 MULTI_THREAD_IMPL_TEST_F(RasterizeWithGpuRasterizationCreatesResources); 6063 MULTI_THREAD_IMPL_TEST_F(RasterizeWithGpuRasterizationCreatesResources);
6064 6064
6065 class SynchronousGpuRasterizationRasterizesVisibleOnly 6065 class GpuRasterizationRasterizesBorderTiles : public LayerTreeHostTest {
6066 : public LayerTreeHostTest {
6067 protected: 6066 protected:
6068 SynchronousGpuRasterizationRasterizesVisibleOnly() 6067 GpuRasterizationRasterizesBorderTiles() : viewport_size_(1024, 2048) {}
6069 : viewport_size_(1024, 2048) {}
6070 6068
6071 void InitializeSettings(LayerTreeSettings* settings) override { 6069 void InitializeSettings(LayerTreeSettings* settings) override {
6072 settings->impl_side_painting = true; 6070 settings->impl_side_painting = true;
6073 settings->gpu_rasterization_enabled = true; 6071 settings->gpu_rasterization_enabled = true;
6074 settings->gpu_rasterization_forced = true; 6072 settings->gpu_rasterization_forced = true;
6075 settings->threaded_gpu_rasterization_enabled = false;
6076 } 6073 }
6077 6074
6078 void SetupTree() override { 6075 void SetupTree() override {
6079 client_.set_fill_with_nonsolid_color(true);
6080
6081 scoped_ptr<FakePicturePile> pile(
6082 new FakePicturePile(ImplSidePaintingSettings().minimum_contents_scale,
6083 ImplSidePaintingSettings().default_tile_grid_size));
6084 scoped_refptr<FakePictureLayer> root =
6085 FakePictureLayer::CreateWithRecordingSource(&client_, pile.Pass());
6086 root->SetBounds(gfx::Size(viewport_size_.width(), 10000));
6087 root->SetContentsOpaque(true);
6088
6089 layer_tree_host()->SetRootLayer(root);
6090 LayerTreeHostTest::SetupTree();
6091 layer_tree_host()->SetViewportSize(viewport_size_);
6092 }
6093
6094 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
6095
6096 DrawResult PrepareToDrawOnThread(LayerTreeHostImpl* host_impl,
6097 LayerTreeHostImpl::FrameData* frame_data,
6098 DrawResult draw_result) override {
6099 EXPECT_EQ(4u, host_impl->resource_provider()->num_resources());
6100
6101 // Verify which tiles got resources using an eviction iterator, which has to
6102 // return all tiles that have resources.
6103 scoped_ptr<EvictionTilePriorityQueue> eviction_queue(
6104 host_impl->BuildEvictionQueue(SAME_PRIORITY_FOR_BOTH_TREES));
6105 int tile_count = 0;
6106 for (; !eviction_queue->IsEmpty(); eviction_queue->Pop()) {
6107 Tile* tile = eviction_queue->Top();
6108 // Ensure this tile is within the viewport.
6109 EXPECT_TRUE(tile->content_rect().Intersects(gfx::Rect(viewport_size_)));
6110 // Ensure that the tile is 1/4 of the viewport tall (plus padding).
6111 EXPECT_EQ(tile->content_rect().height(),
6112 (viewport_size_.height() / 4) + 2);
6113 ++tile_count;
6114 }
6115 EXPECT_EQ(4, tile_count);
6116 EndTest();
6117 return draw_result;
6118 }
6119
6120 void AfterTest() override {}
6121
6122 private:
6123 FakeContentLayerClient client_;
6124 gfx::Size viewport_size_;
6125 };
6126
6127 MULTI_THREAD_IMPL_TEST_F(SynchronousGpuRasterizationRasterizesVisibleOnly);
6128
6129 class ThreadedGpuRasterizationRasterizesBorderTiles : public LayerTreeHostTest {
6130 protected:
6131 ThreadedGpuRasterizationRasterizesBorderTiles()
6132 : viewport_size_(1024, 2048) {}
6133
6134 void InitializeSettings(LayerTreeSettings* settings) override {
6135 settings->impl_side_painting = true;
6136 settings->gpu_rasterization_enabled = true;
6137 settings->gpu_rasterization_forced = true;
6138 settings->threaded_gpu_rasterization_enabled = true;
6139 }
6140
6141 void SetupTree() override {
6142 client_.set_fill_with_nonsolid_color(true); 6076 client_.set_fill_with_nonsolid_color(true);
6143 6077
6144 scoped_ptr<FakePicturePile> pile( 6078 scoped_ptr<FakePicturePile> pile(
6145 new FakePicturePile(ImplSidePaintingSettings().minimum_contents_scale, 6079 new FakePicturePile(ImplSidePaintingSettings().minimum_contents_scale,
6146 ImplSidePaintingSettings().default_tile_grid_size)); 6080 ImplSidePaintingSettings().default_tile_grid_size));
6147 scoped_refptr<FakePictureLayer> root = 6081 scoped_refptr<FakePictureLayer> root =
6148 FakePictureLayer::CreateWithRecordingSource(&client_, pile.Pass()); 6082 FakePictureLayer::CreateWithRecordingSource(&client_, pile.Pass());
6149 root->SetBounds(gfx::Size(10000, 10000)); 6083 root->SetBounds(gfx::Size(10000, 10000));
6150 root->SetContentsOpaque(true); 6084 root->SetContentsOpaque(true);
6151 6085
(...skipping 12 matching lines...) Expand all
6164 return draw_result; 6098 return draw_result;
6165 } 6099 }
6166 6100
6167 void AfterTest() override {} 6101 void AfterTest() override {}
6168 6102
6169 private: 6103 private:
6170 FakeContentLayerClient client_; 6104 FakeContentLayerClient client_;
6171 gfx::Size viewport_size_; 6105 gfx::Size viewport_size_;
6172 }; 6106 };
6173 6107
6174 MULTI_THREAD_IMPL_TEST_F(ThreadedGpuRasterizationRasterizesBorderTiles); 6108 MULTI_THREAD_IMPL_TEST_F(GpuRasterizationRasterizesBorderTiles);
6175 6109
6176 class LayerTreeHostTestContinuousDrawWhenCreatingVisibleTiles 6110 class LayerTreeHostTestContinuousDrawWhenCreatingVisibleTiles
6177 : public LayerTreeHostTest { 6111 : public LayerTreeHostTest {
6178 protected: 6112 protected:
6179 LayerTreeHostTestContinuousDrawWhenCreatingVisibleTiles() 6113 LayerTreeHostTestContinuousDrawWhenCreatingVisibleTiles()
6180 : playback_allowed_event_(true, true) {} 6114 : playback_allowed_event_(true, true) {}
6181 6115
6182 void InitializeSettings(LayerTreeSettings* settings) override { 6116 void InitializeSettings(LayerTreeSettings* settings) override {
6183 settings->impl_side_painting = true; 6117 settings->impl_side_painting = true;
6184 } 6118 }
(...skipping 444 matching lines...) Expand 10 before | Expand all | Expand 10 after
6629 6563
6630 void AfterTest() override {} 6564 void AfterTest() override {}
6631 6565
6632 private: 6566 private:
6633 scoped_refptr<Layer> child_; 6567 scoped_refptr<Layer> child_;
6634 }; 6568 };
6635 6569
6636 SINGLE_AND_MULTI_THREAD_TEST_F(LayerPreserveRenderSurfaceFromOutputRequests); 6570 SINGLE_AND_MULTI_THREAD_TEST_F(LayerPreserveRenderSurfaceFromOutputRequests);
6637 6571
6638 } // namespace cc 6572 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698