Chromium Code Reviews| Index: cc/layers/layer_unittest.cc |
| diff --git a/cc/layers/layer_unittest.cc b/cc/layers/layer_unittest.cc |
| index 7a1cb796363805e0870cbf0a7befec93625cfa0f..1dd6ca3b8b5717727ded1ddd1b7bd7a1602ef4b8 100644 |
| --- a/cc/layers/layer_unittest.cc |
| +++ b/cc/layers/layer_unittest.cc |
| @@ -336,6 +336,56 @@ TEST_F(LayerTest, ReplaceChildWithNewChildThatHasOtherParent) { |
| EXPECT_FALSE(child2_->parent()); |
| } |
| +TEST_F(LayerTest, DeleteRemovedScrollParent) { |
| + scoped_refptr<Layer> parent = Layer::Create(); |
| + scoped_refptr<Layer> child1 = Layer::Create(); |
| + scoped_refptr<Layer> child2 = Layer::Create(); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, layer_tree_host_->SetRootLayer(parent)); |
| + |
| + ASSERT_EQ(0U, parent->children().size()); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, parent->InsertChild(child1, 0)); |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, parent->InsertChild(child2, 1)); |
| + |
| + ASSERT_EQ(2U, parent->children().size()); |
| + EXPECT_EQ(child1, parent->children()[0]); |
| + EXPECT_EQ(child2, parent->children()[1]); |
| + |
| + EXPECT_SET_NEEDS_COMMIT(2, child1->SetScrollParent(child2.get())); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, child2->RemoveFromParent()); |
| + |
| + EXPECT_SET_NEEDS_COMMIT(1, child2 = NULL); |
|
danakj
2014/09/13 12:49:42
can you also reset child1->needs_push_properties()
Ian Vollick
2014/09/13 14:51:23
Done.
|
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, layer_tree_host_->SetRootLayer(NULL)); |
| +} |
| + |
| +TEST_F(LayerTest, DeleteRemovedScrollChild) { |
| + scoped_refptr<Layer> parent = Layer::Create(); |
| + scoped_refptr<Layer> child1 = Layer::Create(); |
| + scoped_refptr<Layer> child2 = Layer::Create(); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, layer_tree_host_->SetRootLayer(parent)); |
| + |
| + ASSERT_EQ(0U, parent->children().size()); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, parent->InsertChild(child1, 0)); |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, parent->InsertChild(child2, 1)); |
| + |
| + ASSERT_EQ(2U, parent->children().size()); |
| + EXPECT_EQ(child1, parent->children()[0]); |
| + EXPECT_EQ(child2, parent->children()[1]); |
| + |
| + EXPECT_SET_NEEDS_COMMIT(2, child1->SetScrollParent(child2.get())); |
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, child1->RemoveFromParent()); |
| + |
| + EXPECT_SET_NEEDS_COMMIT(1, child1 = NULL); |
|
danakj
2014/09/13 12:49:42
can you also reset child2->needs_push_properties()
Ian Vollick
2014/09/13 14:51:23
Done.
|
| + |
| + EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, layer_tree_host_->SetRootLayer(NULL)); |
| +} |
| + |
| TEST_F(LayerTest, ReplaceChildWithSameChild) { |
| CreateSimpleTestTree(); |