| 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 |