OLD | NEW |
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 "cc/test/surface_aggregator_test_helpers.h" | 5 #include "cc/test/surface_aggregator_test_helpers.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/format_macros.h" | 9 #include "base/format_macros.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 quad_rect, surface_id); | 45 quad_rect, surface_id); |
46 } | 46 } |
47 void AddRenderPassQuad(RenderPass* pass, RenderPassId render_pass_id) { | 47 void AddRenderPassQuad(RenderPass* pass, RenderPassId render_pass_id) { |
48 gfx::Rect output_rect = gfx::Rect(0, 0, 5, 5); | 48 gfx::Rect output_rect = gfx::Rect(0, 0, 5, 5); |
49 SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState(); | 49 SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState(); |
50 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, | 50 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, |
51 output_rect, false, 1, SkBlendMode::kSrcOver, 0); | 51 output_rect, false, 1, SkBlendMode::kSrcOver, 0); |
52 RenderPassDrawQuad* quad = | 52 RenderPassDrawQuad* quad = |
53 pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); | 53 pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); |
54 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, 0, | 54 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, 0, |
55 gfx::Vector2dF(), gfx::Size(), FilterOperations(), | 55 gfx::Vector2dF(), gfx::Size(), gfx::Vector2dF(), gfx::PointF()); |
56 gfx::Vector2dF(), gfx::PointF(), FilterOperations()); | |
57 } | 56 } |
58 | 57 |
59 void AddQuadInPass(RenderPass* pass, Quad desc) { | 58 void AddQuadInPass(RenderPass* pass, Quad desc) { |
60 switch (desc.material) { | 59 switch (desc.material) { |
61 case DrawQuad::SOLID_COLOR: | 60 case DrawQuad::SOLID_COLOR: |
62 AddQuad(pass, gfx::Rect(0, 0, 5, 5), desc.color); | 61 AddQuad(pass, gfx::Rect(0, 0, 5, 5), desc.color); |
63 break; | 62 break; |
64 case DrawQuad::SURFACE_CONTENT: | 63 case DrawQuad::SURFACE_CONTENT: |
65 AddSurfaceQuad(pass, gfx::Size(5, 5), desc.opacity, desc.surface_id); | 64 AddSurfaceQuad(pass, gfx::Size(5, 5), desc.opacity, desc.surface_id); |
66 break; | 65 break; |
67 case DrawQuad::RENDER_PASS: | 66 case DrawQuad::RENDER_PASS: |
68 AddRenderPassQuad(pass, desc.render_pass_id); | 67 AddRenderPassQuad(pass, desc.render_pass_id); |
69 break; | 68 break; |
70 default: | 69 default: |
71 NOTREACHED(); | 70 NOTREACHED(); |
72 } | 71 } |
73 } | 72 } |
74 | 73 |
75 void AddPasses(RenderPassList* pass_list, | 74 void AddPasses(RenderPassList* pass_list, |
76 const gfx::Rect& output_rect, | 75 const gfx::Rect& output_rect, |
77 Pass* passes, | 76 Pass* passes, |
78 size_t pass_count) { | 77 size_t pass_count) { |
79 gfx::Transform root_transform; | 78 gfx::Transform root_transform; |
80 for (size_t i = 0; i < pass_count; ++i) { | 79 for (size_t i = 0; i < pass_count; ++i) { |
81 Pass pass = passes[i]; | 80 Pass pass = passes[i]; |
82 RenderPass* test_pass = | 81 RenderPass* test_pass = AddRenderPass(pass_list, pass.id, output_rect, |
83 AddRenderPass(pass_list, pass.id, output_rect, root_transform); | 82 root_transform, FilterOperations()); |
84 for (size_t j = 0; j < pass.quad_count; ++j) { | 83 for (size_t j = 0; j < pass.quad_count; ++j) { |
85 AddQuadInPass(test_pass, pass.quads[j]); | 84 AddQuadInPass(test_pass, pass.quads[j]); |
86 } | 85 } |
87 } | 86 } |
88 } | 87 } |
89 | 88 |
90 void TestQuadMatchesExpectations(Quad expected_quad, const DrawQuad* quad) { | 89 void TestQuadMatchesExpectations(Quad expected_quad, const DrawQuad* quad) { |
91 switch (expected_quad.material) { | 90 switch (expected_quad.material) { |
92 case DrawQuad::SOLID_COLOR: { | 91 case DrawQuad::SOLID_COLOR: { |
93 ASSERT_EQ(DrawQuad::SOLID_COLOR, quad->material); | 92 ASSERT_EQ(DrawQuad::SOLID_COLOR, quad->material); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 | 128 |
130 for (size_t i = 0; i < passes->size(); ++i) { | 129 for (size_t i = 0; i < passes->size(); ++i) { |
131 SCOPED_TRACE(base::StringPrintf("Pass number %" PRIuS, i)); | 130 SCOPED_TRACE(base::StringPrintf("Pass number %" PRIuS, i)); |
132 RenderPass* pass = (*passes)[i].get(); | 131 RenderPass* pass = (*passes)[i].get(); |
133 TestPassMatchesExpectations(expected_passes[i], pass); | 132 TestPassMatchesExpectations(expected_passes[i], pass); |
134 } | 133 } |
135 } | 134 } |
136 | 135 |
137 } // namespace test | 136 } // namespace test |
138 } // namespace cc | 137 } // namespace cc |
OLD | NEW |