Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9560)

Unified Diff: cc/ipc/struct_traits_unittest.cc

Issue 2032643002: Implement cc::SharedQuadState StructTraits (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed rockot's comment Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/ipc/struct_traits_unittest.cc
diff --git a/cc/ipc/struct_traits_unittest.cc b/cc/ipc/struct_traits_unittest.cc
index d84ff733ef528903f63e9a6771502f05f4275b30..0182f694135327c959c2367bcd2ffa426d2de4e0 100644
--- a/cc/ipc/struct_traits_unittest.cc
+++ b/cc/ipc/struct_traits_unittest.cc
@@ -39,6 +39,12 @@ class StructTraitsTest : public testing::Test, public mojom::TraitsTestService {
callback.Run(r);
}
+ void EchoSharedQuadState(
+ const SharedQuadState& s,
+ const EchoSharedQuadStateCallback& callback) override {
+ callback.Run(s);
+ }
+
void EchoSurfaceId(const SurfaceId& s,
const EchoSurfaceIdCallback& callback) override {
callback.Run(s);
@@ -128,6 +134,34 @@ TEST_F(StructTraitsTest, SurfaceId) {
EXPECT_EQ(nonce, output.nonce());
}
+TEST_F(StructTraitsTest, SharedQuadState) {
+ const gfx::Transform quad_to_target_transform(1.f, 2.f, 3.f, 4.f, 5.f, 6.f,
+ 7.f, 8.f, 9.f, 10.f, 11.f, 12.f,
+ 13.f, 14.f, 15.f, 16.f);
+ const gfx::Size layer_bounds(1234, 5678);
+ const gfx::Rect visible_layer_rect(12, 34, 56, 78);
+ const gfx::Rect clip_rect(123, 456, 789, 101112);
+ const bool is_clipped = true;
+ const float opacity = 0.9f;
+ const SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode;
+ const int sorting_context_id = 1337;
+ SharedQuadState input_sqs;
+ input_sqs.SetAll(quad_to_target_transform, layer_bounds, visible_layer_rect,
+ clip_rect, is_clipped, opacity, blend_mode,
+ sorting_context_id);
+ mojom::TraitsTestServicePtr proxy = GetTraitsTestProxy();
+ SharedQuadState output_sqs;
+ proxy->EchoSharedQuadState(input_sqs, &output_sqs);
+ EXPECT_EQ(quad_to_target_transform, output_sqs.quad_to_target_transform);
+ EXPECT_EQ(layer_bounds, output_sqs.quad_layer_bounds);
+ EXPECT_EQ(visible_layer_rect, output_sqs.visible_quad_layer_rect);
+ EXPECT_EQ(clip_rect, output_sqs.clip_rect);
+ EXPECT_EQ(is_clipped, output_sqs.is_clipped);
+ EXPECT_EQ(opacity, output_sqs.opacity);
+ EXPECT_EQ(blend_mode, output_sqs.blend_mode);
+ EXPECT_EQ(sorting_context_id, output_sqs.sorting_context_id);
+}
+
TEST_F(StructTraitsTest, TransferableResource) {
const uint32_t id = 1337;
const ResourceFormat format = ALPHA_8;

Powered by Google App Engine
This is Rietveld 408576698