| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "cc/draw_quad.h" | 5 #include "cc/draw_quad.h" |
| 6 | 6 |
| 7 #include "cc/checkerboard_draw_quad.h" | 7 #include "cc/checkerboard_draw_quad.h" |
| 8 #include "cc/debug_border_draw_quad.h" | 8 #include "cc/debug_border_draw_quad.h" |
| 9 #include "cc/io_surface_draw_quad.h" | 9 #include "cc/io_surface_draw_quad.h" |
| 10 #include "cc/math_util.h" | 10 #include "cc/math_util.h" |
| 11 #include "cc/render_pass_draw_quad.h" | 11 #include "cc/render_pass_draw_quad.h" |
| 12 #include "cc/solid_color_draw_quad.h" | 12 #include "cc/solid_color_draw_quad.h" |
| 13 #include "cc/stream_video_draw_quad.h" | 13 #include "cc/stream_video_draw_quad.h" |
| 14 #include "cc/test/geometry_test_utils.h" | 14 #include "cc/test/geometry_test_utils.h" |
| 15 #include "cc/texture_draw_quad.h" | 15 #include "cc/texture_draw_quad.h" |
| 16 #include "cc/tile_draw_quad.h" | 16 #include "cc/tile_draw_quad.h" |
| 17 #include "cc/yuv_video_draw_quad.h" | 17 #include "cc/yuv_video_draw_quad.h" |
| 18 #include "testing/gtest/include/gtest/gtest.h" | 18 #include "testing/gtest/include/gtest/gtest.h" |
| 19 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations
.h" | 19 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations
.h" |
| 20 #include "third_party/skia/include/effects/SkBlurImageFilter.h" | 20 #include "third_party/skia/include/effects/SkBlurImageFilter.h" |
| 21 #include "ui/gfx/transform.h" | 21 #include "ui/gfx/transform.h" |
| 22 | 22 |
| 23 namespace cc { | 23 namespace cc { |
| 24 namespace { | 24 namespace { |
| 25 | 25 |
| 26 TEST(DrawQuadTest, copySharedQuadState) | 26 TEST(DrawQuadTest, copySharedQuadState) |
| 27 { | 27 { |
| 28 gfx::Transform quadTransform = gfx::Transform(1.0, 0.0, 0.5, 1.0, 0.5, 0.0); | 28 gfx::Transform quadTransform = gfx::Transform(1.0, 0.0, 0.5, 1.0, 0.5, 0.0); |
| 29 gfx::Size contentBounds(26, 28); |
| 29 gfx::Rect visibleContentRect(10, 12, 14, 16); | 30 gfx::Rect visibleContentRect(10, 12, 14, 16); |
| 30 gfx::Rect clipRect(19, 21, 23, 25); | 31 gfx::Rect clipRect(19, 21, 23, 25); |
| 31 bool isClipped = true; | 32 bool isClipped = true; |
| 32 float opacity = 0.25; | 33 float opacity = 0.25; |
| 33 | 34 |
| 34 scoped_ptr<SharedQuadState> state(SharedQuadState::Create()); | 35 scoped_ptr<SharedQuadState> state(SharedQuadState::Create()); |
| 35 state->SetAll(quadTransform, visibleContentRect, clipRect, isClipped, opacit
y); | 36 state->SetAll(quadTransform, contentBounds, visibleContentRect, clipRect, |
| 37 isClipped, opacity); |
| 36 | 38 |
| 37 scoped_ptr<SharedQuadState> copy(state->Copy()); | 39 scoped_ptr<SharedQuadState> copy(state->Copy()); |
| 38 EXPECT_EQ(quadTransform, copy->content_to_target_transform); | 40 EXPECT_EQ(quadTransform, copy->content_to_target_transform); |
| 39 EXPECT_RECT_EQ(visibleContentRect, copy->visible_content_rect); | 41 EXPECT_RECT_EQ(visibleContentRect, copy->visible_content_rect); |
| 40 EXPECT_EQ(opacity, copy->opacity); | 42 EXPECT_EQ(opacity, copy->opacity); |
| 41 EXPECT_RECT_EQ(clipRect, copy->clip_rect); | 43 EXPECT_RECT_EQ(clipRect, copy->clip_rect); |
| 42 EXPECT_EQ(isClipped, copy->is_clipped); | 44 EXPECT_EQ(isClipped, copy->is_clipped); |
| 43 } | 45 } |
| 44 | 46 |
| 45 scoped_ptr<SharedQuadState> createSharedQuadState() | 47 scoped_ptr<SharedQuadState> createSharedQuadState() |
| 46 { | 48 { |
| 47 gfx::Transform quadTransform = gfx::Transform(1.0, 0.0, 0.5, 1.0, 0.5, 0.0); | 49 gfx::Transform quadTransform = gfx::Transform(1.0, 0.0, 0.5, 1.0, 0.5, 0.0); |
| 50 gfx::Size contentBounds(26, 28); |
| 48 gfx::Rect visibleContentRect(10, 12, 14, 16); | 51 gfx::Rect visibleContentRect(10, 12, 14, 16); |
| 49 gfx::Rect clipRect(19, 21, 23, 25); | 52 gfx::Rect clipRect(19, 21, 23, 25); |
| 50 bool isClipped = false; | 53 bool isClipped = false; |
| 51 float opacity = 1; | 54 float opacity = 1; |
| 52 | 55 |
| 53 scoped_ptr<SharedQuadState> state(SharedQuadState::Create()); | 56 scoped_ptr<SharedQuadState> state(SharedQuadState::Create()); |
| 54 state->SetAll(quadTransform, visibleContentRect, clipRect, isClipped, opacit
y); | 57 state->SetAll(quadTransform, contentBounds, visibleContentRect, clipRect, |
| 58 isClipped, opacity); |
| 55 return state.Pass(); | 59 return state.Pass(); |
| 56 } | 60 } |
| 57 | 61 |
| 58 void compareDrawQuad(DrawQuad* quad, DrawQuad* copy, SharedQuadState* copyShared
State) | 62 void compareDrawQuad(DrawQuad* quad, DrawQuad* copy, SharedQuadState* copyShared
State) |
| 59 { | 63 { |
| 60 EXPECT_EQ(quad->material, copy->material); | 64 EXPECT_EQ(quad->material, copy->material); |
| 61 EXPECT_RECT_EQ(quad->rect, copy->rect); | 65 EXPECT_RECT_EQ(quad->rect, copy->rect); |
| 62 EXPECT_RECT_EQ(quad->visible_rect, copy->visible_rect); | 66 EXPECT_RECT_EQ(quad->visible_rect, copy->visible_rect); |
| 63 EXPECT_RECT_EQ(quad->opaque_rect, copy->opaque_rect); | 67 EXPECT_RECT_EQ(quad->opaque_rect, copy->opaque_rect); |
| 64 EXPECT_EQ(quad->needs_blending, copy->needs_blending); | 68 EXPECT_EQ(quad->needs_blending, copy->needs_blending); |
| (...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 453 } | 457 } |
| 454 } | 458 } |
| 455 | 459 |
| 456 TEST(DrawQuadTest, copyTileDrawQuad) | 460 TEST(DrawQuadTest, copyTileDrawQuad) |
| 457 { | 461 { |
| 458 gfx::Rect opaqueRect(33, 44, 22, 33); | 462 gfx::Rect opaqueRect(33, 44, 22, 33); |
| 459 unsigned resourceId = 104; | 463 unsigned resourceId = 104; |
| 460 gfx::RectF texCoordRect(31, 12, 54, 20); | 464 gfx::RectF texCoordRect(31, 12, 54, 20); |
| 461 gfx::Size textureSize(85, 32); | 465 gfx::Size textureSize(85, 32); |
| 462 bool swizzleContents = true; | 466 bool swizzleContents = true; |
| 463 bool leftEdgeAA = true; | |
| 464 bool topEdgeAA = true; | |
| 465 bool rightEdgeAA = false; | |
| 466 bool bottomEdgeAA = true; | |
| 467 CREATE_SHARED_STATE(); | 467 CREATE_SHARED_STATE(); |
| 468 | 468 |
| 469 CREATE_QUAD_9_NEW(TileDrawQuad, opaqueRect, resourceId, texCoordRect, textur
eSize, swizzleContents, leftEdgeAA, topEdgeAA, rightEdgeAA, bottomEdgeAA); | 469 CREATE_QUAD_5_NEW(TileDrawQuad, opaqueRect, resourceId, texCoordRect, textur
eSize, swizzleContents); |
| 470 EXPECT_EQ(DrawQuad::TILED_CONTENT, copyQuad->material); | 470 EXPECT_EQ(DrawQuad::TILED_CONTENT, copyQuad->material); |
| 471 EXPECT_RECT_EQ(opaqueRect, copyQuad->opaque_rect); | 471 EXPECT_RECT_EQ(opaqueRect, copyQuad->opaque_rect); |
| 472 EXPECT_EQ(resourceId, copyQuad->resource_id); | 472 EXPECT_EQ(resourceId, copyQuad->resource_id); |
| 473 EXPECT_EQ(texCoordRect, copyQuad->tex_coord_rect); | 473 EXPECT_EQ(texCoordRect, copyQuad->tex_coord_rect); |
| 474 EXPECT_EQ(textureSize, copyQuad->texture_size); | 474 EXPECT_EQ(textureSize, copyQuad->texture_size); |
| 475 EXPECT_EQ(swizzleContents, copyQuad->swizzle_contents); | 475 EXPECT_EQ(swizzleContents, copyQuad->swizzle_contents); |
| 476 EXPECT_EQ(leftEdgeAA, copyQuad->left_edge_aa); | |
| 477 EXPECT_EQ(topEdgeAA, copyQuad->top_edge_aa); | |
| 478 EXPECT_EQ(rightEdgeAA, copyQuad->right_edge_aa); | |
| 479 EXPECT_EQ(bottomEdgeAA, copyQuad->bottom_edge_aa); | |
| 480 | 476 |
| 481 CREATE_QUAD_8_ALL(TileDrawQuad, resourceId, texCoordRect, textureSize, swizz
leContents, leftEdgeAA, topEdgeAA, rightEdgeAA, bottomEdgeAA); | 477 CREATE_QUAD_4_ALL(TileDrawQuad, resourceId, texCoordRect, textureSize, swizz
leContents); |
| 482 EXPECT_EQ(DrawQuad::TILED_CONTENT, copyQuad->material); | 478 EXPECT_EQ(DrawQuad::TILED_CONTENT, copyQuad->material); |
| 483 EXPECT_EQ(resourceId, copyQuad->resource_id); | 479 EXPECT_EQ(resourceId, copyQuad->resource_id); |
| 484 EXPECT_EQ(texCoordRect, copyQuad->tex_coord_rect); | 480 EXPECT_EQ(texCoordRect, copyQuad->tex_coord_rect); |
| 485 EXPECT_EQ(textureSize, copyQuad->texture_size); | 481 EXPECT_EQ(textureSize, copyQuad->texture_size); |
| 486 EXPECT_EQ(swizzleContents, copyQuad->swizzle_contents); | 482 EXPECT_EQ(swizzleContents, copyQuad->swizzle_contents); |
| 487 EXPECT_EQ(leftEdgeAA, copyQuad->left_edge_aa); | |
| 488 EXPECT_EQ(topEdgeAA, copyQuad->top_edge_aa); | |
| 489 EXPECT_EQ(rightEdgeAA, copyQuad->right_edge_aa); | |
| 490 EXPECT_EQ(bottomEdgeAA, copyQuad->bottom_edge_aa); | |
| 491 } | 483 } |
| 492 | 484 |
| 493 TEST(DrawQuadTest, copyYUVVideoDrawQuad) | 485 TEST(DrawQuadTest, copyYUVVideoDrawQuad) |
| 494 { | 486 { |
| 495 gfx::Rect opaqueRect(3, 7, 10, 12); | 487 gfx::Rect opaqueRect(3, 7, 10, 12); |
| 496 gfx::SizeF texScale(0.75, 0.5); | 488 gfx::SizeF texScale(0.75, 0.5); |
| 497 VideoLayerImpl::FramePlane yPlane; | 489 VideoLayerImpl::FramePlane yPlane; |
| 498 yPlane.resourceId = 45; | 490 yPlane.resourceId = 45; |
| 499 yPlane.size = gfx::Size(34, 23); | 491 yPlane.size = gfx::Size(34, 23); |
| 500 yPlane.format = 8; | 492 yPlane.format = 8; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 531 EXPECT_EQ(uPlane.resourceId, copyQuad->u_plane.resourceId); | 523 EXPECT_EQ(uPlane.resourceId, copyQuad->u_plane.resourceId); |
| 532 EXPECT_EQ(uPlane.size, copyQuad->u_plane.size); | 524 EXPECT_EQ(uPlane.size, copyQuad->u_plane.size); |
| 533 EXPECT_EQ(uPlane.format, copyQuad->u_plane.format); | 525 EXPECT_EQ(uPlane.format, copyQuad->u_plane.format); |
| 534 EXPECT_EQ(vPlane.resourceId, copyQuad->v_plane.resourceId); | 526 EXPECT_EQ(vPlane.resourceId, copyQuad->v_plane.resourceId); |
| 535 EXPECT_EQ(vPlane.size, copyQuad->v_plane.size); | 527 EXPECT_EQ(vPlane.size, copyQuad->v_plane.size); |
| 536 EXPECT_EQ(vPlane.format, copyQuad->v_plane.format); | 528 EXPECT_EQ(vPlane.format, copyQuad->v_plane.format); |
| 537 } | 529 } |
| 538 | 530 |
| 539 } // namespace | 531 } // namespace |
| 540 } // namespace cc | 532 } // namespace cc |
| OLD | NEW |