| <!doctype html> | |
| <meta charset=windows-1252> | |
| <!-- Using windows-1252 to ensure that new Document() doesn't inherit utf-8 | |
| from the parent document. --> | |
| <title>Document constructor</title> | |
| <link rel=help href="https://dom.spec.whatwg.org/#dom-document"> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <div id="log"></div> | |
| <script> | |
| test(function() { | |
| var doc = new Document(); | |
| assert_true(doc instanceof Node, "Should be a Node"); | |
| assert_true(doc instanceof Document, "Should be a Document"); | |
| assert_false(doc instanceof XMLDocument, "Should not be an XMLDocument"); | |
| assert_equals(Object.getPrototypeOf(doc), Document.prototype, | |
| "Document should be the primary interface"); | |
| }, "new Document(): interfaces") | |
| test(function() { | |
| var doc = new Document(); | |
| assert_equals(doc.firstChild, null, "firstChild"); | |
| assert_equals(doc.lastChild, null, "lastChild"); | |
| assert_equals(doc.doctype, null, "doctype"); | |
| assert_equals(doc.documentElement, null, "documentElement"); | |
| assert_array_equals(doc.childNodes, [], "childNodes"); | |
| }, "new Document(): children") | |
| test(function() { | |
| var doc = new Document(); | |
| assert_equals(doc.URL, "about:blank"); | |
| assert_equals(doc.documentURI, "about:blank"); | |
| assert_equals(doc.compatMode, "CSS1Compat"); | |
| assert_equals(doc.characterSet, "UTF-8"); | |
| assert_equals(doc.contentType, "application/xml"); | |
| assert_equals(doc.createElement("DIV").localName, "DIV"); | |
| }, "new Document(): metadata") | |
| test(function() { | |
| var doc = new Document(); | |
| assert_equals(doc.characterSet, "UTF-8", "characterSet"); | |
| assert_equals(doc.charset, "UTF-8", "charset"); | |
| assert_equals(doc.inputEncoding, "UTF-8", "inputEncoding"); | |
| }, "new Document(): characterSet aliases") | |
| test(function() { | |
| var doc = new Document(); | |
| var a = doc.createElement("a"); | |
| // In UTF-8: 0xC3 0xA4 | |
| a.href = "http://example.org/?\u00E4"; | |
| assert_equals(a.href, "http://example.org/?%C3%A4"); | |
| }, "new Document(): URL parsing") | |
| </script> |