OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "base/message_loop/message_loop.h" | 5 #include "base/message_loop/message_loop.h" |
6 #include "cc/input/selection.h" | 6 #include "cc/input/selection.h" |
7 #include "cc/ipc/traits_test_service.mojom.h" | 7 #include "cc/ipc/traits_test_service.mojom.h" |
8 #include "cc/quads/debug_border_draw_quad.h" | 8 #include "cc/quads/debug_border_draw_quad.h" |
9 #include "cc/quads/render_pass.h" | 9 #include "cc/quads/render_pass.h" |
10 #include "cc/quads/render_pass_draw_quad.h" | 10 #include "cc/quads/render_pass_draw_quad.h" |
11 #include "cc/quads/render_pass_id.h" | 11 #include "cc/quads/render_pass_id.h" |
12 #include "cc/quads/solid_color_draw_quad.h" | 12 #include "cc/quads/solid_color_draw_quad.h" |
13 #include "cc/quads/stream_video_draw_quad.h" | 13 #include "cc/quads/stream_video_draw_quad.h" |
14 #include "cc/quads/surface_draw_quad.h" | 14 #include "cc/quads/surface_draw_quad.h" |
15 #include "cc/quads/texture_draw_quad.h" | 15 #include "cc/quads/texture_draw_quad.h" |
16 #include "cc/quads/yuv_video_draw_quad.h" | 16 #include "cc/quads/yuv_video_draw_quad.h" |
| 17 #include "media/base/video_color_space.h" |
17 #include "mojo/public/cpp/bindings/binding_set.h" | 18 #include "mojo/public/cpp/bindings/binding_set.h" |
18 #include "testing/gtest/include/gtest/gtest.h" | 19 #include "testing/gtest/include/gtest/gtest.h" |
19 #include "third_party/skia/include/core/SkString.h" | 20 #include "third_party/skia/include/core/SkString.h" |
20 #include "third_party/skia/include/effects/SkDropShadowImageFilter.h" | 21 #include "third_party/skia/include/effects/SkDropShadowImageFilter.h" |
21 | 22 |
22 namespace cc { | 23 namespace cc { |
23 | 24 |
24 namespace { | 25 namespace { |
25 | 26 |
26 class StructTraitsTest : public testing::Test, public mojom::TraitsTestService { | 27 class StructTraitsTest : public testing::Test, public mojom::TraitsTestService { |
(...skipping 811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
838 const bool needs_blending = true; | 839 const bool needs_blending = true; |
839 const gfx::RectF ya_tex_coord_rect(1234.1f, 5678.2f, 9101112.3f, 13141516.4f); | 840 const gfx::RectF ya_tex_coord_rect(1234.1f, 5678.2f, 9101112.3f, 13141516.4f); |
840 const gfx::RectF uv_tex_coord_rect(1234.1f, 4321.2f, 1357.3f, 7531.4f); | 841 const gfx::RectF uv_tex_coord_rect(1234.1f, 4321.2f, 1357.3f, 7531.4f); |
841 const gfx::Size ya_tex_size(1234, 5678); | 842 const gfx::Size ya_tex_size(1234, 5678); |
842 const gfx::Size uv_tex_size(4321, 8765); | 843 const gfx::Size uv_tex_size(4321, 8765); |
843 const uint32_t y_plane_resource_id = 1337; | 844 const uint32_t y_plane_resource_id = 1337; |
844 const uint32_t u_plane_resource_id = 1234; | 845 const uint32_t u_plane_resource_id = 1234; |
845 const uint32_t v_plane_resource_id = 2468; | 846 const uint32_t v_plane_resource_id = 2468; |
846 const uint32_t a_plane_resource_id = 7890; | 847 const uint32_t a_plane_resource_id = 7890; |
847 const YUVVideoDrawQuad::ColorSpace color_space = YUVVideoDrawQuad::JPEG; | 848 const YUVVideoDrawQuad::ColorSpace color_space = YUVVideoDrawQuad::JPEG; |
| 849 const media::VideoColorSpace video_color_space(media::COLOR_SPACE_JPEG); |
848 const float resource_offset = 1337.5f; | 850 const float resource_offset = 1337.5f; |
849 const float resource_multiplier = 1234.6f; | 851 const float resource_multiplier = 1234.6f; |
850 | 852 |
851 SharedQuadState sqs; | 853 SharedQuadState sqs; |
852 QuadList input; | 854 QuadList input; |
853 YUVVideoDrawQuad* quad = input.AllocateAndConstruct<YUVVideoDrawQuad>(); | 855 YUVVideoDrawQuad* quad = input.AllocateAndConstruct<YUVVideoDrawQuad>(); |
854 quad->SetAll(&sqs, rect, opaque_rect, visible_rect, needs_blending, | 856 quad->SetAll(&sqs, rect, opaque_rect, visible_rect, needs_blending, |
855 ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size, uv_tex_size, | 857 ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size, uv_tex_size, |
856 y_plane_resource_id, u_plane_resource_id, v_plane_resource_id, | 858 y_plane_resource_id, u_plane_resource_id, v_plane_resource_id, |
857 a_plane_resource_id, color_space, resource_offset, | 859 a_plane_resource_id, color_space, video_color_space, |
858 resource_multiplier); | 860 resource_offset, resource_multiplier); |
859 | 861 |
860 mojom::TraitsTestServicePtr proxy = GetTraitsTestProxy(); | 862 mojom::TraitsTestServicePtr proxy = GetTraitsTestProxy(); |
861 QuadList output; | 863 QuadList output; |
862 proxy->EchoQuadList(input, &output); | 864 proxy->EchoQuadList(input, &output); |
863 | 865 |
864 ASSERT_EQ(input.size(), output.size()); | 866 ASSERT_EQ(input.size(), output.size()); |
865 | 867 |
866 ASSERT_EQ(material, output.ElementAt(0)->material); | 868 ASSERT_EQ(material, output.ElementAt(0)->material); |
867 const YUVVideoDrawQuad* out_quad = | 869 const YUVVideoDrawQuad* out_quad = |
868 YUVVideoDrawQuad::MaterialCast(output.ElementAt(0)); | 870 YUVVideoDrawQuad::MaterialCast(output.ElementAt(0)); |
869 EXPECT_EQ(rect, out_quad->rect); | 871 EXPECT_EQ(rect, out_quad->rect); |
870 EXPECT_EQ(opaque_rect, out_quad->opaque_rect); | 872 EXPECT_EQ(opaque_rect, out_quad->opaque_rect); |
871 EXPECT_EQ(visible_rect, out_quad->visible_rect); | 873 EXPECT_EQ(visible_rect, out_quad->visible_rect); |
872 EXPECT_EQ(needs_blending, out_quad->needs_blending); | 874 EXPECT_EQ(needs_blending, out_quad->needs_blending); |
873 EXPECT_EQ(ya_tex_coord_rect, out_quad->ya_tex_coord_rect); | 875 EXPECT_EQ(ya_tex_coord_rect, out_quad->ya_tex_coord_rect); |
874 EXPECT_EQ(uv_tex_coord_rect, out_quad->uv_tex_coord_rect); | 876 EXPECT_EQ(uv_tex_coord_rect, out_quad->uv_tex_coord_rect); |
875 EXPECT_EQ(ya_tex_size, out_quad->ya_tex_size); | 877 EXPECT_EQ(ya_tex_size, out_quad->ya_tex_size); |
876 EXPECT_EQ(uv_tex_size, out_quad->uv_tex_size); | 878 EXPECT_EQ(uv_tex_size, out_quad->uv_tex_size); |
877 EXPECT_EQ(y_plane_resource_id, out_quad->y_plane_resource_id()); | 879 EXPECT_EQ(y_plane_resource_id, out_quad->y_plane_resource_id()); |
878 EXPECT_EQ(u_plane_resource_id, out_quad->u_plane_resource_id()); | 880 EXPECT_EQ(u_plane_resource_id, out_quad->u_plane_resource_id()); |
879 EXPECT_EQ(v_plane_resource_id, out_quad->v_plane_resource_id()); | 881 EXPECT_EQ(v_plane_resource_id, out_quad->v_plane_resource_id()); |
880 EXPECT_EQ(a_plane_resource_id, out_quad->a_plane_resource_id()); | 882 EXPECT_EQ(a_plane_resource_id, out_quad->a_plane_resource_id()); |
881 EXPECT_EQ(color_space, out_quad->color_space); | 883 EXPECT_EQ(color_space, out_quad->color_space); |
882 EXPECT_EQ(resource_offset, out_quad->resource_offset); | 884 EXPECT_EQ(resource_offset, out_quad->resource_offset); |
883 EXPECT_EQ(resource_multiplier, out_quad->resource_multiplier); | 885 EXPECT_EQ(resource_multiplier, out_quad->resource_multiplier); |
884 } | 886 } |
885 | 887 |
886 } // namespace cc | 888 } // namespace cc |
OLD | NEW |