Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(898)

Unified Diff: Source/core/dom/shadow/ComposedTreeTraversalTest.cpp

Issue 1308063008: Introduce ComposedTreeTraversal::previousPostOrder() (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: 2015-09-09T16:39:28 Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/dom/shadow/ComposedTreeTraversal.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/dom/shadow/ComposedTreeTraversalTest.cpp
diff --git a/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp b/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp
index 346e39dafafe5115c81caefac94ab3efe2c098f6..f653c7e3856362360150e652e0e1c11edd498012 100644
--- a/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp
+++ b/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp
@@ -324,4 +324,52 @@ TEST_F(ComposedTreeTraversalTest, lastWithin)
EXPECT_EQ(*m10->firstChild(), ComposedTreeTraversal::lastWithinOrSelf(*s12));
}
+TEST_F(ComposedTreeTraversalTest, previousPostOrder)
+{
+ const char* mainHTML =
+ "<div id='m0'>m0</div>"
+ "<div id='m1'>"
+ "<span id='m10'>m10</span>"
+ "<span id='m11'>m11</span>"
+ "</div>"
+ "<div id='m2'>m2</div>";
+ const char* shadowHTML =
+ "<content select='#m11'></content>"
+ "<a id='s11'>s11</a>"
+ "<a id='s12'>"
+ "<b id='s120'>s120</b>"
+ "<content select='#m10'></content>"
+ "</a>";
+ setupSampleHTML(mainHTML, shadowHTML, 1);
+
+ RefPtrWillBeRawPtr<Element> body = document().body();
+ RefPtrWillBeRawPtr<Element> m0 = body->querySelector("#m0", ASSERT_NO_EXCEPTION);
+ RefPtrWillBeRawPtr<Element> m1 = body->querySelector("#m1", ASSERT_NO_EXCEPTION);
+ RefPtrWillBeRawPtr<Element> m2 = body->querySelector("#m2", ASSERT_NO_EXCEPTION);
+
+ RefPtrWillBeRawPtr<Element> m10 = body->querySelector("#m10", ASSERT_NO_EXCEPTION);
+ RefPtrWillBeRawPtr<Element> m11 = body->querySelector("#m11", ASSERT_NO_EXCEPTION);
+
+ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = m1->openShadowRoot();
+ RefPtrWillBeRawPtr<Element> s11 = shadowRoot->querySelector("#s11", ASSERT_NO_EXCEPTION);
+ RefPtrWillBeRawPtr<Element> s12 = shadowRoot->querySelector("#s12", ASSERT_NO_EXCEPTION);
+ RefPtrWillBeRawPtr<Element> s120 = shadowRoot->querySelector("#s120", ASSERT_NO_EXCEPTION);
+
+ EXPECT_EQ(*m0->firstChild(), ComposedTreeTraversal::previousPostOrder(*m0));
+ EXPECT_EQ(*s12, ComposedTreeTraversal::previousPostOrder(*m1));
+ EXPECT_EQ(*m10->firstChild(), ComposedTreeTraversal::previousPostOrder(*m10));
+ EXPECT_EQ(*s120, ComposedTreeTraversal::previousPostOrder(*m10->firstChild()));
+ EXPECT_EQ(*s120, ComposedTreeTraversal::previousPostOrder(*m10->firstChild(), s12.get()));
+ EXPECT_EQ(*m11->firstChild(), ComposedTreeTraversal::previousPostOrder(*m11));
+ EXPECT_EQ(*m0, ComposedTreeTraversal::previousPostOrder(*m11->firstChild()));
+ EXPECT_EQ(nullptr, ComposedTreeTraversal::previousPostOrder(*m11->firstChild(), m11.get()));
+ EXPECT_EQ(*m2->firstChild(), ComposedTreeTraversal::previousPostOrder(*m2));
+
+ EXPECT_EQ(*s11->firstChild(), ComposedTreeTraversal::previousPostOrder(*s11));
+ EXPECT_EQ(*m10, ComposedTreeTraversal::previousPostOrder(*s12));
+ EXPECT_EQ(*s120->firstChild(), ComposedTreeTraversal::previousPostOrder(*s120));
+ EXPECT_EQ(*s11, ComposedTreeTraversal::previousPostOrder(*s120->firstChild()));
+ EXPECT_EQ(nullptr, ComposedTreeTraversal::previousPostOrder(*s120->firstChild(), s12.get()));
+}
+
} // namespace blink
« no previous file with comments | « Source/core/dom/shadow/ComposedTreeTraversal.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698