summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc18
1 files changed, 14 insertions, 4 deletions
diff --git a/chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc b/chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc
index d63206fe779..5067af15179 100644
--- a/chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc
+++ b/chromium/third_party/blink/renderer/core/layout/line/abstract_inline_text_box_test.cc
@@ -20,7 +20,9 @@ class AbstractInlineTextBoxTest : public testing::WithParamInterface<bool>,
AbstractInlineTextBoxTest() : ScopedLayoutNGForTest(GetParam()) {}
protected:
- bool LayoutNGEnabled() const { return GetParam(); }
+ bool LayoutNGEnabled() const {
+ return RuntimeEnabledFeatures::LayoutNGEnabled();
+ }
};
INSTANTIATE_TEST_SUITE_P(All, AbstractInlineTextBoxTest, testing::Bool());
@@ -116,9 +118,10 @@ TEST_P(AbstractInlineTextBoxTest, GetTextWithLineBreakAtTrailingWhiteSpace) {
TEST_P(AbstractInlineTextBoxTest, GetTextOffsetInContainer) {
// "&#10" is a Line Feed ("\n").
- SetBodyInnerHTML(
- R"HTML(<style>p { white-space: pre-line; }</style>
- <p id="paragraph">First sentence of the &#10; paragraph. Second sentence of &#10; the paragraph.</p>)HTML");
+ SetBodyInnerHTML(R"HTML(
+ <style>p { white-space: pre-line; }</style>
+ <p id="paragraph">First sentence of the &#10; paragraph. Second sentence of &#10; the paragraph. </p>
+ <br id='br'>)HTML");
const Element& paragraph = *GetDocument().getElementById("paragraph");
LayoutText& layout_text =
@@ -145,6 +148,13 @@ TEST_P(AbstractInlineTextBoxTest, GetTextOffsetInContainer) {
inline_text_box = inline_text_box->NextInlineTextBox()->NextInlineTextBox();
EXPECT_EQ("the paragraph.", inline_text_box->GetText());
EXPECT_EQ(52u, inline_text_box->TextOffsetInContainer(0));
+
+ // Ensure that calling TextOffsetInContainer on a br gives the correct result.
+ const Element& br_element = *GetDocument().getElementById("br");
+ LayoutText& br_text = *ToLayoutText(br_element.GetLayoutObject());
+ inline_text_box = br_text.FirstAbstractInlineTextBox();
+ EXPECT_EQ("\n", inline_text_box->GetText());
+ EXPECT_EQ(0u, inline_text_box->TextOffsetInContainer(0));
}
} // namespace blink