| Index: ui/accessibility/ax_node_position_unittest.cc
|
| diff --git a/ui/accessibility/ax_node_position_unittest.cc b/ui/accessibility/ax_node_position_unittest.cc
|
| index 277c9997a7ad73196d0a5fc16d646e8cb29c043b..c6641e0ba2ffaa31df4588b661680bf868e6b4eb 100644
|
| --- a/ui/accessibility/ax_node_position_unittest.cc
|
| +++ b/ui/accessibility/ax_node_position_unittest.cc
|
| @@ -153,7 +153,6 @@ void AXPositionTest::SetUp() {
|
| static_text1_.role = AX_ROLE_STATIC_TEXT;
|
| static_text1_.AddState(AX_STATE_EDITABLE);
|
| static_text1_.SetName("Line 1");
|
| - static_text1_.AddIntAttribute(AX_ATTR_NEXT_ON_LINE_ID, line_break_.id);
|
| static_text1_.child_ids.push_back(inline_box1_.id);
|
|
|
| inline_box1_.role = AX_ROLE_INLINE_TEXT_BOX;
|
| @@ -163,7 +162,6 @@ void AXPositionTest::SetUp() {
|
| std::vector<int32_t>{0, 5});
|
| inline_box1_.AddIntListAttribute(AX_ATTR_WORD_ENDS,
|
| std::vector<int32_t>{4, 6});
|
| - inline_box1_.AddIntAttribute(AX_ATTR_NEXT_ON_LINE_ID, line_break_.id);
|
|
|
| line_break_.role = AX_ROLE_LINE_BREAK;
|
| line_break_.AddState(AX_STATE_EDITABLE);
|
| @@ -364,6 +362,82 @@ TEST_F(AXPositionTest, AtEndOfAnchorWithTextPosition) {
|
| EXPECT_FALSE(text_position->AtEndOfAnchor());
|
| }
|
|
|
| +TEST_F(AXPositionTest, AtStartOfLineWithTextPosition) {
|
| + // An upstream affinity should not affect the outcome since there is no soft
|
| + // line break.
|
| + TestPositionType text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box1_.id, 0 /* text_offset */,
|
| + AX_TEXT_AFFINITY_UPSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_TRUE(text_position->AtStartOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box1_.id, 1 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtStartOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, line_break_.id, 0 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtStartOfLine());
|
| +
|
| + // An "after text" position anchored at the line break should visually be the
|
| + // same as a text position at the start of the next line.
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, line_break_.id, 1 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_TRUE(text_position->AtStartOfLine());
|
| +
|
| + // An upstream affinity should not affect the outcome since there is no soft
|
| + // line break.
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box2_.id, 0 /* text_offset */,
|
| + AX_TEXT_AFFINITY_UPSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_TRUE(text_position->AtStartOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box2_.id, 1 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtStartOfLine());
|
| +}
|
| +
|
| +TEST_F(AXPositionTest, AtEndOfLineWithTextPosition) {
|
| + TestPositionType text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box1_.id, 5 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtEndOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box1_.id, 6 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_TRUE(text_position->AtEndOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, line_break_.id, 0 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtEndOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box2_.id, 5 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_FALSE(text_position->AtEndOfLine());
|
| +
|
| + text_position = AXNodePosition::CreateTextPosition(
|
| + tree_.data().tree_id, inline_box2_.id, 6 /* text_offset */,
|
| + AX_TEXT_AFFINITY_DOWNSTREAM);
|
| + ASSERT_NE(nullptr, text_position);
|
| + EXPECT_TRUE(text_position->AtEndOfLine());
|
| +}
|
| +
|
| TEST_F(AXPositionTest, LowestCommonAncestor) {
|
| TestPositionType null_position = AXNodePosition::CreateNullPosition();
|
| ASSERT_NE(nullptr, null_position);
|
|
|