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/quads/render_pass.h" | 5 #include "cc/quads/render_pass.h" |
6 #include "cc/quads/solid_color_draw_quad.h" | 6 #include "cc/quads/solid_color_draw_quad.h" |
7 #include "cc/quads/surface_draw_quad.h" | 7 #include "cc/quads/surface_draw_quad.h" |
8 #include "cc/quads/texture_draw_quad.h" | 8 #include "cc/quads/texture_draw_quad.h" |
9 #include "gpu/command_buffer/common/mailbox.h" | 9 #include "gpu/command_buffer/common/mailbox.h" |
10 #include "gpu/command_buffer/common/mailbox_holder.h" | 10 #include "gpu/command_buffer/common/mailbox_holder.h" |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 | 101 |
102 TEST_F(SurfaceLibQuadTest, TextureQuad) { | 102 TEST_F(SurfaceLibQuadTest, TextureQuad) { |
103 cc::TextureDrawQuad* texture_quad = | 103 cc::TextureDrawQuad* texture_quad = |
104 pass->CreateAndAppendDrawQuad<cc::TextureDrawQuad>(); | 104 pass->CreateAndAppendDrawQuad<cc::TextureDrawQuad>(); |
105 unsigned resource_id = 9; | 105 unsigned resource_id = 9; |
106 bool premultiplied_alpha = true; | 106 bool premultiplied_alpha = true; |
107 gfx::PointF uv_top_left(1.7f, 2.1f); | 107 gfx::PointF uv_top_left(1.7f, 2.1f); |
108 gfx::PointF uv_bottom_right(-7.f, 16.3f); | 108 gfx::PointF uv_bottom_right(-7.f, 16.3f); |
109 SkColor background_color = SK_ColorYELLOW; | 109 SkColor background_color = SK_ColorYELLOW; |
110 float vertex_opacity[4] = {0.1f, 0.5f, 0.4f, 0.8f}; | 110 float vertex_opacity[4] = {0.1f, 0.5f, 0.4f, 0.8f}; |
111 bool flipped = false; | 111 bool y_flipped = false; |
112 bool nearest_neighbor = false; | 112 bool nearest_neighbor = false; |
113 texture_quad->SetAll(sqs, | 113 texture_quad->SetAll(sqs, |
114 rect, | 114 rect, |
115 opaque_rect, | 115 opaque_rect, |
116 visible_rect, | 116 visible_rect, |
117 needs_blending, | 117 needs_blending, |
118 resource_id, | 118 resource_id, |
119 premultiplied_alpha, | 119 premultiplied_alpha, |
120 uv_top_left, | 120 uv_top_left, |
121 uv_bottom_right, | 121 uv_bottom_right, |
122 background_color, | 122 background_color, |
123 vertex_opacity, | 123 vertex_opacity, |
124 flipped, | 124 y_flipped, |
125 nearest_neighbor); | 125 nearest_neighbor); |
126 | 126 |
127 QuadPtr mojo_quad = Quad::From<cc::DrawQuad>(*texture_quad); | 127 QuadPtr mojo_quad = Quad::From<cc::DrawQuad>(*texture_quad); |
128 ASSERT_FALSE(mojo_quad.is_null()); | 128 ASSERT_FALSE(mojo_quad.is_null()); |
129 EXPECT_EQ(MATERIAL_TEXTURE_CONTENT, mojo_quad->material); | 129 EXPECT_EQ(MATERIAL_TEXTURE_CONTENT, mojo_quad->material); |
130 ASSERT_TRUE(mojo_quad->texture_quad_state); | 130 ASSERT_TRUE(mojo_quad->texture_quad_state); |
131 TextureQuadStatePtr& mojo_texture_state = mojo_quad->texture_quad_state; | 131 TextureQuadStatePtr& mojo_texture_state = mojo_quad->texture_quad_state; |
132 EXPECT_EQ(resource_id, mojo_texture_state->resource_id); | 132 EXPECT_EQ(resource_id, mojo_texture_state->resource_id); |
133 EXPECT_EQ(premultiplied_alpha, mojo_texture_state->premultiplied_alpha); | 133 EXPECT_EQ(premultiplied_alpha, mojo_texture_state->premultiplied_alpha); |
134 EXPECT_EQ(PointF::From(uv_top_left), mojo_texture_state->uv_top_left); | 134 EXPECT_EQ(PointF::From(uv_top_left), mojo_texture_state->uv_top_left); |
135 EXPECT_EQ(PointF::From(uv_bottom_right), mojo_texture_state->uv_bottom_right); | 135 EXPECT_EQ(PointF::From(uv_bottom_right), mojo_texture_state->uv_bottom_right); |
136 EXPECT_EQ(Color::From(background_color), | 136 EXPECT_EQ(Color::From(background_color), |
137 mojo_texture_state->background_color); | 137 mojo_texture_state->background_color); |
138 for (size_t i = 0; i < 4; ++i) { | 138 for (size_t i = 0; i < 4; ++i) { |
139 EXPECT_EQ(vertex_opacity[i], mojo_texture_state->vertex_opacity[i]) << i; | 139 EXPECT_EQ(vertex_opacity[i], mojo_texture_state->vertex_opacity[i]) << i; |
140 } | 140 } |
141 EXPECT_EQ(flipped, mojo_texture_state->flipped); | 141 EXPECT_EQ(y_flipped, mojo_texture_state->y_flipped); |
142 } | 142 } |
143 | 143 |
144 TEST_F(SurfaceLibQuadTest, TextureQuadEmptyVertexOpacity) { | 144 TEST_F(SurfaceLibQuadTest, TextureQuadEmptyVertexOpacity) { |
145 QuadPtr mojo_texture_quad = Quad::New(); | 145 QuadPtr mojo_texture_quad = Quad::New(); |
146 mojo_texture_quad->material = MATERIAL_TEXTURE_CONTENT; | 146 mojo_texture_quad->material = MATERIAL_TEXTURE_CONTENT; |
147 TextureQuadStatePtr mojo_texture_state = TextureQuadState::New(); | 147 TextureQuadStatePtr mojo_texture_state = TextureQuadState::New(); |
148 mojo_texture_state->background_color = Color::New(); | 148 mojo_texture_state->background_color = Color::New(); |
149 mojo_texture_quad->texture_quad_state = mojo_texture_state.Pass(); | 149 mojo_texture_quad->texture_quad_state = mojo_texture_state.Pass(); |
150 PassPtr mojo_pass = Pass::New(); | 150 PassPtr mojo_pass = Pass::New(); |
151 mojo_pass->id = RenderPassId::New(); | 151 mojo_pass->id = RenderPassId::New(); |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 sqs, rect, opaque_rect, visible_rect, needs_blending, arbitrary_id); | 268 sqs, rect, opaque_rect, visible_rect, needs_blending, arbitrary_id); |
269 | 269 |
270 cc::TextureDrawQuad* texture_quad = | 270 cc::TextureDrawQuad* texture_quad = |
271 pass->CreateAndAppendDrawQuad<cc::TextureDrawQuad>(); | 271 pass->CreateAndAppendDrawQuad<cc::TextureDrawQuad>(); |
272 unsigned resource_id = 9; | 272 unsigned resource_id = 9; |
273 bool premultiplied_alpha = true; | 273 bool premultiplied_alpha = true; |
274 gfx::PointF uv_top_left(1.7f, 2.1f); | 274 gfx::PointF uv_top_left(1.7f, 2.1f); |
275 gfx::PointF uv_bottom_right(-7.f, 16.3f); | 275 gfx::PointF uv_bottom_right(-7.f, 16.3f); |
276 SkColor background_color = SK_ColorYELLOW; | 276 SkColor background_color = SK_ColorYELLOW; |
277 float vertex_opacity[4] = {0.1f, 0.5f, 0.4f, 0.8f}; | 277 float vertex_opacity[4] = {0.1f, 0.5f, 0.4f, 0.8f}; |
278 bool flipped = false; | 278 bool y_flipped = false; |
279 bool nearest_neighbor = false; | 279 bool nearest_neighbor = false; |
280 texture_quad->SetAll(sqs, | 280 texture_quad->SetAll(sqs, |
281 rect, | 281 rect, |
282 opaque_rect, | 282 opaque_rect, |
283 visible_rect, | 283 visible_rect, |
284 needs_blending, | 284 needs_blending, |
285 resource_id, | 285 resource_id, |
286 premultiplied_alpha, | 286 premultiplied_alpha, |
287 uv_top_left, | 287 uv_top_left, |
288 uv_bottom_right, | 288 uv_bottom_right, |
289 background_color, | 289 background_color, |
290 vertex_opacity, | 290 vertex_opacity, |
291 flipped, | 291 y_flipped, |
292 nearest_neighbor); | 292 nearest_neighbor); |
293 | 293 |
294 PassPtr mojo_pass = Pass::From(*pass); | 294 PassPtr mojo_pass = Pass::From(*pass); |
295 ASSERT_FALSE(mojo_pass.is_null()); | 295 ASSERT_FALSE(mojo_pass.is_null()); |
296 EXPECT_EQ(6, mojo_pass->id->index); | 296 EXPECT_EQ(6, mojo_pass->id->index); |
297 EXPECT_EQ(Rect::From(output_rect), mojo_pass->output_rect); | 297 EXPECT_EQ(Rect::From(output_rect), mojo_pass->output_rect); |
298 EXPECT_EQ(Rect::From(damage_rect), mojo_pass->damage_rect); | 298 EXPECT_EQ(Rect::From(damage_rect), mojo_pass->damage_rect); |
299 EXPECT_EQ(Transform::From(transform_to_root_target), | 299 EXPECT_EQ(Transform::From(transform_to_root_target), |
300 mojo_pass->transform_to_root_target); | 300 mojo_pass->transform_to_root_target); |
301 EXPECT_EQ(has_transparent_background, mojo_pass->has_transparent_background); | 301 EXPECT_EQ(has_transparent_background, mojo_pass->has_transparent_background); |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
355 cc::TextureDrawQuad::MaterialCast(round_trip_quad); | 355 cc::TextureDrawQuad::MaterialCast(round_trip_quad); |
356 EXPECT_EQ(resource_id, round_trip_texture_quad->resource_id); | 356 EXPECT_EQ(resource_id, round_trip_texture_quad->resource_id); |
357 EXPECT_EQ(premultiplied_alpha, round_trip_texture_quad->premultiplied_alpha); | 357 EXPECT_EQ(premultiplied_alpha, round_trip_texture_quad->premultiplied_alpha); |
358 EXPECT_EQ(uv_top_left, round_trip_texture_quad->uv_top_left); | 358 EXPECT_EQ(uv_top_left, round_trip_texture_quad->uv_top_left); |
359 EXPECT_EQ(uv_bottom_right, round_trip_texture_quad->uv_bottom_right); | 359 EXPECT_EQ(uv_bottom_right, round_trip_texture_quad->uv_bottom_right); |
360 EXPECT_EQ(background_color, round_trip_texture_quad->background_color); | 360 EXPECT_EQ(background_color, round_trip_texture_quad->background_color); |
361 for (size_t i = 0; i < 4; ++i) { | 361 for (size_t i = 0; i < 4; ++i) { |
362 EXPECT_EQ(vertex_opacity[i], round_trip_texture_quad->vertex_opacity[i]) | 362 EXPECT_EQ(vertex_opacity[i], round_trip_texture_quad->vertex_opacity[i]) |
363 << i; | 363 << i; |
364 } | 364 } |
365 EXPECT_EQ(flipped, round_trip_texture_quad->flipped); | 365 EXPECT_EQ(y_flipped, round_trip_texture_quad->y_flipped); |
366 } | 366 } |
367 | 367 |
368 TEST(SurfaceLibTest, Mailbox) { | 368 TEST(SurfaceLibTest, Mailbox) { |
369 gpu::Mailbox mailbox; | 369 gpu::Mailbox mailbox; |
370 mailbox.Generate(); | 370 mailbox.Generate(); |
371 | 371 |
372 MailboxPtr mojo_mailbox = Mailbox::From(mailbox); | 372 MailboxPtr mojo_mailbox = Mailbox::From(mailbox); |
373 EXPECT_EQ(0, memcmp(mailbox.name, &mojo_mailbox->name.storage()[0], 64)); | 373 EXPECT_EQ(0, memcmp(mailbox.name, &mojo_mailbox->name.storage()[0], 64)); |
374 | 374 |
375 gpu::Mailbox round_trip_mailbox = mojo_mailbox.To<gpu::Mailbox>(); | 375 gpu::Mailbox round_trip_mailbox = mojo_mailbox.To<gpu::Mailbox>(); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
462 cc::ReturnedResource round_trip_resource = | 462 cc::ReturnedResource round_trip_resource = |
463 mojo_resource.To<cc::ReturnedResource>(); | 463 mojo_resource.To<cc::ReturnedResource>(); |
464 EXPECT_EQ(id, round_trip_resource.id); | 464 EXPECT_EQ(id, round_trip_resource.id); |
465 EXPECT_EQ(sync_point, round_trip_resource.sync_point); | 465 EXPECT_EQ(sync_point, round_trip_resource.sync_point); |
466 EXPECT_EQ(count, round_trip_resource.count); | 466 EXPECT_EQ(count, round_trip_resource.count); |
467 EXPECT_EQ(lost, round_trip_resource.lost); | 467 EXPECT_EQ(lost, round_trip_resource.lost); |
468 } | 468 } |
469 | 469 |
470 } // namespace | 470 } // namespace |
471 } // namespace mojo | 471 } // namespace mojo |
OLD | NEW |