Index: cc/layers/solid_color_layer_impl_unittest.cc |
diff --git a/cc/layers/solid_color_layer_impl_unittest.cc b/cc/layers/solid_color_layer_impl_unittest.cc |
index 768fae44f928673205616fc778a403689c98b011..320345f36d1860b8915c32bbb8fe082b7167f6f2 100644 |
--- a/cc/layers/solid_color_layer_impl_unittest.cc |
+++ b/cc/layers/solid_color_layer_impl_unittest.cc |
@@ -102,6 +102,31 @@ TEST(SolidColorLayerImplTest, VerifyCorrectOpacityInQuad) { |
->opacity()); |
} |
+TEST(SolidColorLayerImplTest, VerifyCorrectBlendModeInQuad) { |
+ const SkXfermode::Mode blend_mode = SkXfermode::kMultiply_Mode; |
+ |
+ scoped_ptr<RenderPass> render_pass = RenderPass::Create(); |
+ |
+ gfx::Size layer_size = gfx::Size(100, 100); |
+ gfx::Rect visible_content_rect = gfx::Rect(layer_size); |
+ |
+ FakeImplProxy proxy; |
+ TestSharedBitmapManager shared_bitmap_manager; |
+ FakeLayerTreeHostImpl host_impl(&proxy, &shared_bitmap_manager); |
+ scoped_ptr<SolidColorLayerImpl> layer = |
+ SolidColorLayerImpl::Create(host_impl.active_tree(), 1); |
+ layer->SetBounds(layer_size); |
+ layer->SetContentBounds(layer_size); |
+ layer->draw_properties().blend_mode = blend_mode; |
+ |
+ AppendQuadsData data; |
+ layer->AppendQuads(render_pass.get(), Occlusion(), &data); |
+ |
+ ASSERT_EQ(render_pass->quad_list.size(), 1U); |
+ EXPECT_EQ(blend_mode, |
+ render_pass->quad_list.front()->shared_quad_state->blend_mode); |
+} |
+ |
TEST(SolidColorLayerImplTest, VerifyOpaqueRect) { |
gfx::Size layer_size = gfx::Size(100, 100); |
gfx::Rect visible_content_rect = gfx::Rect(layer_size); |