| Index: cc/quads/draw_quad_unittest.cc
|
| diff --git a/cc/quads/draw_quad_unittest.cc b/cc/quads/draw_quad_unittest.cc
|
| index 281da3b5aa39e332060055670d5bf117ffdb17fb..f9348878fdb79af39c4144f8704c06d36c308778 100644
|
| --- a/cc/quads/draw_quad_unittest.cc
|
| +++ b/cc/quads/draw_quad_unittest.cc
|
| @@ -9,12 +9,14 @@
|
| #include "cc/quads/checkerboard_draw_quad.h"
|
| #include "cc/quads/debug_border_draw_quad.h"
|
| #include "cc/quads/io_surface_draw_quad.h"
|
| +#include "cc/quads/picture_draw_quad.h"
|
| #include "cc/quads/render_pass_draw_quad.h"
|
| #include "cc/quads/solid_color_draw_quad.h"
|
| #include "cc/quads/stream_video_draw_quad.h"
|
| #include "cc/quads/texture_draw_quad.h"
|
| #include "cc/quads/tile_draw_quad.h"
|
| #include "cc/quads/yuv_video_draw_quad.h"
|
| +#include "cc/resources/picture_pile_impl.h"
|
| #include "cc/test/geometry_test_utils.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations.h"
|
| @@ -655,6 +657,50 @@ TEST(DrawQuadTest, CopyYUVVideoDrawQuad) {
|
| EXPECT_EQ(v_plane.format, copy_quad->v_plane.format);
|
| }
|
|
|
| +TEST(DrawQuadTest, CopyPictureDrawQuad) {
|
| + gfx::Rect opaque_rect(33, 44, 22, 33);
|
| + unsigned resource_id = 104;
|
| + gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f);
|
| + gfx::Size texture_size(85, 32);
|
| + bool swizzle_contents = true;
|
| + gfx::Rect content_rect(30, 40, 20, 30);
|
| + float contents_scale = 3.141592f;
|
| + scoped_refptr<PicturePileImpl> picture_pile = PicturePileImpl::Create(false);
|
| + CREATE_SHARED_STATE();
|
| +
|
| + CREATE_QUAD_7_NEW(PictureDrawQuad,
|
| + opaque_rect,
|
| + tex_coord_rect,
|
| + texture_size,
|
| + swizzle_contents,
|
| + content_rect,
|
| + contents_scale,
|
| + picture_pile);
|
| + EXPECT_EQ(DrawQuad::PICTURE_CONTENT, copy_quad->material);
|
| + EXPECT_RECT_EQ(opaque_rect, copy_quad->opaque_rect);
|
| + EXPECT_EQ(tex_coord_rect, copy_quad->tex_coord_rect);
|
| + EXPECT_EQ(texture_size, copy_quad->texture_size);
|
| + EXPECT_EQ(swizzle_contents, copy_quad->swizzle_contents);
|
| + EXPECT_RECT_EQ(content_rect, copy_quad->content_rect);
|
| + EXPECT_EQ(contents_scale, copy_quad->contents_scale);
|
| + EXPECT_EQ(picture_pile, copy_quad->picture_pile);
|
| +
|
| + CREATE_QUAD_6_ALL(PictureDrawQuad,
|
| + tex_coord_rect,
|
| + texture_size,
|
| + swizzle_contents,
|
| + content_rect,
|
| + contents_scale,
|
| + picture_pile);
|
| + EXPECT_EQ(DrawQuad::PICTURE_CONTENT, copy_quad->material);
|
| + EXPECT_EQ(tex_coord_rect, copy_quad->tex_coord_rect);
|
| + EXPECT_EQ(texture_size, copy_quad->texture_size);
|
| + EXPECT_EQ(swizzle_contents, copy_quad->swizzle_contents);
|
| + EXPECT_RECT_EQ(content_rect, copy_quad->content_rect);
|
| + EXPECT_EQ(contents_scale, copy_quad->contents_scale);
|
| + EXPECT_EQ(picture_pile, copy_quad->picture_pile);
|
| +}
|
| +
|
| class DrawQuadIteratorTest : public testing::Test {
|
| protected:
|
| ResourceProvider::ResourceId IncrementResourceId(
|
| @@ -824,5 +870,27 @@ TEST_F(DrawQuadIteratorTest, YUVVideoDrawQuad) {
|
| EXPECT_EQ(v_plane.resource_id + 1, quad_new->v_plane.resource_id);
|
| }
|
|
|
| +TEST_F(DrawQuadIteratorTest, PictureDrawQuad) {
|
| + gfx::Rect opaque_rect(33, 44, 22, 33);
|
| + unsigned resource_id = 104;
|
| + gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f);
|
| + gfx::Size texture_size(85, 32);
|
| + bool swizzle_contents = true;
|
| + gfx::Rect content_rect(30, 40, 20, 30);
|
| + float contents_scale = 3.141592f;
|
| + scoped_refptr<PicturePileImpl> picture_pile = PicturePileImpl::Create(false);
|
| +
|
| + CREATE_SHARED_STATE();
|
| + CREATE_QUAD_7_NEW(PictureDrawQuad,
|
| + opaque_rect,
|
| + tex_coord_rect,
|
| + texture_size,
|
| + swizzle_contents,
|
| + content_rect,
|
| + contents_scale,
|
| + picture_pile);
|
| + EXPECT_EQ(0, IterateAndCount(quad_new.get()));
|
| +}
|
| +
|
| } // namespace
|
| } // namespace cc
|
|
|