| OLD | NEW | 
|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "core/editing/EditingUtilities.h" | 5 #include "core/editing/EditingUtilities.h" | 
| 6 | 6 | 
| 7 #include "core/dom/StaticNodeList.h" | 7 #include "core/dom/StaticNodeList.h" | 
| 8 #include "core/editing/EditingTestBase.h" | 8 #include "core/editing/EditingTestBase.h" | 
| 9 | 9 | 
| 10 namespace blink { | 10 namespace blink { | 
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 57   EXPECT_EQ( | 57   EXPECT_EQ( | 
| 58       Position::FirstPositionInNode(*host), | 58       Position::FirstPositionInNode(*host), | 
| 59       FirstEditablePositionAfterPositionInRoot(Position(three, 0), *host)); | 59       FirstEditablePositionAfterPositionInRoot(Position(three, 0), *host)); | 
| 60   EXPECT_EQ( | 60   EXPECT_EQ( | 
| 61       Position(one->firstChild(), 0), | 61       Position(one->firstChild(), 0), | 
| 62       FirstEditableVisiblePositionAfterPositionInRoot(Position(three, 0), *host) | 62       FirstEditableVisiblePositionAfterPositionInRoot(Position(three, 0), *host) | 
| 63           .DeepEquivalent()); | 63           .DeepEquivalent()); | 
| 64   EXPECT_EQ(PositionInFlatTree::AfterNode(*host), | 64   EXPECT_EQ(PositionInFlatTree::AfterNode(*host), | 
| 65             FirstEditablePositionAfterPositionInRoot( | 65             FirstEditablePositionAfterPositionInRoot( | 
| 66                 PositionInFlatTree(three, 0), *host)); | 66                 PositionInFlatTree(three, 0), *host)); | 
| 67   EXPECT_EQ(PositionInFlatTree::LastPositionInNode(host), | 67   EXPECT_EQ(PositionInFlatTree::LastPositionInNode(*host), | 
| 68             FirstEditableVisiblePositionAfterPositionInRoot( | 68             FirstEditableVisiblePositionAfterPositionInRoot( | 
| 69                 PositionInFlatTree(three, 0), *host) | 69                 PositionInFlatTree(three, 0), *host) | 
| 70                 .DeepEquivalent()); | 70                 .DeepEquivalent()); | 
| 71 } | 71 } | 
| 72 | 72 | 
| 73 TEST_F(EditingUtilitiesTest, enclosingBlock) { | 73 TEST_F(EditingUtilitiesTest, enclosingBlock) { | 
| 74   const char* body_content = "<p id='host'><b id='one'>11</b></p>"; | 74   const char* body_content = "<p id='host'><b id='one'>11</b></p>"; | 
| 75   const char* shadow_content = | 75   const char* shadow_content = | 
| 76       "<content select=#two></content><div id='three'><content " | 76       "<content select=#two></content><div id='three'><content " | 
| 77       "select=#one></content></div>"; | 77       "select=#one></content></div>"; | 
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 131   Node* host = GetDocument().getElementById("host"); | 131   Node* host = GetDocument().getElementById("host"); | 
| 132   Node* table = GetDocument().getElementById("table"); | 132   Node* table = GetDocument().getElementById("table"); | 
| 133 | 133 | 
| 134   EXPECT_EQ(table, TableElementJustBefore(VisiblePosition::AfterNode(*table))); | 134   EXPECT_EQ(table, TableElementJustBefore(VisiblePosition::AfterNode(*table))); | 
| 135   EXPECT_EQ(table, TableElementJustBefore( | 135   EXPECT_EQ(table, TableElementJustBefore( | 
| 136                        VisiblePositionInFlatTree::AfterNode(*table))); | 136                        VisiblePositionInFlatTree::AfterNode(*table))); | 
| 137 | 137 | 
| 138   EXPECT_EQ(table, | 138   EXPECT_EQ(table, | 
| 139             TableElementJustBefore(VisiblePosition::LastPositionInNode(table))); | 139             TableElementJustBefore(VisiblePosition::LastPositionInNode(table))); | 
| 140   EXPECT_EQ(table, TableElementJustBefore(CreateVisiblePosition( | 140   EXPECT_EQ(table, TableElementJustBefore(CreateVisiblePosition( | 
| 141                        PositionInFlatTree::LastPositionInNode(table)))); | 141                        PositionInFlatTree::LastPositionInNode(*table)))); | 
| 142 | 142 | 
| 143   EXPECT_EQ(nullptr, | 143   EXPECT_EQ(nullptr, | 
| 144             TableElementJustBefore(CreateVisiblePosition(Position(host, 2)))); | 144             TableElementJustBefore(CreateVisiblePosition(Position(host, 2)))); | 
| 145   EXPECT_EQ(table, TableElementJustBefore( | 145   EXPECT_EQ(table, TableElementJustBefore( | 
| 146                        CreateVisiblePosition(PositionInFlatTree(host, 2)))); | 146                        CreateVisiblePosition(PositionInFlatTree(host, 2)))); | 
| 147 | 147 | 
| 148   EXPECT_EQ(nullptr, TableElementJustBefore(VisiblePosition::AfterNode(*host))); | 148   EXPECT_EQ(nullptr, TableElementJustBefore(VisiblePosition::AfterNode(*host))); | 
| 149   EXPECT_EQ(nullptr, TableElementJustBefore( | 149   EXPECT_EQ(nullptr, TableElementJustBefore( | 
| 150                          VisiblePositionInFlatTree::AfterNode(*host))); | 150                          VisiblePositionInFlatTree::AfterNode(*host))); | 
| 151 | 151 | 
| 152   EXPECT_EQ(nullptr, | 152   EXPECT_EQ(nullptr, | 
| 153             TableElementJustBefore(VisiblePosition::LastPositionInNode(host))); | 153             TableElementJustBefore(VisiblePosition::LastPositionInNode(host))); | 
| 154   EXPECT_EQ(table, TableElementJustBefore(CreateVisiblePosition( | 154   EXPECT_EQ(table, TableElementJustBefore(CreateVisiblePosition( | 
| 155                        PositionInFlatTree::LastPositionInNode(host)))); | 155                        PositionInFlatTree::LastPositionInNode(*host)))); | 
| 156 } | 156 } | 
| 157 | 157 | 
| 158 TEST_F(EditingUtilitiesTest, lastEditablePositionBeforePositionInRoot) { | 158 TEST_F(EditingUtilitiesTest, lastEditablePositionBeforePositionInRoot) { | 
| 159   const char* body_content = | 159   const char* body_content = | 
| 160       "<p id='host' contenteditable><b id='one'>1</b><b id='two'>22</b></p>"; | 160       "<p id='host' contenteditable><b id='one'>1</b><b id='two'>22</b></p>"; | 
| 161   const char* shadow_content = | 161   const char* shadow_content = | 
| 162       "<content select=#two></content><content select=#one></content><b " | 162       "<content select=#two></content><content select=#one></content><b " | 
| 163       "id='three'>333</b>"; | 163       "id='three'>333</b>"; | 
| 164   SetBodyContent(body_content); | 164   SetBodyContent(body_content); | 
| 165   ShadowRoot* shadow_root = SetShadowContent(shadow_content, "host"); | 165   ShadowRoot* shadow_root = SetShadowContent(shadow_content, "host"); | 
| (...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 899                                PositionMoveType::kBackwardDeletion)); | 899                                PositionMoveType::kBackwardDeletion)); | 
| 900   EXPECT_EQ(Position(node, 2), | 900   EXPECT_EQ(Position(node, 2), | 
| 901             PreviousPositionOf(Position(node, 3), | 901             PreviousPositionOf(Position(node, 3), | 
| 902                                PositionMoveType::kBackwardDeletion)); | 902                                PositionMoveType::kBackwardDeletion)); | 
| 903   EXPECT_EQ(Position(node, 0), | 903   EXPECT_EQ(Position(node, 0), | 
| 904             PreviousPositionOf(Position(node, 1), | 904             PreviousPositionOf(Position(node, 1), | 
| 905                                PositionMoveType::kBackwardDeletion)); | 905                                PositionMoveType::kBackwardDeletion)); | 
| 906 } | 906 } | 
| 907 | 907 | 
| 908 }  // namespace blink | 908 }  // namespace blink | 
| OLD | NEW | 
|---|