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

Side by Side Diff: cc/output/overlay_unittest.cc

Issue 2254543003: cc: Delete the RendererClient class. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@setvisible-browser
Patch Set: deleterendererclient: rebase Created 4 years, 4 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/output/gl_renderer_unittest.cc ('k') | cc/output/renderer.h » ('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 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/memory/ptr_util.h" 9 #include "base/memory/ptr_util.h"
10 #include "cc/base/region.h" 10 #include "cc/base/region.h"
(...skipping 1216 matching lines...) Expand 10 before | Expand all | Expand 10 after
1227 &overlay_list, &ca_layer_list, 1227 &overlay_list, &ca_layer_list,
1228 &damage_rect); 1228 &damage_rect);
1229 EXPECT_EQ(gfx::Rect(), damage_rect); 1229 EXPECT_EQ(gfx::Rect(), damage_rect);
1230 EXPECT_EQ(0U, overlay_list.size()); 1230 EXPECT_EQ(0U, overlay_list.size());
1231 EXPECT_EQ(0U, ca_layer_list.size()); 1231 EXPECT_EQ(0U, ca_layer_list.size());
1232 EXPECT_EQ(0U, output_surface_->bind_framebuffer_count()); 1232 EXPECT_EQ(0U, output_surface_->bind_framebuffer_count());
1233 } 1233 }
1234 1234
1235 class OverlayInfoRendererGL : public GLRenderer { 1235 class OverlayInfoRendererGL : public GLRenderer {
1236 public: 1236 public:
1237 OverlayInfoRendererGL(RendererClient* client, 1237 OverlayInfoRendererGL(const RendererSettings* settings,
1238 const RendererSettings* settings,
1239 OutputSurface* output_surface, 1238 OutputSurface* output_surface,
1240 ResourceProvider* resource_provider) 1239 ResourceProvider* resource_provider)
1241 : GLRenderer(client, 1240 : GLRenderer(settings, output_surface, resource_provider, NULL, 0),
1242 settings,
1243 output_surface,
1244 resource_provider,
1245 NULL,
1246 0),
1247 expect_overlays_(false) {} 1241 expect_overlays_(false) {}
1248 1242
1249 MOCK_METHOD3(DoDrawQuad, 1243 MOCK_METHOD3(DoDrawQuad,
1250 void(DrawingFrame* frame, 1244 void(DrawingFrame* frame,
1251 const DrawQuad* quad, 1245 const DrawQuad* quad,
1252 const gfx::QuadF* draw_region)); 1246 const gfx::QuadF* draw_region));
1253 1247
1254 using GLRenderer::BeginDrawingFrame; 1248 using GLRenderer::BeginDrawingFrame;
1255 1249
1256 void FinishDrawingFrame(DrawingFrame* frame) override { 1250 void FinishDrawingFrame(DrawingFrame* frame) override {
1257 GLRenderer::FinishDrawingFrame(frame); 1251 GLRenderer::FinishDrawingFrame(frame);
1258 1252
1259 if (!expect_overlays_) { 1253 if (!expect_overlays_) {
1260 EXPECT_EQ(0U, frame->overlay_list.size()); 1254 EXPECT_EQ(0U, frame->overlay_list.size());
1261 return; 1255 return;
1262 } 1256 }
1263 1257
1264 ASSERT_EQ(2U, frame->overlay_list.size()); 1258 ASSERT_EQ(2U, frame->overlay_list.size());
1265 EXPECT_GE(frame->overlay_list.back().resource_id, 0U); 1259 EXPECT_GE(frame->overlay_list.back().resource_id, 0U);
1266 } 1260 }
1267 1261
1268 void set_expect_overlays(bool expect_overlays) { 1262 void set_expect_overlays(bool expect_overlays) {
1269 expect_overlays_ = expect_overlays; 1263 expect_overlays_ = expect_overlays;
1270 } 1264 }
1271 1265
1272 private: 1266 private:
1273 bool expect_overlays_; 1267 bool expect_overlays_;
1274 }; 1268 };
1275 1269
1276 class FakeRendererClient : public RendererClient {
1277 public:
1278 // RendererClient methods.
1279 void SetFullRootLayerDamage() override {}
1280 };
1281
1282 class MockOverlayScheduler { 1270 class MockOverlayScheduler {
1283 public: 1271 public:
1284 MOCK_METHOD5(Schedule, 1272 MOCK_METHOD5(Schedule,
1285 void(int plane_z_order, 1273 void(int plane_z_order,
1286 gfx::OverlayTransform plane_transform, 1274 gfx::OverlayTransform plane_transform,
1287 unsigned overlay_texture_id, 1275 unsigned overlay_texture_id,
1288 const gfx::Rect& display_bounds, 1276 const gfx::Rect& display_bounds,
1289 const gfx::RectF& uv_rect)); 1277 const gfx::RectF& uv_rect));
1290 }; 1278 };
1291 1279
1292 class GLRendererWithOverlaysTest : public testing::Test { 1280 class GLRendererWithOverlaysTest : public testing::Test {
1293 protected: 1281 protected:
1294 GLRendererWithOverlaysTest() { 1282 GLRendererWithOverlaysTest() {
1295 provider_ = TestContextProvider::Create(); 1283 provider_ = TestContextProvider::Create();
1296 output_surface_.reset(new OverlayOutputSurface(provider_)); 1284 output_surface_.reset(new OverlayOutputSurface(provider_));
1297 CHECK(output_surface_->BindToClient(&output_surface_client_)); 1285 CHECK(output_surface_->BindToClient(&output_surface_client_));
1298 resource_provider_ = 1286 resource_provider_ =
1299 FakeResourceProvider::Create(output_surface_.get(), nullptr); 1287 FakeResourceProvider::Create(output_surface_.get(), nullptr);
1300 1288
1301 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind( 1289 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind(
1302 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_))); 1290 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_)));
1303 } 1291 }
1304 1292
1305 void Init(bool use_validator) { 1293 void Init(bool use_validator) {
1306 if (use_validator) 1294 if (use_validator)
1307 output_surface_->SetOverlayCandidateValidator(new SingleOverlayValidator); 1295 output_surface_->SetOverlayCandidateValidator(new SingleOverlayValidator);
1308 1296
1309 renderer_ = base::WrapUnique(new OverlayInfoRendererGL( 1297 renderer_ = base::WrapUnique(new OverlayInfoRendererGL(
1310 &renderer_client_, &settings_, output_surface_.get(), 1298 &settings_, output_surface_.get(), resource_provider_.get()));
1311 resource_provider_.get()));
1312 renderer_->SetVisible(true); 1299 renderer_->SetVisible(true);
1313 } 1300 }
1314 1301
1315 void DrawFrame(RenderPassList* pass_list, const gfx::Rect& viewport_rect) { 1302 void DrawFrame(RenderPassList* pass_list, const gfx::Rect& viewport_rect) {
1316 renderer_->DrawFrame(pass_list, 1.f, gfx::ColorSpace(), viewport_rect, 1303 renderer_->DrawFrame(pass_list, 1.f, gfx::ColorSpace(), viewport_rect,
1317 viewport_rect); 1304 viewport_rect);
1318 } 1305 }
1319 void SwapBuffers() { 1306 void SwapBuffers() {
1320 renderer_->SwapBuffers(CompositorFrameMetadata()); 1307 renderer_->SwapBuffers(CompositorFrameMetadata());
1321 output_surface_->OnSwapBuffersComplete(); 1308 output_surface_->OnSwapBuffersComplete();
(...skipping 12 matching lines...) Expand all
1334 response.texture = lock.texture_id(); 1321 response.texture = lock.texture_id();
1335 response.in_use = false; 1322 response.in_use = false;
1336 gpu::TextureInUseResponses responses; 1323 gpu::TextureInUseResponses responses;
1337 responses.push_back(response); 1324 responses.push_back(response);
1338 renderer_->DidReceiveTextureInUseResponses(responses); 1325 renderer_->DidReceiveTextureInUseResponses(responses);
1339 } 1326 }
1340 1327
1341 RendererSettings settings_; 1328 RendererSettings settings_;
1342 FakeOutputSurfaceClient output_surface_client_; 1329 FakeOutputSurfaceClient output_surface_client_;
1343 std::unique_ptr<OverlayOutputSurface> output_surface_; 1330 std::unique_ptr<OverlayOutputSurface> output_surface_;
1344 FakeRendererClient renderer_client_;
1345 std::unique_ptr<ResourceProvider> resource_provider_; 1331 std::unique_ptr<ResourceProvider> resource_provider_;
1346 std::unique_ptr<OverlayInfoRendererGL> renderer_; 1332 std::unique_ptr<OverlayInfoRendererGL> renderer_;
1347 scoped_refptr<TestContextProvider> provider_; 1333 scoped_refptr<TestContextProvider> provider_;
1348 MockOverlayScheduler scheduler_; 1334 MockOverlayScheduler scheduler_;
1349 }; 1335 };
1350 1336
1351 TEST_F(GLRendererWithOverlaysTest, OverlayQuadNotDrawn) { 1337 TEST_F(GLRendererWithOverlaysTest, OverlayQuadNotDrawn) {
1352 bool use_validator = true; 1338 bool use_validator = true;
1353 Init(use_validator); 1339 Init(use_validator);
1354 renderer_->set_expect_overlays(true); 1340 renderer_->set_expect_overlays(true);
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after
1858 filters_.Append(FilterOperation::CreateZoomFilter(0.9f, 1)); 1844 filters_.Append(FilterOperation::CreateZoomFilter(0.9f, 1));
1859 quad_->SetNew(pass_->shared_quad_state_list.back(), kOverlayRect, 1845 quad_->SetNew(pass_->shared_quad_state_list.back(), kOverlayRect,
1860 kOverlayRect, render_pass_id_, 0, gfx::Vector2dF(), gfx::Size(), 1846 kOverlayRect, render_pass_id_, 0, gfx::Vector2dF(), gfx::Size(),
1861 filters_, gfx::Vector2dF(1, 1), background_filters_); 1847 filters_, gfx::Vector2dF(1, 1), background_filters_);
1862 ProcessForOverlays(); 1848 ProcessForOverlays();
1863 EXPECT_EQ(0U, ca_layer_list_.size()); 1849 EXPECT_EQ(0U, ca_layer_list_.size());
1864 } 1850 }
1865 1851
1866 } // namespace 1852 } // namespace
1867 } // namespace cc 1853 } // namespace cc
OLDNEW
« no previous file with comments | « cc/output/gl_renderer_unittest.cc ('k') | cc/output/renderer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698