<!DOCTYPE html> <meta charset=utf-8> <title>Document.importNode</title> <link rel=help href="https://dom.spec.whatwg.org/#dom-document-importnode"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <div id="log"></div> <script> test(function() { var doc = document.implementation.createHTMLDocument("Title"); var div = doc.body.appendChild(doc.createElement("div")); div.appendChild(doc.createElement("span")); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); var newDiv = document.importNode(div); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); assert_equals(newDiv.ownerDocument, document); assert_equals(newDiv.firstChild, null); }, "No 'deep' argument.") test(function() { var doc = document.implementation.createHTMLDocument("Title"); var div = doc.body.appendChild(doc.createElement("div")); div.appendChild(doc.createElement("span")); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); var newDiv = document.importNode(div, undefined); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); assert_equals(newDiv.ownerDocument, document); assert_equals(newDiv.firstChild, null); }, "Undefined 'deep' argument.") test(function() { var doc = document.implementation.createHTMLDocument("Title"); var div = doc.body.appendChild(doc.createElement("div")); div.appendChild(doc.createElement("span")); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); var newDiv = document.importNode(div, true); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); assert_equals(newDiv.ownerDocument, document); assert_equals(newDiv.firstChild.ownerDocument, document); }, "True 'deep' argument.") test(function() { var doc = document.implementation.createHTMLDocument("Title"); var div = doc.body.appendChild(doc.createElement("div")); div.appendChild(doc.createElement("span")); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); var newDiv = document.importNode(div, false); assert_equals(div.ownerDocument, doc); assert_equals(div.firstChild.ownerDocument, doc); assert_equals(newDiv.ownerDocument, document); assert_equals(newDiv.firstChild, null); }, "False 'deep' argument.") </script>