Files
sousa-gecko/testing/web-platform/tests/dom/nodes/Node-mutation-adoptNode.html
T
Simon Wülker 87ba02ff6f Bug 1942544 [wpt PR 50167] - Set descendant's attribute's owner document in Node::adopt, a=testonly
Automatic update from web-platform-tests
Add test that adopting an element into a new doc updates the attribute' owner docs

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

--

wpt-commits: 7a107ddd2380e12acb6560112f6afc74afb75097
wpt-pr: 50167
2025-01-21 09:33:49 +00:00

38 lines
1.3 KiB
HTML

<!DOCTYPE html>
<meta charset=utf-8>
<title>Node-manipulation-adopted</title>
<link rel=help href="https://dom.spec.whatwg.org/#dom-domimplementation-createhtmldocument">
<link rel=help href="https://dom.spec.whatwg.org/#mutation-algorithms">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
"use strict";
test(() => {
const old = document.implementation.createHTMLDocument("");
const div = old.createElement("div");
div.appendChild(old.createTextNode("text"));
assert_equals(div.ownerDocument, old);
assert_equals(div.firstChild.ownerDocument, old);
document.body.appendChild(div);
assert_equals(div.ownerDocument, document);
assert_equals(div.firstChild.ownerDocument, document);
}, "simple append of foreign div with text");
test(function() {
var div = document.createElement("div");
div.id = "foobar";
assert_equals(div.ownerDocument, document);
assert_equals(div.attributes[0].ownerDocument, document);
var other_doc = document.implementation.createHTMLDocument();
other_doc.body.appendChild(div);
assert_equals(div.ownerDocument, other_doc);
assert_equals(div.attributes[0].ownerDocument, other_doc);
}, "Adopting an element into a different document update's the element's owner doc as well as the owner docs of it's attributes")
</script>