| Index: third_party/WebKit/LayoutTests/shadow-dom/node-getRootNode.html
|
| diff --git a/third_party/WebKit/LayoutTests/shadow-dom/node-getRootNode.html b/third_party/WebKit/LayoutTests/shadow-dom/node-getRootNode.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d2e34cdac2e89ef067d5ec8d97c961692252e36f
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/shadow-dom/node-getRootNode.html
|
| @@ -0,0 +1,63 @@
|
| +<!DOCTYPE html>
|
| +<script src="../resources/testharness.js"></script>
|
| +<script src="../resources/testharnessreport.js"></script>
|
| +<script src="resources/shadow-dom.js"></script>
|
| +
|
| +<div id="root0">
|
| + <div id="host1">
|
| + <template id="root1" data-mode="open">
|
| + <div id="host2">
|
| + <template id="root2" data-mode="open">
|
| + <div id="parent">
|
| + <div id="child"></div>
|
| + </div>
|
| + </template>
|
| + </div>
|
| + </template>
|
| + </div>
|
| +</div>
|
| +
|
| +<script>
|
| +test(() => {
|
| + let n = createTestTree(root0);
|
| + document.body.appendChild(n.host1);
|
| + assert_equals(n.host1.getRootNode(), document);
|
| + assert_equals(n.root1.getRootNode(), n.root1);
|
| + assert_equals(n.host2.getRootNode(), n.root1);
|
| + assert_equals(n.root2.getRootNode(), n.root2);
|
| + assert_equals(n.parent.getRootNode(), n.root2);
|
| + assert_equals(n.child.getRootNode(), n.root2);
|
| +
|
| + assert_equals(n.host1.getRootNode({ composed: true }), document);
|
| + assert_equals(n.root1.getRootNode({ composed: true }), document);
|
| + assert_equals(n.host2.getRootNode({ composed: true }), document);
|
| + assert_equals(n.root2.getRootNode({ composed: true }), document);
|
| + assert_equals(n.parent.getRootNode({ composed: true }), document);
|
| + assert_equals(n.child.getRootNode({ composed: true }), document);
|
| + n.host1.remove();
|
| +}, 'getRootNode(...) in a connected tree.');
|
| +
|
| +test(() => {
|
| + let n = createTestTree(root0);
|
| + assert_equals(n.root0.getRootNode(), n.root0);
|
| + assert_equals(n.host1.getRootNode(), n.root0);
|
| + assert_equals(n.root1.getRootNode(), n.root1);
|
| + assert_equals(n.host2.getRootNode(), n.root1);
|
| + assert_equals(n.root2.getRootNode(), n.root2);
|
| + assert_equals(n.parent.getRootNode(), n.root2);
|
| + assert_equals(n.child.getRootNode(), n.root2);
|
| +
|
| + assert_equals(n.root0.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.host1.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.root1.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.host2.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.root2.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.parent.getRootNode({ composed: true }), n.root0);
|
| + assert_equals(n.child.getRootNode({ composed: true }), n.root0);
|
| +}, 'getRootNode(...) in a disconnected tree.');
|
| +
|
| +test(() => {
|
| + let n = createTestTree(root0);
|
| + assert_equals(n.host2.getRootNode({ composed: false }), n.root1);
|
| +}, 'getRootNode({ composed: false }) should be the default behavior.');
|
| +</script>
|
|
|