Index: third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversalTest.cpp |
diff --git a/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversalTest.cpp b/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversalTest.cpp |
index 5057167787d2ba3339901ef5fb2f6d8419db5ccd..ab151149256f6b275cbf58d4940a26687192401d 100644 |
--- a/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversalTest.cpp |
+++ b/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversalTest.cpp |
@@ -136,4 +136,24 @@ TEST_F(LayoutTreeBuilderTraversalTest, displayContentsChildrenNested) { |
LayoutTreeBuilderTraversal::previousSiblingLayoutObject(*last)); |
} |
+TEST_F(LayoutTreeBuilderTraversalTest, limits) { |
+ const char* const html = |
+ "<div></div>" |
+ "<div style='display: contents'></div>" |
+ "<div style='display: contents'>" |
+ "<div style='display: contents'>" |
+ "</div>" |
+ "</div>" |
+ "<div id='shouldNotBeFound'></div>"; |
+ |
+ setupSampleHTML(html); |
+ |
+ Element* first = document().querySelector("div"); |
+ |
+ EXPECT_TRUE(first->layoutObject()); |
+ LayoutObject* nextSibling = |
+ LayoutTreeBuilderTraversal::nextSiblingLayoutObject(*first, 2); |
+ EXPECT_FALSE(nextSibling); // Should not overrecurse |
+} |
+ |
} // namespace blink |