diff options
Diffstat (limited to 'testing/web-platform/tests/dom/nodes/DOMImplementation-createDocument.html')
-rw-r--r-- | testing/web-platform/tests/dom/nodes/DOMImplementation-createDocument.html | 166 |
1 files changed, 0 insertions, 166 deletions
diff --git a/testing/web-platform/tests/dom/nodes/DOMImplementation-createDocument.html b/testing/web-platform/tests/dom/nodes/DOMImplementation-createDocument.html deleted file mode 100644 index f4b635871..000000000 --- a/testing/web-platform/tests/dom/nodes/DOMImplementation-createDocument.html +++ /dev/null @@ -1,166 +0,0 @@ -<!doctype html> -<meta charset=utf-8> -<title>DOMImplementation.createDocument(namespace, qualifiedName, doctype)</title> -<link rel=help href="https://dom.spec.whatwg.org/#dom-domimplementation-createdocument"> -<link rel=help href="https://dom.spec.whatwg.org/#dom-document-createelementns"> -<link rel=help href="https://dom.spec.whatwg.org/#dom-node-nodetype"> -<link rel=help href="https://dom.spec.whatwg.org/#dom-document-documentelement"> -<link rel=help href="https://dom.spec.whatwg.org/#dom-document-doctype"> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="Document-createElementNS.js"></script> -<div id="log"></div> -<script> -var htmlNamespace = "http://www.w3.org/1999/xhtml" -var svgNamespace = "http://www.w3.org/2000/svg" -var mathMLNamespace = "http://www.w3.org/1998/Math/MathML" - -// Make DocumentTypes distinct -function my_format_value(val) { - if (val instanceof DocumentType) { - return "DocumentType node <!DOCTYPE " + val.name - + (val.publicId ? " " + val.publicId : "") - + (val.systemId ? " " + val.systemId : "") - + ">"; - } - return format_value(val); -} - -test(function() { - var tests = createElementNS_tests.map(function(t) { - return [t[0], t[1], null, t[2]] - }).concat([ - /* Arrays with four elements: - * the namespace argument - * the qualifiedName argument - * the doctype argument - * the expected exception, or null if none - */ - [null, null, false, new TypeError()], - [null, null, null, null], - [null, "", null, null], - [undefined, null, undefined, null], - [undefined, undefined, undefined, null], - [undefined, "", undefined, null], - ["http://example.com/", null, null, null], - ["http://example.com/", "", null, null], - ["/", null, null, null], - ["/", "", null, null], - ["http://www.w3.org/XML/1998/namespace", null, null, null], - ["http://www.w3.org/XML/1998/namespace", "", null, null], - ["http://www.w3.org/2000/xmlns/", null, null, null], - ["http://www.w3.org/2000/xmlns/", "", null, null], - ["foo:", null, null, null], - ["foo:", "", null, null], - [null, null, document.implementation.createDocumentType("foo", "", ""), null], - [null, null, document.doctype, null], // This causes a horrible WebKit bug (now fixed in trunk). - [null, null, function() { - var foo = document.implementation.createDocumentType("bar", "", ""); - document.implementation.createDocument(null, null, foo); - return foo; - }(), null], // DOCTYPE already associated with a document. - [null, null, function() { - var bar = document.implementation.createDocument(null, null, null); - return bar.implementation.createDocumentType("baz", "", ""); - }(), null], // DOCTYPE created by a different implementation. - [null, null, function() { - var bar = document.implementation.createDocument(null, null, null); - var magic = bar.implementation.createDocumentType("quz", "", ""); - bar.implementation.createDocument(null, null, magic); - return magic; - }(), null], // DOCTYPE created by a different implementation and already associated with a document. - [null, "foo", document.implementation.createDocumentType("foo", "", ""), null], - ["foo", null, document.implementation.createDocumentType("foo", "", ""), null], - ["foo", "bar", document.implementation.createDocumentType("foo", "", ""), null], - [htmlNamespace, "", null, null], - [svgNamespace, "", null, null], - [mathMLNamespace, "", null, null], - [null, "html", null, null], - [null, "svg", null, null], - [null, "math", null, null], - [null, "", document.implementation.createDocumentType("html", - "-//W3C//DTD XHTML 1.0 Transitional//EN", - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd")], - [null, "", document.implementation.createDocumentType("svg", - "-//W3C//DTD SVG 1.1//EN", - "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd")], - [null, "", document.implementation.createDocumentType("math", - "-//W3C//DTD MathML 2.0//EN", - "http://www.w3.org/Math/DTD/mathml2/mathml2.dtd")], - ]) - - tests.forEach(function(t, i) { - var namespace = t[0], qualifiedName = t[1], doctype = t[2], expected = t[3] - test(function() { - if (expected != null) { - assert_throws(expected, function() { document.implementation.createDocument(namespace, qualifiedName, doctype) }) - } else { - var doc = document.implementation.createDocument(namespace, qualifiedName, doctype) - assert_equals(doc.nodeType, Node.DOCUMENT_NODE) - assert_equals(doc.nodeType, doc.DOCUMENT_NODE) - assert_equals(doc.nodeName, "#document") - assert_equals(doc.nodeValue, null) - assert_equals(Object.getPrototypeOf(doc), XMLDocument.prototype) - var omitRootElement = qualifiedName === null || String(qualifiedName) === "" - if (omitRootElement) { - assert_equals(doc.documentElement, null) - } else { - var element = doc.documentElement - assert_not_equals(element, null) - assert_equals(element.nodeType, Node.ELEMENT_NODE) - assert_equals(element.ownerDocument, doc) - var qualified = String(qualifiedName), names = [] - if (qualified.indexOf(":") >= 0) { - names = qualified.split(":", 2) - } else { - names = [null, qualified] - } - assert_equals(element.prefix, names[0]) - assert_equals(element.localName, names[1]) - assert_equals(element.namespaceURI, namespace === undefined ? null : namespace) - } - if (!doctype) { - assert_equals(doc.doctype, null) - } else { - assert_equals(doc.doctype, doctype) - assert_equals(doc.doctype.ownerDocument, doc) - } - assert_equals(doc.childNodes.length, !omitRootElement + !!doctype) - } - }, "createDocument test: " + t.map(my_format_value)) - - if (expected === null) { - test(function() { - var doc = document.implementation.createDocument(namespace, qualifiedName, doctype) - assert_equals(doc.compatMode, "CSS1Compat") - assert_equals(doc.characterSet, "UTF-8") - assert_equals(doc.contentType, namespace == htmlNamespace ? "application/xhtml+xml" - : namespace == svgNamespace ? "image/svg+xml" - : "application/xml") - assert_equals(doc.URL, "about:blank") - assert_equals(doc.documentURI, "about:blank") - assert_equals(doc.createElement("DIV").localName, "DIV"); - }, "createDocument test " + i + ": metadata for " + - [namespace, qualifiedName, doctype].map(my_format_value)) - - test(function() { - var doc = document.implementation.createDocument(namespace, qualifiedName, doctype) - assert_equals(doc.characterSet, "UTF-8", "characterSet"); - assert_equals(doc.charset, "UTF-8", "charset"); - assert_equals(doc.inputEncoding, "UTF-8", "inputEncoding"); - }, "createDocument test " + i + ": characterSet aliases for " + - [namespace, qualifiedName, doctype].map(my_format_value)) - } - }) -}) - -test(function() { - assert_throws(new TypeError(), function() { - document.implementation.createDocument() - }, "createDocument() should throw") - - assert_throws(new TypeError(), function() { - document.implementation.createDocument('') - }, "createDocument('') should throw") -}, "createDocument with missing arguments"); -</script> |