| Index: ui/views/view_unittest_aura.cc
|
| diff --git a/ui/views/view_unittest_aura.cc b/ui/views/view_unittest_aura.cc
|
| index f9f72f7d50032da9650d31e6d9fd7866bdc3334d..568a29cf264c2a6946a325393ce094db582e4c88 100644
|
| --- a/ui/views/view_unittest_aura.cc
|
| +++ b/ui/views/view_unittest_aura.cc
|
| @@ -111,6 +111,14 @@ TEST_F(ViewAuraTest, RecreateLayersWithWindows) {
|
| ui::Layer* v5_layer = w2_layer->children()[0];
|
| ASSERT_EQ("v6", ui::test::ChildLayerNamesAsString(*v5_layer));
|
|
|
| + // Verify the value of Widget::GetRootLayers(). It should only include layers
|
| + // from layer-backed Views descended from the Widget's root View.
|
| + std::vector<ui::Layer*> old_w1_root_sublayers = w1->GetRootLayers();
|
| + ASSERT_EQ(3u, old_w1_root_sublayers.size());
|
| + EXPECT_EQ(v1_layer, old_w1_root_sublayers[0]);
|
| + EXPECT_EQ(v4_layer, old_w1_root_sublayers[1]);
|
| + EXPECT_EQ(v7_layer, old_w1_root_sublayers[2]);
|
| +
|
| {
|
| scoped_ptr<ui::LayerTreeOwner> cloned_owner(
|
| wm::RecreateLayers(w1->GetNativeView()));
|
| @@ -142,16 +150,30 @@ TEST_F(ViewAuraTest, RecreateLayersWithWindows) {
|
| EXPECT_EQ(v8_layer, v7_layer->children()[0]);
|
| EXPECT_EQ(v9_layer, v7_layer->children()[1]);
|
|
|
| - // The cloned layers should have the same hierarchy as old.
|
| + // The cloned layers should have the same hierarchy as old, but with new
|
| + // ui::Layer instances.
|
| ui::Layer* w1_new_layer = w1->GetNativeView()->layer();
|
| EXPECT_EQ("w1", w1_new_layer->name());
|
| + EXPECT_NE(w1_layer, w1_new_layer);
|
| + ui::Layer* v1_new_layer = w1_new_layer->children()[0];
|
| + ui::Layer* v4_new_layer = w1_new_layer->children()[1];
|
| ASSERT_EQ("v1 v4 w2 v7", ui::test::ChildLayerNamesAsString(*w1_new_layer));
|
| + EXPECT_NE(v1_layer, v1_new_layer);
|
| + EXPECT_NE(v4_layer, v4_new_layer);
|
| ui::Layer* w2_new_layer = w1_new_layer->children()[2];
|
| ASSERT_EQ("v5", ui::test::ChildLayerNamesAsString(*w2_new_layer));
|
| ui::Layer* v5_new_layer = w2_new_layer->children()[0];
|
| ASSERT_EQ("v6", ui::test::ChildLayerNamesAsString(*v5_new_layer));
|
| ui::Layer* v7_new_layer = w1_new_layer->children()[3];
|
| ASSERT_EQ("v8 v9", ui::test::ChildLayerNamesAsString(*v7_new_layer));
|
| + EXPECT_NE(v7_layer, v7_new_layer);
|
| +
|
| + // Ensure Widget::GetRootLayers() is correctly updated.
|
| + std::vector<ui::Layer*> new_w1_root_sublayers = w1->GetRootLayers();
|
| + ASSERT_EQ(3u, new_w1_root_sublayers.size());
|
| + EXPECT_EQ(v1_new_layer, new_w1_root_sublayers[0]);
|
| + EXPECT_EQ(v4_new_layer, new_w1_root_sublayers[1]);
|
| + EXPECT_EQ(v7_new_layer, new_w1_root_sublayers[2]);
|
| }
|
| w1->CloseNow();
|
| }
|
|
|