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

Side by Side Diff: content/common/cc_messages_unittest.cc

Issue 1990773002: cc: Remove IOSurfaceDrawQuad (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix messages unittest Created 4 years, 7 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include <string.h> 6 #include <string.h>
7 #include <algorithm> 7 #include <algorithm>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "build/build_config.h" 11 #include "build/build_config.h"
12 #include "cc/ipc/cc_param_traits.h" 12 #include "cc/ipc/cc_param_traits.h"
13 #include "cc/output/compositor_frame.h" 13 #include "cc/output/compositor_frame.h"
14 #include "cc/quads/picture_draw_quad.h" 14 #include "cc/quads/picture_draw_quad.h"
15 #include "cc/quads/render_pass_draw_quad.h" 15 #include "cc/quads/render_pass_draw_quad.h"
16 #include "content/public/common/common_param_traits.h" 16 #include "content/public/common/common_param_traits.h"
17 #include "ipc/ipc_message.h" 17 #include "ipc/ipc_message.h"
18 #include "testing/gtest/include/gtest/gtest.h" 18 #include "testing/gtest/include/gtest/gtest.h"
19 #include "third_party/skia/include/effects/SkBlurImageFilter.h" 19 #include "third_party/skia/include/effects/SkBlurImageFilter.h"
20 20
21 #if defined(OS_POSIX) 21 #if defined(OS_POSIX)
22 #include "base/file_descriptor_posix.h" 22 #include "base/file_descriptor_posix.h"
23 #endif 23 #endif
24 24
25 using cc::DelegatedFrameData; 25 using cc::DelegatedFrameData;
26 using cc::DebugBorderDrawQuad; 26 using cc::DebugBorderDrawQuad;
27 using cc::DrawQuad; 27 using cc::DrawQuad;
28 using cc::FilterOperation; 28 using cc::FilterOperation;
29 using cc::FilterOperations; 29 using cc::FilterOperations;
30 using cc::IOSurfaceDrawQuad;
danakj 2016/05/18 22:00:52 This file moved to cc/ipc/ fyi
31 using cc::PictureDrawQuad; 30 using cc::PictureDrawQuad;
32 using cc::RenderPass; 31 using cc::RenderPass;
33 using cc::RenderPassId; 32 using cc::RenderPassId;
34 using cc::RenderPassDrawQuad; 33 using cc::RenderPassDrawQuad;
35 using cc::ResourceId; 34 using cc::ResourceId;
36 using cc::ResourceProvider; 35 using cc::ResourceProvider;
37 using cc::SharedQuadState; 36 using cc::SharedQuadState;
38 using cc::SolidColorDrawQuad; 37 using cc::SolidColorDrawQuad;
39 using cc::SurfaceDrawQuad; 38 using cc::SurfaceDrawQuad;
40 using cc::TextureDrawQuad; 39 using cc::TextureDrawQuad;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 EXPECT_EQ(a->visible_rect.ToString(), b->visible_rect.ToString()); 75 EXPECT_EQ(a->visible_rect.ToString(), b->visible_rect.ToString());
77 EXPECT_EQ(a->needs_blending, b->needs_blending); 76 EXPECT_EQ(a->needs_blending, b->needs_blending);
78 77
79 Compare(a->shared_quad_state, b->shared_quad_state); 78 Compare(a->shared_quad_state, b->shared_quad_state);
80 79
81 switch (a->material) { 80 switch (a->material) {
82 case DrawQuad::DEBUG_BORDER: 81 case DrawQuad::DEBUG_BORDER:
83 Compare(DebugBorderDrawQuad::MaterialCast(a), 82 Compare(DebugBorderDrawQuad::MaterialCast(a),
84 DebugBorderDrawQuad::MaterialCast(b)); 83 DebugBorderDrawQuad::MaterialCast(b));
85 break; 84 break;
86 case DrawQuad::IO_SURFACE_CONTENT:
87 Compare(IOSurfaceDrawQuad::MaterialCast(a),
88 IOSurfaceDrawQuad::MaterialCast(b));
89 break;
90 case DrawQuad::PICTURE_CONTENT: 85 case DrawQuad::PICTURE_CONTENT:
91 Compare(PictureDrawQuad::MaterialCast(a), 86 Compare(PictureDrawQuad::MaterialCast(a),
92 PictureDrawQuad::MaterialCast(b)); 87 PictureDrawQuad::MaterialCast(b));
93 break; 88 break;
94 case DrawQuad::RENDER_PASS: 89 case DrawQuad::RENDER_PASS:
95 Compare(RenderPassDrawQuad::MaterialCast(a), 90 Compare(RenderPassDrawQuad::MaterialCast(a),
96 RenderPassDrawQuad::MaterialCast(b)); 91 RenderPassDrawQuad::MaterialCast(b));
97 break; 92 break;
98 case DrawQuad::TEXTURE_CONTENT: 93 case DrawQuad::TEXTURE_CONTENT:
99 Compare(TextureDrawQuad::MaterialCast(a), 94 Compare(TextureDrawQuad::MaterialCast(a),
(...skipping 22 matching lines...) Expand all
122 case DrawQuad::INVALID: 117 case DrawQuad::INVALID:
123 break; 118 break;
124 } 119 }
125 } 120 }
126 121
127 void Compare(const DebugBorderDrawQuad* a, const DebugBorderDrawQuad* b) { 122 void Compare(const DebugBorderDrawQuad* a, const DebugBorderDrawQuad* b) {
128 EXPECT_EQ(a->color, b->color); 123 EXPECT_EQ(a->color, b->color);
129 EXPECT_EQ(a->width, b->width); 124 EXPECT_EQ(a->width, b->width);
130 } 125 }
131 126
132 void Compare(const IOSurfaceDrawQuad* a, const IOSurfaceDrawQuad* b) {
133 EXPECT_EQ(a->io_surface_size.ToString(), b->io_surface_size.ToString());
134 EXPECT_EQ(a->io_surface_resource_id(), b->io_surface_resource_id());
135 EXPECT_EQ(a->orientation, b->orientation);
136 }
137
138 void Compare(const RenderPassDrawQuad* a, const RenderPassDrawQuad* b) { 127 void Compare(const RenderPassDrawQuad* a, const RenderPassDrawQuad* b) {
139 EXPECT_EQ(a->render_pass_id, b->render_pass_id); 128 EXPECT_EQ(a->render_pass_id, b->render_pass_id);
140 EXPECT_EQ(a->mask_resource_id(), b->mask_resource_id()); 129 EXPECT_EQ(a->mask_resource_id(), b->mask_resource_id());
141 EXPECT_EQ(a->mask_uv_scale.ToString(), b->mask_uv_scale.ToString()); 130 EXPECT_EQ(a->mask_uv_scale.ToString(), b->mask_uv_scale.ToString());
142 EXPECT_EQ(a->mask_texture_size.ToString(), b->mask_texture_size.ToString()); 131 EXPECT_EQ(a->mask_texture_size.ToString(), b->mask_texture_size.ToString());
143 EXPECT_EQ(a->filters.size(), b->filters.size()); 132 EXPECT_EQ(a->filters.size(), b->filters.size());
144 for (size_t i = 0; i < a->filters.size(); ++i) { 133 for (size_t i = 0; i < a->filters.size(); ++i) {
145 if (a->filters.at(i).type() != cc::FilterOperation::REFERENCE) { 134 if (a->filters.at(i).type() != cc::FilterOperation::REFERENCE) {
146 EXPECT_EQ(a->filters.at(i), b->filters.at(i)); 135 EXPECT_EQ(a->filters.at(i), b->filters.at(i));
147 } else { 136 } else {
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
259 bool arbitrary_bool4 = true; 248 bool arbitrary_bool4 = true;
260 bool arbitrary_bool5 = false; 249 bool arbitrary_bool5 = false;
261 int arbitrary_context_id1 = 12; 250 int arbitrary_context_id1 = 12;
262 int arbitrary_context_id2 = 57; 251 int arbitrary_context_id2 = 57;
263 int arbitrary_context_id3 = -503; 252 int arbitrary_context_id3 = -503;
264 int arbitrary_int = 5; 253 int arbitrary_int = 5;
265 SkColor arbitrary_color = SkColorSetARGB(25, 36, 47, 58); 254 SkColor arbitrary_color = SkColorSetARGB(25, 36, 47, 58);
266 SkXfermode::Mode arbitrary_blend_mode1 = SkXfermode::kScreen_Mode; 255 SkXfermode::Mode arbitrary_blend_mode1 = SkXfermode::kScreen_Mode;
267 SkXfermode::Mode arbitrary_blend_mode2 = SkXfermode::kLighten_Mode; 256 SkXfermode::Mode arbitrary_blend_mode2 = SkXfermode::kLighten_Mode;
268 SkXfermode::Mode arbitrary_blend_mode3 = SkXfermode::kOverlay_Mode; 257 SkXfermode::Mode arbitrary_blend_mode3 = SkXfermode::kOverlay_Mode;
269 IOSurfaceDrawQuad::Orientation arbitrary_orientation =
270 IOSurfaceDrawQuad::UNFLIPPED;
271 ResourceId arbitrary_resourceid1 = 55; 258 ResourceId arbitrary_resourceid1 = 55;
272 ResourceId arbitrary_resourceid2 = 47; 259 ResourceId arbitrary_resourceid2 = 47;
273 ResourceId arbitrary_resourceid3 = 23; 260 ResourceId arbitrary_resourceid3 = 23;
274 ResourceId arbitrary_resourceid4 = 16; 261 ResourceId arbitrary_resourceid4 = 16;
275 SkScalar arbitrary_sigma = SkFloatToScalar(2.0f); 262 SkScalar arbitrary_sigma = SkFloatToScalar(2.0f);
276 YUVVideoDrawQuad::ColorSpace arbitrary_color_space = 263 YUVVideoDrawQuad::ColorSpace arbitrary_color_space =
277 YUVVideoDrawQuad::REC_601; 264 YUVVideoDrawQuad::REC_601;
278 265
279 RenderPassId child_id(30, 5); 266 RenderPassId child_id(30, 5);
280 RenderPassId root_id(10, 14); 267 RenderPassId root_id(10, 14);
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 debugborder_in->SetAll(shared_state1_in, 307 debugborder_in->SetAll(shared_state1_in,
321 arbitrary_rect3, 308 arbitrary_rect3,
322 arbitrary_rect1_inside_rect3, 309 arbitrary_rect1_inside_rect3,
323 arbitrary_rect2_inside_rect3, 310 arbitrary_rect2_inside_rect3,
324 arbitrary_bool1, 311 arbitrary_bool1,
325 arbitrary_color, 312 arbitrary_color,
326 arbitrary_int); 313 arbitrary_int);
327 pass_cmp->CopyFromAndAppendDrawQuad(debugborder_in, 314 pass_cmp->CopyFromAndAppendDrawQuad(debugborder_in,
328 debugborder_in->shared_quad_state); 315 debugborder_in->shared_quad_state);
329 316
330 IOSurfaceDrawQuad* iosurface_in =
331 pass_in->CreateAndAppendDrawQuad<IOSurfaceDrawQuad>();
332 iosurface_in->SetAll(shared_state1_in,
333 arbitrary_rect2,
334 arbitrary_rect2_inside_rect2,
335 arbitrary_rect1_inside_rect2,
336 arbitrary_bool1,
337 arbitrary_size1,
338 arbitrary_resourceid3,
339 arbitrary_orientation);
340 pass_cmp->CopyFromAndAppendDrawQuad(iosurface_in,
341 iosurface_in->shared_quad_state);
342
343 SharedQuadState* shared_state2_in = pass_in->CreateAndAppendSharedQuadState(); 317 SharedQuadState* shared_state2_in = pass_in->CreateAndAppendSharedQuadState();
344 shared_state2_in->SetAll(arbitrary_matrix2, arbitrary_size2, arbitrary_rect2, 318 shared_state2_in->SetAll(arbitrary_matrix2, arbitrary_size2, arbitrary_rect2,
345 arbitrary_rect3, arbitrary_bool1, arbitrary_float2, 319 arbitrary_rect3, arbitrary_bool1, arbitrary_float2,
346 arbitrary_blend_mode2, arbitrary_context_id2); 320 arbitrary_blend_mode2, arbitrary_context_id2);
347 SharedQuadState* shared_state2_cmp = 321 SharedQuadState* shared_state2_cmp =
348 pass_cmp->CreateAndAppendSharedQuadState(); 322 pass_cmp->CreateAndAppendSharedQuadState();
349 shared_state2_cmp->CopyFrom(shared_state2_in); 323 shared_state2_cmp->CopyFrom(shared_state2_in);
350 324
351 RenderPassDrawQuad* renderpass_in = 325 RenderPassDrawQuad* renderpass_in =
352 pass_in->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); 326 pass_in->CreateAndAppendDrawQuad<RenderPassDrawQuad>();
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
435 arbitrary_color_space, arbitrary_float1, arbitrary_float2); 409 arbitrary_color_space, arbitrary_float1, arbitrary_float2);
436 pass_cmp->CopyFromAndAppendDrawQuad(yuvvideo_in, 410 pass_cmp->CopyFromAndAppendDrawQuad(yuvvideo_in,
437 yuvvideo_in->shared_quad_state); 411 yuvvideo_in->shared_quad_state);
438 412
439 // Make sure the in and cmp RenderPasses match. 413 // Make sure the in and cmp RenderPasses match.
440 Compare(child_pass_cmp.get(), child_pass_in.get()); 414 Compare(child_pass_cmp.get(), child_pass_in.get());
441 ASSERT_EQ(0u, child_pass_in->shared_quad_state_list.size()); 415 ASSERT_EQ(0u, child_pass_in->shared_quad_state_list.size());
442 ASSERT_EQ(0u, child_pass_in->quad_list.size()); 416 ASSERT_EQ(0u, child_pass_in->quad_list.size());
443 Compare(pass_cmp.get(), pass_in.get()); 417 Compare(pass_cmp.get(), pass_in.get());
444 ASSERT_EQ(3u, pass_in->shared_quad_state_list.size()); 418 ASSERT_EQ(3u, pass_in->shared_quad_state_list.size());
445 ASSERT_EQ(9u, pass_in->quad_list.size()); 419 ASSERT_EQ(8u, pass_in->quad_list.size());
446 for (cc::SharedQuadStateList::ConstIterator 420 for (cc::SharedQuadStateList::ConstIterator
447 cmp_iterator = pass_cmp->shared_quad_state_list.begin(), 421 cmp_iterator = pass_cmp->shared_quad_state_list.begin(),
448 in_iterator = pass_in->shared_quad_state_list.begin(); 422 in_iterator = pass_in->shared_quad_state_list.begin();
449 in_iterator != pass_in->shared_quad_state_list.end(); 423 in_iterator != pass_in->shared_quad_state_list.end();
450 ++cmp_iterator, ++in_iterator) { 424 ++cmp_iterator, ++in_iterator) {
451 Compare(*cmp_iterator, *in_iterator); 425 Compare(*cmp_iterator, *in_iterator);
452 } 426 }
453 for (auto in_iter = pass_in->quad_list.cbegin(), 427 for (auto in_iter = pass_in->quad_list.cbegin(),
454 cmp_iter = pass_cmp->quad_list.cbegin(); 428 cmp_iter = pass_cmp->quad_list.cbegin();
455 in_iter != pass_in->quad_list.cend(); 429 in_iter != pass_in->quad_list.cend();
(...skipping 24 matching lines...) Expand all
480 // Make sure the out and cmp RenderPasses match. 454 // Make sure the out and cmp RenderPasses match.
481 std::unique_ptr<RenderPass> child_pass_out = 455 std::unique_ptr<RenderPass> child_pass_out =
482 std::move(frame_out.render_pass_list[0]); 456 std::move(frame_out.render_pass_list[0]);
483 Compare(child_pass_cmp.get(), child_pass_out.get()); 457 Compare(child_pass_cmp.get(), child_pass_out.get());
484 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size()); 458 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size());
485 ASSERT_EQ(0u, child_pass_out->quad_list.size()); 459 ASSERT_EQ(0u, child_pass_out->quad_list.size());
486 std::unique_ptr<RenderPass> pass_out = 460 std::unique_ptr<RenderPass> pass_out =
487 std::move(frame_out.render_pass_list[1]); 461 std::move(frame_out.render_pass_list[1]);
488 Compare(pass_cmp.get(), pass_out.get()); 462 Compare(pass_cmp.get(), pass_out.get());
489 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size()); 463 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size());
490 ASSERT_EQ(9u, pass_out->quad_list.size()); 464 ASSERT_EQ(8u, pass_out->quad_list.size());
491 for (cc::SharedQuadStateList::ConstIterator 465 for (cc::SharedQuadStateList::ConstIterator
492 cmp_iterator = pass_cmp->shared_quad_state_list.begin(), 466 cmp_iterator = pass_cmp->shared_quad_state_list.begin(),
493 out_iterator = pass_out->shared_quad_state_list.begin(); 467 out_iterator = pass_out->shared_quad_state_list.begin();
494 out_iterator != pass_out->shared_quad_state_list.end(); 468 out_iterator != pass_out->shared_quad_state_list.end();
495 ++cmp_iterator, ++out_iterator) { 469 ++cmp_iterator, ++out_iterator) {
496 Compare(*cmp_iterator, *out_iterator); 470 Compare(*cmp_iterator, *out_iterator);
497 } 471 }
498 for (auto out_iter = pass_out->quad_list.cbegin(), 472 for (auto out_iter = pass_out->quad_list.cbegin(),
499 cmp_iter = pass_cmp->quad_list.cbegin(); 473 cmp_iter = pass_cmp->quad_list.cbegin();
500 out_iter != pass_out->quad_list.cend(); 474 out_iter != pass_out->quad_list.cend();
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
673 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, 647 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg,
674 &iter, &frame_out)); 648 &iter, &frame_out));
675 649
676 ASSERT_EQ(2u, frame_out.resource_list.size()); 650 ASSERT_EQ(2u, frame_out.resource_list.size());
677 Compare(arbitrary_resource1, frame_out.resource_list[0]); 651 Compare(arbitrary_resource1, frame_out.resource_list[0]);
678 Compare(arbitrary_resource2, frame_out.resource_list[1]); 652 Compare(arbitrary_resource2, frame_out.resource_list[1]);
679 } 653 }
680 654
681 } // namespace 655 } // namespace
682 } // namespace content 656 } // namespace content
OLDNEW
« no previous file with comments | « components/mus/public/interfaces/quads.mojom ('k') | mojo/converters/surfaces/surfaces_type_converters.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698