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

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

Issue 645853008: Standardize usage of virtual/override/final in cc/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Formatted Created 6 years, 2 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "base/message_loop/message_loop_proxy.h" 5 #include "base/message_loop/message_loop_proxy.h"
6 #include "base/threading/simple_thread.h" 6 #include "base/threading/simple_thread.h"
7 #include "cc/layers/delegated_frame_provider.h" 7 #include "cc/layers/delegated_frame_provider.h"
8 #include "cc/layers/delegated_frame_resource_collection.h" 8 #include "cc/layers/delegated_frame_resource_collection.h"
9 #include "cc/layers/delegated_renderer_layer.h" 9 #include "cc/layers/delegated_renderer_layer.h"
10 #include "cc/layers/layer.h" 10 #include "cc/layers/layer.h"
(...skipping 10 matching lines...) Expand all
21 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
22 #include "third_party/skia/include/core/SkColor.h" 22 #include "third_party/skia/include/core/SkColor.h"
23 #include "ui/gfx/frame_time.h" 23 #include "ui/gfx/frame_time.h"
24 24
25 namespace cc { 25 namespace cc {
26 namespace { 26 namespace {
27 27
28 class NoMessageLoopOutputSurface : public OutputSurface { 28 class NoMessageLoopOutputSurface : public OutputSurface {
29 public: 29 public:
30 NoMessageLoopOutputSurface() : OutputSurface(TestContextProvider::Create()) {} 30 NoMessageLoopOutputSurface() : OutputSurface(TestContextProvider::Create()) {}
31 virtual ~NoMessageLoopOutputSurface() {} 31 ~NoMessageLoopOutputSurface() override {}
32 32
33 // OutputSurface overrides. 33 // OutputSurface overrides.
34 virtual void SwapBuffers(CompositorFrame* frame) override { 34 void SwapBuffers(CompositorFrame* frame) override {
35 DCHECK(client_); 35 DCHECK(client_);
36 client_->DidSwapBuffers(); 36 client_->DidSwapBuffers();
37 client_->DidSwapBuffersComplete(); 37 client_->DidSwapBuffersComplete();
38 } 38 }
39 }; 39 };
40 40
41 class LayerTreeHostNoMessageLoopTest 41 class LayerTreeHostNoMessageLoopTest
42 : public testing::Test, 42 : public testing::Test,
43 public base::DelegateSimpleThread::Delegate, 43 public base::DelegateSimpleThread::Delegate,
44 public LayerTreeHostClient, 44 public LayerTreeHostClient,
45 public LayerTreeHostSingleThreadClient { 45 public LayerTreeHostSingleThreadClient {
46 public: 46 public:
47 LayerTreeHostNoMessageLoopTest() 47 LayerTreeHostNoMessageLoopTest()
48 : did_initialize_output_surface_(false), 48 : did_initialize_output_surface_(false),
49 did_commit_(false), 49 did_commit_(false),
50 did_commit_and_draw_frame_(false), 50 did_commit_and_draw_frame_(false),
51 size_(100, 100), 51 size_(100, 100),
52 no_loop_thread_(this, "LayerTreeHostNoMessageLoopTest") {} 52 no_loop_thread_(this, "LayerTreeHostNoMessageLoopTest") {}
53 virtual ~LayerTreeHostNoMessageLoopTest() {} 53 virtual ~LayerTreeHostNoMessageLoopTest() {}
54 54
55 // LayerTreeHostClient overrides. 55 // LayerTreeHostClient overrides.
56 virtual void WillBeginMainFrame(int frame_id) override {} 56 void WillBeginMainFrame(int frame_id) override {}
57 virtual void BeginMainFrame(const BeginFrameArgs& args) override {} 57 void BeginMainFrame(const BeginFrameArgs& args) override {}
58 virtual void DidBeginMainFrame() override {} 58 void DidBeginMainFrame() override {}
59 virtual void Layout() override {} 59 void Layout() override {}
60 virtual void ApplyViewportDeltas(const gfx::Vector2d& inner_delta, 60 void ApplyViewportDeltas(const gfx::Vector2d& inner_delta,
61 const gfx::Vector2d& outer_delta, 61 const gfx::Vector2d& outer_delta,
62 float page_scale, 62 float page_scale,
63 float top_controls_delta) override {} 63 float top_controls_delta) override {}
64 virtual void ApplyViewportDeltas(const gfx::Vector2d& scroll_delta, 64 void ApplyViewportDeltas(const gfx::Vector2d& scroll_delta,
65 float page_scale, 65 float page_scale,
66 float top_controls_delta) override {} 66 float top_controls_delta) override {}
67 virtual void RequestNewOutputSurface(bool fallback) override { 67 void RequestNewOutputSurface(bool fallback) override {
68 layer_tree_host_->SetOutputSurface( 68 layer_tree_host_->SetOutputSurface(
69 make_scoped_ptr<OutputSurface>(new NoMessageLoopOutputSurface)); 69 make_scoped_ptr<OutputSurface>(new NoMessageLoopOutputSurface));
70 } 70 }
71 virtual void DidInitializeOutputSurface() override { 71 void DidInitializeOutputSurface() override {
72 did_initialize_output_surface_ = true; 72 did_initialize_output_surface_ = true;
73 } 73 }
74 virtual void WillCommit() override {} 74 void WillCommit() override {}
75 virtual void DidCommit() override { did_commit_ = true; } 75 void DidCommit() override { did_commit_ = true; }
76 virtual void DidCommitAndDrawFrame() override { 76 void DidCommitAndDrawFrame() override { did_commit_and_draw_frame_ = true; }
77 did_commit_and_draw_frame_ = true; 77 void DidCompleteSwapBuffers() override {}
78 }
79 virtual void DidCompleteSwapBuffers() override {}
80 78
81 // LayerTreeHostSingleThreadClient overrides. 79 // LayerTreeHostSingleThreadClient overrides.
82 virtual void DidPostSwapBuffers() override {} 80 void DidPostSwapBuffers() override {}
83 virtual void DidAbortSwapBuffers() override {} 81 void DidAbortSwapBuffers() override {}
84 82
85 void RunTest() { 83 void RunTest() {
86 no_loop_thread_.Start(); 84 no_loop_thread_.Start();
87 no_loop_thread_.Join(); 85 no_loop_thread_.Join();
88 } 86 }
89 87
90 // base::DelegateSimpleThread::Delegate override. 88 // base::DelegateSimpleThread::Delegate override.
91 virtual void Run() override { 89 void Run() override {
92 ASSERT_FALSE(base::MessageLoopProxy::current().get()); 90 ASSERT_FALSE(base::MessageLoopProxy::current().get());
93 RunTestWithoutMessageLoop(); 91 RunTestWithoutMessageLoop();
94 EXPECT_FALSE(base::MessageLoopProxy::current().get()); 92 EXPECT_FALSE(base::MessageLoopProxy::current().get());
95 } 93 }
96 94
97 protected: 95 protected:
98 virtual void RunTestWithoutMessageLoop() = 0; 96 virtual void RunTestWithoutMessageLoop() = 0;
99 97
100 void SetupLayerTreeHost() { 98 void SetupLayerTreeHost() {
101 LayerTreeSettings settings; 99 LayerTreeSettings settings;
(...skipping 28 matching lines...) Expand all
130 bool did_commit_and_draw_frame_; 128 bool did_commit_and_draw_frame_;
131 gfx::Size size_; 129 gfx::Size size_;
132 130
133 private: 131 private:
134 base::DelegateSimpleThread no_loop_thread_; 132 base::DelegateSimpleThread no_loop_thread_;
135 }; 133 };
136 134
137 class LayerTreeHostNoMessageLoopSmokeTest 135 class LayerTreeHostNoMessageLoopSmokeTest
138 : public LayerTreeHostNoMessageLoopTest { 136 : public LayerTreeHostNoMessageLoopTest {
139 protected: 137 protected:
140 virtual void RunTestWithoutMessageLoop() override { 138 void RunTestWithoutMessageLoop() override {
141 gfx::Size size(100, 100); 139 gfx::Size size(100, 100);
142 140
143 // Set up root layer. 141 // Set up root layer.
144 { 142 {
145 scoped_refptr<SolidColorLayer> solid_color_layer = 143 scoped_refptr<SolidColorLayer> solid_color_layer =
146 SolidColorLayer::Create(); 144 SolidColorLayer::Create();
147 solid_color_layer->SetBackgroundColor(SK_ColorRED); 145 solid_color_layer->SetBackgroundColor(SK_ColorRED);
148 solid_color_layer->SetBounds(size_); 146 solid_color_layer->SetBounds(size_);
149 solid_color_layer->SetIsDrawable(true); 147 solid_color_layer->SetIsDrawable(true);
150 root_layer_ = solid_color_layer; 148 root_layer_ = solid_color_layer;
151 } 149 }
152 150
153 SetupLayerTreeHost(); 151 SetupLayerTreeHost();
154 Composite(); 152 Composite();
155 TearDownLayerTreeHost(); 153 TearDownLayerTreeHost();
156 } 154 }
157 }; 155 };
158 156
159 TEST_F(LayerTreeHostNoMessageLoopSmokeTest, SmokeTest) { 157 TEST_F(LayerTreeHostNoMessageLoopSmokeTest, SmokeTest) {
160 RunTest(); 158 RunTest();
161 } 159 }
162 160
163 class LayerTreeHostNoMessageLoopDelegatedLayer 161 class LayerTreeHostNoMessageLoopDelegatedLayer
164 : public LayerTreeHostNoMessageLoopTest, 162 : public LayerTreeHostNoMessageLoopTest,
165 public DelegatedFrameResourceCollectionClient { 163 public DelegatedFrameResourceCollectionClient {
166 protected: 164 protected:
167 virtual void RunTestWithoutMessageLoop() override { 165 void RunTestWithoutMessageLoop() override {
168 resource_collection_ = new DelegatedFrameResourceCollection; 166 resource_collection_ = new DelegatedFrameResourceCollection;
169 frame_provider_ = new DelegatedFrameProvider( 167 frame_provider_ = new DelegatedFrameProvider(
170 resource_collection_.get(), CreateFrameDataWithResource(998)); 168 resource_collection_.get(), CreateFrameDataWithResource(998));
171 169
172 root_layer_ = Layer::Create(); 170 root_layer_ = Layer::Create();
173 delegated_layer_ = 171 delegated_layer_ =
174 FakeDelegatedRendererLayer::Create(frame_provider_.get()); 172 FakeDelegatedRendererLayer::Create(frame_provider_.get());
175 delegated_layer_->SetBounds(size_); 173 delegated_layer_->SetBounds(size_);
176 delegated_layer_->SetIsDrawable(true); 174 delegated_layer_->SetIsDrawable(true);
177 root_layer_->AddChild(delegated_layer_); 175 root_layer_->AddChild(delegated_layer_);
(...skipping 13 matching lines...) Expand all
191 TearDownLayerTreeHost(); 189 TearDownLayerTreeHost();
192 delegated_layer_ = NULL; 190 delegated_layer_ = NULL;
193 frame_provider_ = NULL; 191 frame_provider_ = NULL;
194 192
195 // Resource from second frame should be returned. 193 // Resource from second frame should be returned.
196 CheckReturnedResource(1u); 194 CheckReturnedResource(1u);
197 resource_collection_ = NULL; 195 resource_collection_ = NULL;
198 } 196 }
199 197
200 // DelegatedFrameResourceCollectionClient overrides. 198 // DelegatedFrameResourceCollectionClient overrides.
201 virtual void UnusedResourcesAreAvailable() override {} 199 void UnusedResourcesAreAvailable() override {}
202 200
203 private: 201 private:
204 scoped_ptr<DelegatedFrameData> CreateFrameDataWithResource( 202 scoped_ptr<DelegatedFrameData> CreateFrameDataWithResource(
205 ResourceProvider::ResourceId resource_id) { 203 ResourceProvider::ResourceId resource_id) {
206 scoped_ptr<DelegatedFrameData> frame(new DelegatedFrameData); 204 scoped_ptr<DelegatedFrameData> frame(new DelegatedFrameData);
207 gfx::Rect frame_rect(size_); 205 gfx::Rect frame_rect(size_);
208 206
209 scoped_ptr<RenderPass> root_pass(RenderPass::Create()); 207 scoped_ptr<RenderPass> root_pass(RenderPass::Create());
210 root_pass->SetNew( 208 root_pass->SetNew(
211 RenderPassId(1, 1), frame_rect, frame_rect, gfx::Transform()); 209 RenderPassId(1, 1), frame_rect, frame_rect, gfx::Transform());
(...skipping 19 matching lines...) Expand all
231 scoped_refptr<DelegatedFrameProvider> frame_provider_; 229 scoped_refptr<DelegatedFrameProvider> frame_provider_;
232 scoped_refptr<DelegatedRendererLayer> delegated_layer_; 230 scoped_refptr<DelegatedRendererLayer> delegated_layer_;
233 }; 231 };
234 232
235 TEST_F(LayerTreeHostNoMessageLoopDelegatedLayer, SingleDelegatedLayer) { 233 TEST_F(LayerTreeHostNoMessageLoopDelegatedLayer, SingleDelegatedLayer) {
236 RunTest(); 234 RunTest();
237 } 235 }
238 236
239 } // namespace 237 } // namespace
240 } // namespace cc 238 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_unittest_delegated.cc ('k') | cc/trees/layer_tree_host_unittest_occlusion.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698