Chromium Code Reviews| 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" |
| (...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 355 EXPECT_EQ(DrawQuad::STREAM_VIDEO_CONTENT, copyQuad->material); | 355 EXPECT_EQ(DrawQuad::STREAM_VIDEO_CONTENT, copyQuad->material); |
| 356 EXPECT_EQ(textureId, copyQuad->texture_id); | 356 EXPECT_EQ(textureId, copyQuad->texture_id); |
| 357 EXPECT_EQ(matrix, copyQuad->matrix); | 357 EXPECT_EQ(matrix, copyQuad->matrix); |
| 358 } | 358 } |
| 359 | 359 |
| 360 TEST(DrawQuadTest, copyTextureDrawQuad) | 360 TEST(DrawQuadTest, copyTextureDrawQuad) |
| 361 { | 361 { |
| 362 gfx::Rect opaqueRect(3, 7, 10, 12); | 362 gfx::Rect opaqueRect(3, 7, 10, 12); |
| 363 unsigned resourceId = 82; | 363 unsigned resourceId = 82; |
| 364 bool premultipliedAlpha = true; | 364 bool premultipliedAlpha = true; |
| 365 gfx::RectF uvRect(0.5f, 224.f, 51.f, 36.f); | 365 gfx::PointF uvTopLeft(0.5f, 224.f); |
| 366 gfx::PointF uvBottomRight(51.5f, 260.f); | |
| 366 const float vertex_opacity[] = {1.0f, 1.0f, 1.0f, 1.0f}; | 367 const float vertex_opacity[] = {1.0f, 1.0f, 1.0f, 1.0f}; |
| 367 bool flipped = true; | 368 bool flipped = true; |
| 368 CREATE_SHARED_STATE(); | 369 CREATE_SHARED_STATE(); |
| 369 | 370 |
| 370 CREATE_QUAD_6_NEW(TextureDrawQuad, opaqueRect, resourceId, premultipliedAlph a, uvRect, vertex_opacity, flipped); | 371 CREATE_QUAD_7_NEW(TextureDrawQuad, opaqueRect, resourceId, premultipliedAlph a, uvTopLeft, uvBottomRight, vertex_opacity, flipped); |
| 371 EXPECT_EQ(DrawQuad::TEXTURE_CONTENT, copyQuad->material); | 372 EXPECT_EQ(DrawQuad::TEXTURE_CONTENT, copyQuad->material); |
| 372 EXPECT_RECT_EQ(opaqueRect, copyQuad->opaque_rect); | 373 EXPECT_RECT_EQ(opaqueRect, copyQuad->opaque_rect); |
| 373 EXPECT_EQ(resourceId, copyQuad->resource_id); | 374 EXPECT_EQ(resourceId, copyQuad->resource_id); |
| 374 EXPECT_EQ(premultipliedAlpha, copyQuad->premultiplied_alpha); | 375 EXPECT_EQ(premultipliedAlpha, copyQuad->premultiplied_alpha); |
| 375 EXPECT_FLOAT_RECT_EQ(uvRect, copyQuad->uv_rect); | 376 EXPECT_EQ(uvTopLeft, copyQuad->uv_top_left); |
| 377 EXPECT_EQ(uvBottomRight, copyQuad->uv_bottom_right); | |
| 376 EXPECT_FLOAT_ARRAY_EQ(vertex_opacity, copyQuad->vertex_opacity, 4); | 378 EXPECT_FLOAT_ARRAY_EQ(vertex_opacity, copyQuad->vertex_opacity, 4); |
| 377 EXPECT_EQ(flipped, copyQuad->flipped); | 379 EXPECT_EQ(flipped, copyQuad->flipped); |
| 378 | 380 |
| 379 CREATE_QUAD_5_ALL(TextureDrawQuad, resourceId, premultipliedAlpha, uvRect, v ertex_opacity, flipped); | 381 CREATE_QUAD_6_ALL(TextureDrawQuad, resourceId, premultipliedAlpha, uvTopLeft , uvBottomRight, vertex_opacity, flipped); |
| 380 EXPECT_EQ(DrawQuad::TEXTURE_CONTENT, copyQuad->material); | 382 EXPECT_EQ(DrawQuad::TEXTURE_CONTENT, copyQuad->material); |
| 381 EXPECT_EQ(resourceId, copyQuad->resource_id); | 383 EXPECT_EQ(resourceId, copyQuad->resource_id); |
| 382 EXPECT_EQ(premultipliedAlpha, copyQuad->premultiplied_alpha); | 384 EXPECT_EQ(premultipliedAlpha, copyQuad->premultiplied_alpha); |
| 383 EXPECT_FLOAT_RECT_EQ(uvRect, copyQuad->uv_rect); | 385 EXPECT_EQ(uvTopLeft, copyQuad->uv_top_left); |
| 386 EXPECT_EQ(uvBottomRight, copyQuad->uv_bottom_right); | |
| 384 EXPECT_FLOAT_ARRAY_EQ(vertex_opacity, copyQuad->vertex_opacity, 4); | 387 EXPECT_FLOAT_ARRAY_EQ(vertex_opacity, copyQuad->vertex_opacity, 4); |
| 385 EXPECT_EQ(flipped, copyQuad->flipped); | 388 EXPECT_EQ(flipped, copyQuad->flipped); |
| 386 } | 389 } |
| 387 | 390 |
| 391 TEST(DrawQuadTest, clipTextureDrawQuad) | |
| 392 { | |
| 393 gfx::Rect opaqueRect(3, 7, 10, 12); | |
| 394 unsigned resourceId = 82; | |
| 395 bool premultipliedAlpha = true; | |
| 396 gfx::PointF uvTopLeft(0.1f, 0.2f); | |
| 397 gfx::PointF uvBottomRight(0.9f, 0.8f); | |
| 398 const float vertexOpacity[] = {0.3f, 0.4f, 0.7f, 0.8f}; | |
| 399 bool flipped = true; | |
| 400 CREATE_SHARED_STATE(); | |
| 401 sharedState->content_to_target_transform = MathUtil::createGfxTransform(1.f, 0.f, 0.f, 1.f, 10.f, 20.f); | |
| 402 sharedState->clip_rect = gfx::Rect(50, 70, 30, 20); | |
| 403 | |
| 404 { | |
| 405 CREATE_QUAD_7_NEW(TextureDrawQuad, opaqueRect, resourceId, premultipliedAl pha, uvTopLeft, uvBottomRight, vertexOpacity, flipped); | |
| 406 CREATE_QUAD_6_ALL(TextureDrawQuad, resourceId, premultipliedAlpha, uvTopLe ft, uvBottomRight, vertexOpacity, flipped); | |
| 407 EXPECT_TRUE(quadAll->PerformClipping()); | |
| 408 | |
| 409 gfx::PointF uvTopLeftClipped(0.26f, 0.3f); | |
|
danakj
2013/01/15 01:48:42
Can you add a comment here to justify these expect
Jerome
2013/01/15 17:58:12
Done.
| |
| 410 gfx::PointF uvBottomRightClipped(0.74f, 0.5f); | |
| 411 const float vertexOpacityClipped[] = {0.43f, 0.45f, 0.65f, 0.67f}; | |
| 412 | |
| 413 EXPECT_EQ(uvTopLeftClipped, quadAll->uv_top_left); | |
| 414 EXPECT_EQ(uvBottomRightClipped, quadAll->uv_bottom_right); | |
| 415 EXPECT_FLOAT_ARRAY_EQ(vertexOpacityClipped, quadAll->vertex_opacity, 4); | |
| 416 } | |
| 417 | |
| 418 uvTopLeft = gfx::PointF(0.8f, 0.7f); | |
| 419 uvBottomRight = gfx::PointF(0.2f, 0.1f); | |
| 420 | |
| 421 { | |
| 422 CREATE_QUAD_7_NEW(TextureDrawQuad, opaqueRect, resourceId, premultipliedAl pha, uvTopLeft, uvBottomRight, vertexOpacity, flipped); | |
| 423 CREATE_QUAD_6_ALL(TextureDrawQuad, resourceId, premultipliedAlpha, uvTopLe ft, uvBottomRight, vertexOpacity, flipped); | |
| 424 EXPECT_TRUE(quadAll->PerformClipping()); | |
| 425 | |
| 426 gfx::PointF uvTopLeftClipped(0.68f, 0.6f); | |
|
danakj
2013/01/15 01:48:42
same here
Jerome
2013/01/15 17:58:12
Done.
| |
| 427 gfx::PointF uvBottomRightClipped(0.32f, 0.4f); | |
| 428 | |
| 429 EXPECT_EQ(uvTopLeftClipped, quadAll->uv_top_left); | |
| 430 EXPECT_EQ(uvBottomRightClipped, quadAll->uv_bottom_right); | |
| 431 } | |
| 432 } | |
| 433 | |
| 388 TEST(DrawQuadTest, copyTileDrawQuad) | 434 TEST(DrawQuadTest, copyTileDrawQuad) |
| 389 { | 435 { |
| 390 gfx::Rect opaqueRect(33, 44, 22, 33); | 436 gfx::Rect opaqueRect(33, 44, 22, 33); |
| 391 unsigned resourceId = 104; | 437 unsigned resourceId = 104; |
| 392 gfx::RectF texCoordRect(31, 12, 54, 20); | 438 gfx::RectF texCoordRect(31, 12, 54, 20); |
| 393 gfx::Size textureSize(85, 32); | 439 gfx::Size textureSize(85, 32); |
| 394 bool swizzleContents = true; | 440 bool swizzleContents = true; |
| 395 bool leftEdgeAA = true; | 441 bool leftEdgeAA = true; |
| 396 bool topEdgeAA = true; | 442 bool topEdgeAA = true; |
| 397 bool rightEdgeAA = false; | 443 bool rightEdgeAA = false; |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 463 EXPECT_EQ(uPlane.resourceId, copyQuad->u_plane.resourceId); | 509 EXPECT_EQ(uPlane.resourceId, copyQuad->u_plane.resourceId); |
| 464 EXPECT_EQ(uPlane.size, copyQuad->u_plane.size); | 510 EXPECT_EQ(uPlane.size, copyQuad->u_plane.size); |
| 465 EXPECT_EQ(uPlane.format, copyQuad->u_plane.format); | 511 EXPECT_EQ(uPlane.format, copyQuad->u_plane.format); |
| 466 EXPECT_EQ(vPlane.resourceId, copyQuad->v_plane.resourceId); | 512 EXPECT_EQ(vPlane.resourceId, copyQuad->v_plane.resourceId); |
| 467 EXPECT_EQ(vPlane.size, copyQuad->v_plane.size); | 513 EXPECT_EQ(vPlane.size, copyQuad->v_plane.size); |
| 468 EXPECT_EQ(vPlane.format, copyQuad->v_plane.format); | 514 EXPECT_EQ(vPlane.format, copyQuad->v_plane.format); |
| 469 } | 515 } |
| 470 | 516 |
| 471 } // namespace | 517 } // namespace |
| 472 } // namespace cc | 518 } // namespace cc |
| OLD | NEW |