aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMs2ger <ms2ger@gmail.com>2014-04-18 21:40:41 +0200
committerMs2ger <ms2ger@gmail.com>2014-04-18 21:40:41 +0200
commit79219f2ba910c9bc23ac523ae55d3b64a839002b (patch)
treeaef625d11ec7531b0b65fc2e094876fe4399398a /src
parente332f2f0fec23b2318589b08c2a1e8fb1557e672 (diff)
downloadservo-79219f2ba910c9bc23ac523ae55d3b64a839002b.tar.gz
servo-79219f2ba910c9bc23ac523ae55d3b64a839002b.zip
Add expected failures.
Diffstat (limited to 'src')
-rw-r--r--src/test/wpt/metadata/dom/collections/HTMLCollection-empty-name.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/errors/exceptions.html.ini14
-rw-r--r--src/test/wpt/metadata/dom/events/Event-constructors.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/events/Event-defaultPrevented.html.ini20
-rw-r--r--src/test/wpt/metadata/dom/events/Event-initEvent.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/events/Event-type.html.ini8
-rw-r--r--src/test/wpt/metadata/dom/events/EventTarget-dispatchEvent.html.ini11
-rw-r--r--src/test/wpt/metadata/dom/events/ProgressEvent.html.ini8
-rw-r--r--src/test/wpt/metadata/dom/historical.html.ini65
-rw-r--r--src/test/wpt/metadata/dom/interface-objects.html.ini23
-rw-r--r--src/test/wpt/metadata/dom/interfaces.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/lists/DOMTokenList-stringifier.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/CharacterData-deleteData.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/CharacterData-insertData.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/CharacterData-remove.html.ini38
-rw-r--r--src/test/wpt/metadata/dom/nodes/CharacterData-replaceData.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocument.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocumentType.html.ini62
-rw-r--r--src/test/wpt/metadata/dom/nodes/DOMImplementation-createHTMLDocument.html.ini29
-rw-r--r--src/test/wpt/metadata/dom/nodes/DOMImplementation-hasFeature.html.ini371
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-adoptNode.html.ini11
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-characterSet-normalization.html.ini635
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_bmp.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_css.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_01.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_02.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_gif.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_javascripturi.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_jpg.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_01.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_02.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_03.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_png.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/createDocument.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/xhr_responseType_document.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createElement-namespace.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createElement.html.ini107
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createElementNS.html.ini65
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createEvent.html.ini140
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-1.xhtml.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-2.xhtml.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction.html.ini26
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-createTreeWalker.html.ini14
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-getElementById.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Document-getElementsByTagName.html.ini11
-rw-r--r--src/test/wpt/metadata/dom/nodes/DocumentType-remove.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElement-null.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElement-null.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-childElementCount.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-children.html.ini8
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-classlist.html.ini191
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild-entity.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.xhtml.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-firstElementChild.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-lastElementChild.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-lastElementChild.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-remove.html.ini14
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.svg.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Element-tagName.html.ini11
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-appendChild.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-insertBefore.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-isEqualNode.xhtml.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-lookupPrefix.xhtml.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-nodeName.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-nodeName.xhtml.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-normalize.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-parentNode.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-replaceChild.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/Node-textContent.html.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/attributes.html.ini47
-rw-r--r--src/test/wpt/metadata/dom/nodes/case.html.ini383
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-14.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-20.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-21.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-22.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-25.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-30.htm.ini3
-rw-r--r--src/test/wpt/metadata/dom/nodes/getElementsByClassName-31.htm.ini5
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-attributes.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-commonAncestorContainer-2.html.ini17
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-comparePoint-2.html.ini11
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-detach.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-intersectsNode-binding.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-isPointInRange.html.ini5
-rw-r--r--src/test/wpt/metadata/dom/ranges/Range-mutations.html.ini3
-rw-r--r--src/test/wpt/metadata/domxpath/001.html.ini32
-rw-r--r--src/test/wpt/metadata/domxpath/002.html.ini47
-rw-r--r--src/test/wpt/metadata/domxpath/evaluator-constructor.html.ini8
110 files changed, 2779 insertions, 0 deletions
diff --git a/src/test/wpt/metadata/dom/collections/HTMLCollection-empty-name.html.ini b/src/test/wpt/metadata/dom/collections/HTMLCollection-empty-name.html.ini
new file mode 100644
index 00000000000..f62718814d9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/collections/HTMLCollection-empty-name.html.ini
@@ -0,0 +1,5 @@
+[HTMLCollection-empty-name.html]
+ type: testharness
+ [Empty string as a name for Element.children]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/errors/exceptions.html.ini b/src/test/wpt/metadata/dom/errors/exceptions.html.ini
new file mode 100644
index 00000000000..ab94dda97a5
--- /dev/null
+++ b/src/test/wpt/metadata/dom/errors/exceptions.html.ini
@@ -0,0 +1,14 @@
+[exceptions.html]
+ type: testharness
+ [Object.getPrototypeOf(exception) === DOMException.prototype]
+ expected: FAIL
+
+ [exception.name === "HierarchyRequestError"]
+ expected: FAIL
+
+ [Object.prototype.toString.call(exception) === "[object DOMException\]"]
+ expected: FAIL
+
+ [exception.code === DOMException.HIERARCHY_REQUEST_ERR]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/events/Event-constructors.html.ini b/src/test/wpt/metadata/dom/events/Event-constructors.html.ini
new file mode 100644
index 00000000000..aefb94d9902
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/Event-constructors.html.ini
@@ -0,0 +1,5 @@
+[Event-constructors.html]
+ type: testharness
+ [Event constructors]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/events/Event-defaultPrevented.html.ini b/src/test/wpt/metadata/dom/events/Event-defaultPrevented.html.ini
new file mode 100644
index 00000000000..e6a1a027ae8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/Event-defaultPrevented.html.ini
@@ -0,0 +1,20 @@
+[Event-defaultPrevented.html]
+ type: testharness
+ [When an event is created, defaultPrevented should be initialized to false.]
+ expected: FAIL
+
+ [initEvent should work correctly (not cancelable).]
+ expected: FAIL
+
+ [preventDefault() should not change defaultPrevented if cancelable is false.]
+ expected: FAIL
+
+ [initEvent should work correctly (cancelable).]
+ expected: FAIL
+
+ [preventDefault() should change defaultPrevented if cancelable is false.]
+ expected: FAIL
+
+ [initEvent should unset defaultPrevented.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/events/Event-initEvent.html.ini b/src/test/wpt/metadata/dom/events/Event-initEvent.html.ini
new file mode 100644
index 00000000000..9f86847ad4c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/Event-initEvent.html.ini
@@ -0,0 +1,5 @@
+[Event-initEvent.html]
+ type: testharness
+ [Calling initEvent must not have an effect during dispatching.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/events/Event-type.html.ini b/src/test/wpt/metadata/dom/events/Event-type.html.ini
new file mode 100644
index 00000000000..07f7a6d973a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/Event-type.html.ini
@@ -0,0 +1,8 @@
+[Event-type.html]
+ type: testharness
+ [Event.type should initially be the empty string]
+ expected: FAIL
+
+ [Event.type should be initialized by initEvent]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/events/EventTarget-dispatchEvent.html.ini b/src/test/wpt/metadata/dom/events/EventTarget-dispatchEvent.html.ini
new file mode 100644
index 00000000000..f82bca7187c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/EventTarget-dispatchEvent.html.ini
@@ -0,0 +1,11 @@
+[EventTarget-dispatchEvent.html]
+ type: testharness
+ [If the event\'s initialized flag is not set, an InvalidStateError must be thrown.]
+ expected: FAIL
+
+ [If the event\'s dispatch flag is set, an InvalidStateError must be thrown.]
+ expected: FAIL
+
+ [Exceptions from event listeners must not be propagated.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/events/ProgressEvent.html.ini b/src/test/wpt/metadata/dom/events/ProgressEvent.html.ini
new file mode 100644
index 00000000000..a5a4c6af722
--- /dev/null
+++ b/src/test/wpt/metadata/dom/events/ProgressEvent.html.ini
@@ -0,0 +1,8 @@
+[ProgressEvent.html]
+ type: testharness
+ [Default event values.]
+ expected: FAIL
+
+ [document.createEvent() should not work with ProgressEvent.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/historical.html.ini b/src/test/wpt/metadata/dom/historical.html.ini
new file mode 100644
index 00000000000..7cefa3a0778
--- /dev/null
+++ b/src/test/wpt/metadata/dom/historical.html.ini
@@ -0,0 +1,65 @@
+[historical.html]
+ type: testharness
+ [Historical DOM features must be removed: createCDATASection]
+ expected: FAIL
+
+ [Historical DOM features must be removed: createAttribute]
+ expected: FAIL
+
+ [Historical DOM features must be removed: createAttributeNS]
+ expected: FAIL
+
+ [Historical DOM features must be removed: createEntityReference]
+ expected: FAIL
+
+ [Historical DOM features must be removed: inputEncoding]
+ expected: FAIL
+
+ [Historical DOM features must be removed: xmlEncoding]
+ expected: FAIL
+
+ [Historical DOM features must be removed: xmlStandalone]
+ expected: FAIL
+
+ [Historical DOM features must be removed: xmlVersion]
+ expected: FAIL
+
+ [Historical DOM features must be removed: strictErrorChecking]
+ expected: FAIL
+
+ [Historical DOM features must be removed: domConfig]
+ expected: FAIL
+
+ [Historical DOM features must be removed: normalizeDocument]
+ expected: FAIL
+
+ [Historical DOM features must be removed: renameNode]
+ expected: FAIL
+
+ [Historical DOM features must be removed: charset]
+ expected: FAIL
+
+ [Historical DOM features must be removed: defaultCharset]
+ expected: FAIL
+
+ [Historical DOM features must be removed: height]
+ expected: FAIL
+
+ [Historical DOM features must be removed: width]
+ expected: FAIL
+
+ [Node member must be nuked: hasAttributes]
+ expected: FAIL
+
+ [Node member must be nuked: isSupported]
+ expected: FAIL
+
+ [Node member must be nuked: getFeature]
+ expected: FAIL
+
+ [Node member must be nuked: getUserData]
+ expected: FAIL
+
+ [Node member must be nuked: setUserData]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/interface-objects.html.ini b/src/test/wpt/metadata/dom/interface-objects.html.ini
new file mode 100644
index 00000000000..ecff894859b
--- /dev/null
+++ b/src/test/wpt/metadata/dom/interface-objects.html.ini
@@ -0,0 +1,23 @@
+[interface-objects.html]
+ type: testharness
+ [Should be able to delete CustomEvent.]
+ expected: FAIL
+
+ [Should be able to delete NodeIterator.]
+ expected: FAIL
+
+ [Should be able to delete TreeWalker.]
+ expected: FAIL
+
+ [Should be able to delete NodeFilter.]
+ expected: FAIL
+
+ [Should be able to delete DOMStringList.]
+ expected: FAIL
+
+ [Should be able to delete DOMTokenList.]
+ expected: FAIL
+
+ [Should be able to delete DOMSettableTokenList.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/interfaces.html.ini b/src/test/wpt/metadata/dom/interfaces.html.ini
new file mode 100644
index 00000000000..507b00d92de
--- /dev/null
+++ b/src/test/wpt/metadata/dom/interfaces.html.ini
@@ -0,0 +1,3 @@
+[interfaces.html]
+ type: testharness
+ expected: ERROR
diff --git a/src/test/wpt/metadata/dom/lists/DOMTokenList-stringifier.html.ini b/src/test/wpt/metadata/dom/lists/DOMTokenList-stringifier.html.ini
new file mode 100644
index 00000000000..fa87a8bd09b
--- /dev/null
+++ b/src/test/wpt/metadata/dom/lists/DOMTokenList-stringifier.html.ini
@@ -0,0 +1,5 @@
+[DOMTokenList-stringifier.html]
+ type: testharness
+ [DOMTokenList stringifier]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/CharacterData-deleteData.html.ini b/src/test/wpt/metadata/dom/nodes/CharacterData-deleteData.html.ini
new file mode 100644
index 00000000000..7b63f4aa498
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/CharacterData-deleteData.html.ini
@@ -0,0 +1,3 @@
+[CharacterData-deleteData.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/CharacterData-insertData.html.ini b/src/test/wpt/metadata/dom/nodes/CharacterData-insertData.html.ini
new file mode 100644
index 00000000000..856f7861526
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/CharacterData-insertData.html.ini
@@ -0,0 +1,3 @@
+[CharacterData-insertData.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/CharacterData-remove.html.ini b/src/test/wpt/metadata/dom/nodes/CharacterData-remove.html.ini
new file mode 100644
index 00000000000..12d30482589
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/CharacterData-remove.html.ini
@@ -0,0 +1,38 @@
+[CharacterData-remove.html]
+ type: testharness
+ [text should support remove()]
+ expected: FAIL
+
+ [remove() should work if text doesn\'t have a parent]
+ expected: FAIL
+
+ [remove() should work if text does have a parent]
+ expected: FAIL
+
+ [remove() should work if text does have a parent and siblings]
+ expected: FAIL
+
+ [comment should support remove()]
+ expected: FAIL
+
+ [remove() should work if comment doesn\'t have a parent]
+ expected: FAIL
+
+ [remove() should work if comment does have a parent]
+ expected: FAIL
+
+ [remove() should work if comment does have a parent and siblings]
+ expected: FAIL
+
+ [PI should support remove()]
+ expected: FAIL
+
+ [remove() should work if PI doesn\'t have a parent]
+ expected: FAIL
+
+ [remove() should work if PI does have a parent]
+ expected: FAIL
+
+ [remove() should work if PI does have a parent and siblings]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/CharacterData-replaceData.html.ini b/src/test/wpt/metadata/dom/nodes/CharacterData-replaceData.html.ini
new file mode 100644
index 00000000000..22e1511d8fa
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/CharacterData-replaceData.html.ini
@@ -0,0 +1,3 @@
+[CharacterData-replaceData.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocument.html.ini b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocument.html.ini
new file mode 100644
index 00000000000..9de84a606a6
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocument.html.ini
@@ -0,0 +1,5 @@
+[DOMImplementation-createDocument.html]
+ type: testharness
+ [DOMImplementation.createDocument(namespace, qualifiedName, doctype)]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocumentType.html.ini b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocumentType.html.ini
new file mode 100644
index 00000000000..5fcc7cc59c9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createDocumentType.html.ini
@@ -0,0 +1,62 @@
+[DOMImplementation-createDocumentType.html]
+ type: testharness
+ [createDocumentType("foo", "", "") should work]
+ expected: FAIL
+
+ [createDocumentType("1foo", "", "") should throw INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [createDocumentType("foo1", "", "") should work]
+ expected: FAIL
+
+ [createDocumentType("f1oo", "", "") should work]
+ expected: FAIL
+
+ [createDocumentType("@foo", "", "") should throw INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [createDocumentType("foo@", "", "") should throw INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [createDocumentType("f@oo", "", "") should throw INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [createDocumentType("f:oo", "", "") should work]
+ expected: FAIL
+
+ [createDocumentType(":foo", "", "") should throw NAMESPACE_ERR]
+ expected: FAIL
+
+ [createDocumentType("foo:", "", "") should throw NAMESPACE_ERR]
+ expected: FAIL
+
+ [createDocumentType("foo", "foo", "") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "", "foo") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "f\'oo", "") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "", "f\'oo") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "f\\"oo", "") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "", "f\\"oo") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "f\'o\\"o", "") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "", "f\'o\\"o") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "foo>", "") should work]
+ expected: FAIL
+
+ [createDocumentType("foo", "", "foo>") should work]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/DOMImplementation-createHTMLDocument.html.ini b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createHTMLDocument.html.ini
new file mode 100644
index 00000000000..442f629d592
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/DOMImplementation-createHTMLDocument.html.ini
@@ -0,0 +1,29 @@
+[DOMImplementation-createHTMLDocument.html]
+ type: testharness
+ [DOMImplementation.createHTMLDocument]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 1]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 2]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 3]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 4]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 5]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 6]
+ expected: FAIL
+
+ [DOMImplementation.createHTMLDocument 7]
+ expected: FAIL
+
+ [Missing title argument]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/DOMImplementation-hasFeature.html.ini b/src/test/wpt/metadata/dom/nodes/DOMImplementation-hasFeature.html.ini
new file mode 100644
index 00000000000..7916a1e80cc
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/DOMImplementation-hasFeature.html.ini
@@ -0,0 +1,371 @@
+[DOMImplementation-hasFeature.html]
+ type: testharness
+ [hasFeature("Core", "1.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "2.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "3.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "100.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "1.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "2.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "3.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "100.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "1")]
+ expected: FAIL
+
+ [hasFeature("Core", "2")]
+ expected: FAIL
+
+ [hasFeature("Core", "3")]
+ expected: FAIL
+
+ [hasFeature("Core", "100")]
+ expected: FAIL
+
+ [hasFeature("XML", "1")]
+ expected: FAIL
+
+ [hasFeature("XML", "2")]
+ expected: FAIL
+
+ [hasFeature("XML", "3")]
+ expected: FAIL
+
+ [hasFeature("XML", "100")]
+ expected: FAIL
+
+ [hasFeature("Core", "1.1")]
+ expected: FAIL
+
+ [hasFeature("Core", "2.1")]
+ expected: FAIL
+
+ [hasFeature("Core", "3.1")]
+ expected: FAIL
+
+ [hasFeature("Core", "100.1")]
+ expected: FAIL
+
+ [hasFeature("XML", "1.1")]
+ expected: FAIL
+
+ [hasFeature("XML", "2.1")]
+ expected: FAIL
+
+ [hasFeature("XML", "3.1")]
+ expected: FAIL
+
+ [hasFeature("XML", "100.1")]
+ expected: FAIL
+
+ [hasFeature("Core", "")]
+ expected: FAIL
+
+ [hasFeature("XML", "")]
+ expected: FAIL
+
+ [hasFeature("core", "")]
+ expected: FAIL
+
+ [hasFeature("xml", "")]
+ expected: FAIL
+
+ [hasFeature("CoRe", "")]
+ expected: FAIL
+
+ [hasFeature("XmL", "")]
+ expected: FAIL
+
+ [hasFeature(" Core", "")]
+ expected: FAIL
+
+ [hasFeature(" XML", "")]
+ expected: FAIL
+
+ [hasFeature("Core ", "")]
+ expected: FAIL
+
+ [hasFeature("XML ", "")]
+ expected: FAIL
+
+ [hasFeature("Co re", "")]
+ expected: FAIL
+
+ [hasFeature("XM L", "")]
+ expected: FAIL
+
+ [hasFeature("aCore", "")]
+ expected: FAIL
+
+ [hasFeature("aXML", "")]
+ expected: FAIL
+
+ [hasFeature("Corea", "")]
+ expected: FAIL
+
+ [hasFeature("XMLa", "")]
+ expected: FAIL
+
+ [hasFeature("Coare", "")]
+ expected: FAIL
+
+ [hasFeature("XMaL", "")]
+ expected: FAIL
+
+ [hasFeature("Core", " ")]
+ expected: FAIL
+
+ [hasFeature("XML", " ")]
+ expected: FAIL
+
+ [hasFeature("Core", " 1.0")]
+ expected: FAIL
+
+ [hasFeature("Core", " 2.0")]
+ expected: FAIL
+
+ [hasFeature("Core", " 3.0")]
+ expected: FAIL
+
+ [hasFeature("Core", " 100.0")]
+ expected: FAIL
+
+ [hasFeature("XML", " 1.0")]
+ expected: FAIL
+
+ [hasFeature("XML", " 2.0")]
+ expected: FAIL
+
+ [hasFeature("XML", " 3.0")]
+ expected: FAIL
+
+ [hasFeature("XML", " 100.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "1.0 ")]
+ expected: FAIL
+
+ [hasFeature("Core", "2.0 ")]
+ expected: FAIL
+
+ [hasFeature("Core", "3.0 ")]
+ expected: FAIL
+
+ [hasFeature("Core", "100.0 ")]
+ expected: FAIL
+
+ [hasFeature("XML", "1.0 ")]
+ expected: FAIL
+
+ [hasFeature("XML", "2.0 ")]
+ expected: FAIL
+
+ [hasFeature("XML", "3.0 ")]
+ expected: FAIL
+
+ [hasFeature("XML", "100.0 ")]
+ expected: FAIL
+
+ [hasFeature("Core", "1. 0")]
+ expected: FAIL
+
+ [hasFeature("Core", "2. 0")]
+ expected: FAIL
+
+ [hasFeature("Core", "3. 0")]
+ expected: FAIL
+
+ [hasFeature("Core", "100. 0")]
+ expected: FAIL
+
+ [hasFeature("XML", "1. 0")]
+ expected: FAIL
+
+ [hasFeature("XML", "2. 0")]
+ expected: FAIL
+
+ [hasFeature("XML", "3. 0")]
+ expected: FAIL
+
+ [hasFeature("XML", "100. 0")]
+ expected: FAIL
+
+ [hasFeature("Core", "a1.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "a2.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "a3.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "a100.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "a1.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "a2.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "a3.0")]
+ expected: FAIL
+
+ [hasFeature("XML", "a100.0")]
+ expected: FAIL
+
+ [hasFeature("Core", "1.0a")]
+ expected: FAIL
+
+ [hasFeature("Core", "2.0a")]
+ expected: FAIL
+
+ [hasFeature("Core", "3.0a")]
+ expected: FAIL
+
+ [hasFeature("Core", "100.0a")]
+ expected: FAIL
+
+ [hasFeature("XML", "1.0a")]
+ expected: FAIL
+
+ [hasFeature("XML", "2.0a")]
+ expected: FAIL
+
+ [hasFeature("XML", "3.0a")]
+ expected: FAIL
+
+ [hasFeature("XML", "100.0a")]
+ expected: FAIL
+
+ [hasFeature("Core", "1.a0")]
+ expected: FAIL
+
+ [hasFeature("Core", "2.a0")]
+ expected: FAIL
+
+ [hasFeature("Core", "3.a0")]
+ expected: FAIL
+
+ [hasFeature("Core", "100.a0")]
+ expected: FAIL
+
+ [hasFeature("XML", "1.a0")]
+ expected: FAIL
+
+ [hasFeature("XML", "2.a0")]
+ expected: FAIL
+
+ [hasFeature("XML", "3.a0")]
+ expected: FAIL
+
+ [hasFeature("XML", "100.a0")]
+ expected: FAIL
+
+ [hasFeature("Core", 1)]
+ expected: FAIL
+
+ [hasFeature("Core", 2)]
+ expected: FAIL
+
+ [hasFeature("Core", 3)]
+ expected: FAIL
+
+ [hasFeature("Core", 100)]
+ expected: FAIL
+
+ [hasFeature("XML", 1)]
+ expected: FAIL
+
+ [hasFeature("XML", 2)]
+ expected: FAIL
+
+ [hasFeature("XML", 3)]
+ expected: FAIL
+
+ [hasFeature("XML", 100)]
+ expected: FAIL
+
+ [hasFeature("Core", null)]
+ expected: FAIL
+
+ [hasFeature("XML", null)]
+ expected: FAIL
+
+ [hasFeature("core", null)]
+ expected: FAIL
+
+ [hasFeature("xml", null)]
+ expected: FAIL
+
+ [hasFeature("CoRe", null)]
+ expected: FAIL
+
+ [hasFeature("XmL", null)]
+ expected: FAIL
+
+ [hasFeature(" Core", null)]
+ expected: FAIL
+
+ [hasFeature(" XML", null)]
+ expected: FAIL
+
+ [hasFeature("Core ", null)]
+ expected: FAIL
+
+ [hasFeature("XML ", null)]
+ expected: FAIL
+
+ [hasFeature("Co re", null)]
+ expected: FAIL
+
+ [hasFeature("XM L", null)]
+ expected: FAIL
+
+ [hasFeature("aCore", null)]
+ expected: FAIL
+
+ [hasFeature("aXML", null)]
+ expected: FAIL
+
+ [hasFeature("Corea", null)]
+ expected: FAIL
+
+ [hasFeature("XMLa", null)]
+ expected: FAIL
+
+ [hasFeature("Coare", null)]
+ expected: FAIL
+
+ [hasFeature("XMaL", null)]
+ expected: FAIL
+
+ [hasFeature("Core", undefined)]
+ expected: FAIL
+
+ [hasFeature("XML", undefined)]
+ expected: FAIL
+
+ [hasFeature("This is filler text.", "")]
+ expected: FAIL
+
+ [hasFeature(null, "")]
+ expected: FAIL
+
+ [hasFeature(undefined, "")]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-adoptNode.html.ini b/src/test/wpt/metadata/dom/nodes/Document-adoptNode.html.ini
new file mode 100644
index 00000000000..af13290b7d0
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-adoptNode.html.ini
@@ -0,0 +1,11 @@
+[Document-adoptNode.html]
+ type: testharness
+ [Adopting an Element called \'x<\' should work.]
+ expected: FAIL
+
+ [Adopting an Element called \':good:times:\' should work.]
+ expected: FAIL
+
+ [Adopting a Document should throw.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-characterSet-normalization.html.ini b/src/test/wpt/metadata/dom/nodes/Document-characterSet-normalization.html.ini
new file mode 100644
index 00000000000..5eef07b38b7
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-characterSet-normalization.html.ini
@@ -0,0 +1,635 @@
+[Document-characterSet-normalization.html]
+ type: testharness
+ [Name "utf-8" has label "unicode-1-1-utf-8"]
+ expected: NOTRUN
+
+ [Name "utf-8" has label "utf-8"]
+ expected: NOTRUN
+
+ [Name "utf-8" has label "utf8"]
+ expected: NOTRUN
+
+ [Name "ibm866" has label "866"]
+ expected: NOTRUN
+
+ [Name "ibm866" has label "cp866"]
+ expected: NOTRUN
+
+ [Name "ibm866" has label "csibm866"]
+ expected: NOTRUN
+
+ [Name "ibm866" has label "ibm866"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "csisolatin2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso-8859-2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso-ir-101"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso8859-2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso88592"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso_8859-2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "iso_8859-2:1987"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "l2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-2" has label "latin2"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "csisolatin3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso-8859-3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso-ir-109"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso8859-3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso88593"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso_8859-3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "iso_8859-3:1988"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "l3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-3" has label "latin3"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "csisolatin4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso-8859-4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso-ir-110"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso8859-4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso88594"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso_8859-4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "iso_8859-4:1988"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "l4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-4" has label "latin4"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "csisolatincyrillic"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "cyrillic"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso-8859-5"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso-ir-144"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso8859-5"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso88595"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso_8859-5"]
+ expected: NOTRUN
+
+ [Name "iso-8859-5" has label "iso_8859-5:1988"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "arabic"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "asmo-708"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "csiso88596e"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "csiso88596i"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "csisolatinarabic"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "ecma-114"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso-8859-6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso-8859-6-e"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso-8859-6-i"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso-ir-127"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso8859-6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso88596"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso_8859-6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-6" has label "iso_8859-6:1987"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "csisolatingreek"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "ecma-118"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "elot_928"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "greek"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "greek8"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso-8859-7"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso-ir-126"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso8859-7"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso88597"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso_8859-7"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "iso_8859-7:1987"]
+ expected: NOTRUN
+
+ [Name "iso-8859-7" has label "sun_eu_greek"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "csiso88598e"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "csisolatinhebrew"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "hebrew"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso-8859-8"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso-8859-8-e"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso-ir-138"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso8859-8"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso88598"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso_8859-8"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "iso_8859-8:1988"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8" has label "visual"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8-i" has label "csiso88598i"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8-i" has label "iso-8859-8-i"]
+ expected: NOTRUN
+
+ [Name "iso-8859-8-i" has label "logical"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "csisolatin6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "iso-8859-10"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "iso-ir-157"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "iso8859-10"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "iso885910"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "l6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-10" has label "latin6"]
+ expected: NOTRUN
+
+ [Name "iso-8859-13" has label "iso-8859-13"]
+ expected: NOTRUN
+
+ [Name "iso-8859-13" has label "iso8859-13"]
+ expected: NOTRUN
+
+ [Name "iso-8859-13" has label "iso885913"]
+ expected: NOTRUN
+
+ [Name "iso-8859-14" has label "iso-8859-14"]
+ expected: NOTRUN
+
+ [Name "iso-8859-14" has label "iso8859-14"]
+ expected: NOTRUN
+
+ [Name "iso-8859-14" has label "iso885914"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "csisolatin9"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "iso-8859-15"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "iso8859-15"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "iso885915"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "iso_8859-15"]
+ expected: NOTRUN
+
+ [Name "iso-8859-15" has label "l9"]
+ expected: NOTRUN
+
+ [Name "iso-8859-16" has label "iso-8859-16"]
+ expected: NOTRUN
+
+ [Name "koi8-r" has label "cskoi8r"]
+ expected: NOTRUN
+
+ [Name "koi8-r" has label "koi"]
+ expected: NOTRUN
+
+ [Name "koi8-r" has label "koi8"]
+ expected: NOTRUN
+
+ [Name "koi8-r" has label "koi8-r"]
+ expected: NOTRUN
+
+ [Name "koi8-r" has label "koi8_r"]
+ expected: NOTRUN
+
+ [Name "koi8-u" has label "koi8-u"]
+ expected: NOTRUN
+
+ [Name "macintosh" has label "csmacintosh"]
+ expected: NOTRUN
+
+ [Name "macintosh" has label "mac"]
+ expected: NOTRUN
+
+ [Name "macintosh" has label "macintosh"]
+ expected: NOTRUN
+
+ [Name "macintosh" has label "x-mac-roman"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "dos-874"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "iso-8859-11"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "iso8859-11"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "iso885911"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "tis-620"]
+ expected: NOTRUN
+
+ [Name "windows-874" has label "windows-874"]
+ expected: NOTRUN
+
+ [Name "windows-1250" has label "cp1250"]
+ expected: NOTRUN
+
+ [Name "windows-1250" has label "windows-1250"]
+ expected: NOTRUN
+
+ [Name "windows-1250" has label "x-cp1250"]
+ expected: NOTRUN
+
+ [Name "windows-1251" has label "cp1251"]
+ expected: NOTRUN
+
+ [Name "windows-1251" has label "windows-1251"]
+ expected: NOTRUN
+
+ [Name "windows-1251" has label "x-cp1251"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "ansi_x3.4-1968"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "ascii"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "cp1252"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "cp819"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "csisolatin1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "ibm819"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso-8859-1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso-ir-100"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso8859-1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso88591"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso_8859-1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "iso_8859-1:1987"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "l1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "latin1"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "us-ascii"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "windows-1252"]
+ expected: NOTRUN
+
+ [Name "windows-1252" has label "x-cp1252"]
+ expected: NOTRUN
+
+ [Name "windows-1253" has label "cp1253"]
+ expected: NOTRUN
+
+ [Name "windows-1253" has label "windows-1253"]
+ expected: NOTRUN
+
+ [Name "windows-1253" has label "x-cp1253"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "cp1254"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "csisolatin5"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso-8859-9"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso-ir-148"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso8859-9"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso88599"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso_8859-9"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "iso_8859-9:1989"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "l5"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "latin5"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "windows-1254"]
+ expected: NOTRUN
+
+ [Name "windows-1254" has label "x-cp1254"]
+ expected: NOTRUN
+
+ [Name "windows-1255" has label "cp1255"]
+ expected: NOTRUN
+
+ [Name "windows-1255" has label "windows-1255"]
+ expected: NOTRUN
+
+ [Name "windows-1255" has label "x-cp1255"]
+ expected: NOTRUN
+
+ [Name "windows-1256" has label "cp1256"]
+ expected: NOTRUN
+
+ [Name "windows-1256" has label "windows-1256"]
+ expected: NOTRUN
+
+ [Name "windows-1256" has label "x-cp1256"]
+ expected: NOTRUN
+
+ [Name "windows-1257" has label "cp1257"]
+ expected: NOTRUN
+
+ [Name "windows-1257" has label "windows-1257"]
+ expected: NOTRUN
+
+ [Name "windows-1257" has label "x-cp1257"]
+ expected: NOTRUN
+
+ [Name "windows-1258" has label "cp1258"]
+ expected: NOTRUN
+
+ [Name "windows-1258" has label "windows-1258"]
+ expected: NOTRUN
+
+ [Name "windows-1258" has label "x-cp1258"]
+ expected: NOTRUN
+
+ [Name "x-mac-cyrillic" has label "x-mac-cyrillic"]
+ expected: NOTRUN
+
+ [Name "x-mac-cyrillic" has label "x-mac-ukrainian"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "chinese"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "csgb2312"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "csiso58gb231280"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "gb2312"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "gb_2312"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "gb_2312-80"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "gbk"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "iso-ir-58"]
+ expected: NOTRUN
+
+ [Name "gbk" has label "x-gbk"]
+ expected: NOTRUN
+
+ [Name "gb18030" has label "gb18030"]
+ expected: NOTRUN
+
+ [Name "hz-gb-2312" has label "hz-gb-2312"]
+ expected: NOTRUN
+
+ [Name "big5" has label "big5"]
+ expected: NOTRUN
+
+ [Name "big5" has label "big5-hkscs"]
+ expected: NOTRUN
+
+ [Name "big5" has label "cn-big5"]
+ expected: NOTRUN
+
+ [Name "big5" has label "csbig5"]
+ expected: NOTRUN
+
+ [Name "big5" has label "x-x-big5"]
+ expected: NOTRUN
+
+ [Name "euc-jp" has label "cseucpkdfmtjapanese"]
+ expected: NOTRUN
+
+ [Name "euc-jp" has label "euc-jp"]
+ expected: NOTRUN
+
+ [Name "euc-jp" has label "x-euc-jp"]
+ expected: NOTRUN
+
+ [Name "iso-2022-jp" has label "csiso2022jp"]
+ expected: NOTRUN
+
+ [Name "iso-2022-jp" has label "iso-2022-jp"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "csshiftjis"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "ms_kanji"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "shift-jis"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "shift_jis"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "sjis"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "windows-31j"]
+ expected: NOTRUN
+
+ [Name "shift_jis" has label "x-sjis"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "cseuckr"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "csksc56011987"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "euc-kr"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "iso-ir-149"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "korean"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "ks_c_5601-1987"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "ks_c_5601-1989"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "ksc5601"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "ksc_5601"]
+ expected: NOTRUN
+
+ [Name "euc-kr" has label "windows-949"]
+ expected: NOTRUN
+
+ [Name "iso-2022-kr" has label "csiso2022kr"]
+ expected: NOTRUN
+
+ [Name "iso-2022-kr" has label "iso-2022-kr"]
+ expected: NOTRUN
+
+ [Name "x-user-defined" has label "x-user-defined"]
+ expected: NOTRUN
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_bmp.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_bmp.html.ini
new file mode 100644
index 00000000000..50af13053ae
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_bmp.html.ini
@@ -0,0 +1,5 @@
+[contenttype_bmp.html]
+ type: testharness
+ [BMP document.contentType === \'image/bmp\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_css.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_css.html.ini
new file mode 100644
index 00000000000..3102c3bf975
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_css.html.ini
@@ -0,0 +1,5 @@
+[contenttype_css.html]
+ type: testharness
+ [CSS document.contentType === \'text/css\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_01.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_01.html.ini
new file mode 100644
index 00000000000..6345e50762d
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_01.html.ini
@@ -0,0 +1,5 @@
+[contenttype_datauri_01.html]
+ type: testharness
+ [Data URI document.contentType === \'text/plain\' when data URI MIME type is not set]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_02.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_02.html.ini
new file mode 100644
index 00000000000..8b4656a6d2a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_datauri_02.html.ini
@@ -0,0 +1,5 @@
+[contenttype_datauri_02.html]
+ type: testharness
+ [Data URI document.contentType === \'text/html\' when data URI MIME type is set]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_gif.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_gif.html.ini
new file mode 100644
index 00000000000..cd0ceafd50f
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_gif.html.ini
@@ -0,0 +1,5 @@
+[contenttype_gif.html]
+ type: testharness
+ [GIF document.contentType === \'image/gif\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini
new file mode 100644
index 00000000000..a7a885d9e39
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini
@@ -0,0 +1,5 @@
+[contenttype_html.html]
+ type: testharness
+ [HTM document.contentType === \'text/html\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_javascripturi.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_javascripturi.html.ini
new file mode 100644
index 00000000000..3a7da86886f
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_javascripturi.html.ini
@@ -0,0 +1,5 @@
+[contenttype_javascripturi.html]
+ type: testharness
+ [Javascript URI document.contentType === \'text/html\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_jpg.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_jpg.html.ini
new file mode 100644
index 00000000000..0a19d284cef
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_jpg.html.ini
@@ -0,0 +1,5 @@
+[contenttype_jpg.html]
+ type: testharness
+ [JPG document.contentType === \'image/jpeg\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_01.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_01.html.ini
new file mode 100644
index 00000000000..655e2da2f20
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_01.html.ini
@@ -0,0 +1,5 @@
+[contenttype_mimeheader_01.html]
+ type: testharness
+ [Custom document.contentType === \'text/xml\' when explicitly set to this value]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_02.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_02.html.ini
new file mode 100644
index 00000000000..79a60730f6c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_02.html.ini
@@ -0,0 +1,5 @@
+[contenttype_mimeheader_02.html]
+ type: testharness
+ [Custom document.contentType === \'text/html\' when explicitly set to this value and an attempt is made to override this value in an HTML meta header]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_03.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_03.html.ini
new file mode 100644
index 00000000000..87ba7d18734
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_mimeheader_03.html.ini
@@ -0,0 +1,5 @@
+[contenttype_mimeheader_03.html]
+ type: testharness
+ [Custom document.contentType === \'text/html\' when no Content-Type header is provided in HTTP response]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_png.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_png.html.ini
new file mode 100644
index 00000000000..200a24ba49d
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_png.html.ini
@@ -0,0 +1,5 @@
+[contenttype_png.html]
+ type: testharness
+ [PNG document.contentType === \'image/png\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini
new file mode 100644
index 00000000000..a4194cc01a4
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini
@@ -0,0 +1,5 @@
+[contenttype_txt.html]
+ type: testharness
+ [TXT document.contentType === \'text/plain\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini
new file mode 100644
index 00000000000..63191d717f6
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini
@@ -0,0 +1,5 @@
+[contenttype_xml.html]
+ type: testharness
+ [XML document.contentType === \'application/xml\']
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/createDocument.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/createDocument.html.ini
new file mode 100644
index 00000000000..0ee7ec2f1f0
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/createDocument.html.ini
@@ -0,0 +1,5 @@
+[createDocument.html]
+ type: testharness
+ [document.implementation.createDocument: document.contentType === \'application/xml\']
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/xhr_responseType_document.html.ini b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/xhr_responseType_document.html.ini
new file mode 100644
index 00000000000..40be3c291c2
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-contentType/contentType/xhr_responseType_document.html.ini
@@ -0,0 +1,5 @@
+[xhr_responseType_document.html]
+ type: testharness
+ [XHR - retrieve HTML document: document.contentType === \'application/xml\']
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createElement-namespace.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createElement-namespace.html.ini
new file mode 100644
index 00000000000..43f2e92d311
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createElement-namespace.html.ini
@@ -0,0 +1,3 @@
+[Document-createElement-namespace.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createElement.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createElement.html.ini
new file mode 100644
index 00000000000..2e15945caae
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createElement.html.ini
@@ -0,0 +1,107 @@
+[Document-createElement.html]
+ type: testharness
+ [createElement(undefined)]
+ expected: FAIL
+
+ [createElement(null)]
+ expected: FAIL
+
+ [createElement("foo")]
+ expected: FAIL
+
+ [createElement("f1oo")]
+ expected: FAIL
+
+ [createElement("foo1")]
+ expected: FAIL
+
+ [createElement("f\xcc\x80oo")]
+ expected: FAIL
+
+ [createElement("foo\xcc\x80")]
+ expected: FAIL
+
+ [createElement(":foo")]
+ expected: FAIL
+
+ [createElement("f:oo")]
+ expected: FAIL
+
+ [createElement("foo:")]
+ expected: FAIL
+
+ [createElement("xml")]
+ expected: FAIL
+
+ [createElement("xmlns")]
+ expected: FAIL
+
+ [createElement("xmlfoo")]
+ expected: FAIL
+
+ [createElement("xml:foo")]
+ expected: FAIL
+
+ [createElement("xmlns:foo")]
+ expected: FAIL
+
+ [createElement("xmlfoo:bar")]
+ expected: FAIL
+
+ [createElement("svg")]
+ expected: FAIL
+
+ [createElement("math")]
+ expected: FAIL
+
+ [createElement("FOO")]
+ expected: FAIL
+
+ [createElement("mar\xe2\x84\xaa")]
+ expected: FAIL
+
+ [createElement("\xc4\xb0nput")]
+ expected: FAIL
+
+ [createElement("\xc4\xb1nput")]
+ expected: FAIL
+
+ [createElement("")]
+ expected: FAIL
+
+ [createElement("1foo")]
+ expected: FAIL
+
+ [createElement("\xcc\x80foo")]
+ expected: FAIL
+
+ [createElement("}foo")]
+ expected: FAIL
+
+ [createElement("f}oo")]
+ expected: FAIL
+
+ [createElement("foo}")]
+ expected: FAIL
+
+ [createElement("\xef\xbf\xbffoo")]
+ expected: FAIL
+
+ [createElement("f\xef\xbf\xbfoo")]
+ expected: FAIL
+
+ [createElement("foo\xef\xbf\xbf")]
+ expected: FAIL
+
+ [createElement("<foo")]
+ expected: FAIL
+
+ [createElement("foo>")]
+ expected: FAIL
+
+ [createElement("<foo>")]
+ expected: FAIL
+
+ [createElement("f<oo")]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createElementNS.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createElementNS.html.ini
new file mode 100644
index 00000000000..2fd50d0768f
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createElementNS.html.ini
@@ -0,0 +1,65 @@
+[Document-createElementNS.html]
+ type: testharness
+ [Invalid Name: ]
+ expected: FAIL
+
+ [Invalid Name: 1foo]
+ expected: FAIL
+
+ [Invalid Name: \xcc\x80foo]
+ expected: FAIL
+
+ [Invalid Name: }foo]
+ expected: FAIL
+
+ [Invalid Name: f}oo]
+ expected: FAIL
+
+ [Invalid Name: foo}]
+ expected: FAIL
+
+ [Invalid Name: \xef\xbf\xbffoo]
+ expected: FAIL
+
+ [Invalid Name: f\xef\xbf\xbfoo]
+ expected: FAIL
+
+ [Invalid Name: foo\xef\xbf\xbf]
+ expected: FAIL
+
+ [Invalid Name: <foo]
+ expected: FAIL
+
+ [Invalid Name: foo>]
+ expected: FAIL
+
+ [Invalid Name: <foo>]
+ expected: FAIL
+
+ [Invalid Name: f<oo]
+ expected: FAIL
+
+ [Invalid namespace and QName :foo]
+ expected: FAIL
+
+ [Invalid namespace and QName foo:]
+ expected: FAIL
+
+ [Invalid namespace and QName foo:foo]
+ expected: FAIL
+
+ [Invalid namespace http://oops/ and QName xml:foo]
+ expected: FAIL
+
+ [Invalid namespace http://oops/ and QName xmlns]
+ expected: FAIL
+
+ [Invalid namespace http://oops/ and QName xmlns:foo]
+ expected: FAIL
+
+ [Invalid namespace http://www.w3.org/2000/xmlns/ and QName xml:foo]
+ expected: FAIL
+
+ [Invalid namespace http://www.w3.org/2000/xmlns/ and QName foo:xmlns]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createEvent.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createEvent.html.ini
new file mode 100644
index 00000000000..0bf60377de8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createEvent.html.ini
@@ -0,0 +1,140 @@
+[Document-createEvent.html]
+ type: testharness
+ [CustomEvent should be an alias for CustomEvent.]
+ expected: FAIL
+
+ [createEvent(\'CustomEvent\') should be initialized correctly.]
+ expected: FAIL
+
+ [customevent should be an alias for CustomEvent.]
+ expected: FAIL
+
+ [createEvent(\'customevent\') should be initialized correctly.]
+ expected: FAIL
+
+ [CUSTOMEVENT should be an alias for CustomEvent.]
+ expected: FAIL
+
+ [createEvent(\'CUSTOMEVENT\') should be initialized correctly.]
+ expected: FAIL
+
+ [Event should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'Event\') should be initialized correctly.]
+ expected: FAIL
+
+ [event should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'event\') should be initialized correctly.]
+ expected: FAIL
+
+ [EVENT should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'EVENT\') should be initialized correctly.]
+ expected: FAIL
+
+ [Events should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'Events\') should be initialized correctly.]
+ expected: FAIL
+
+ [events should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'events\') should be initialized correctly.]
+ expected: FAIL
+
+ [EVENTS should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'EVENTS\') should be initialized correctly.]
+ expected: FAIL
+
+ [createEvent(\'HTMLEvents\') should be initialized correctly.]
+ expected: FAIL
+
+ [htmlevents should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'htmlevents\') should be initialized correctly.]
+ expected: FAIL
+
+ [HTMLEVENTS should be an alias for Event.]
+ expected: FAIL
+
+ [createEvent(\'HTMLEVENTS\') should be initialized correctly.]
+ expected: FAIL
+
+ [MouseEvent should be an alias for MouseEvent.]
+ expected: FAIL
+
+ [createEvent(\'MouseEvent\') should be initialized correctly.]
+ expected: FAIL
+
+ [mouseevent should be an alias for MouseEvent.]
+ expected: FAIL
+
+ [createEvent(\'mouseevent\') should be initialized correctly.]
+ expected: FAIL
+
+ [MOUSEEVENT should be an alias for MouseEvent.]
+ expected: FAIL
+
+ [createEvent(\'MOUSEEVENT\') should be initialized correctly.]
+ expected: FAIL
+
+ [createEvent(\'MouseEvents\') should be initialized correctly.]
+ expected: FAIL
+
+ [mouseevents should be an alias for MouseEvent.]
+ expected: FAIL
+
+ [createEvent(\'mouseevents\') should be initialized correctly.]
+ expected: FAIL
+
+ [MOUSEEVENTS should be an alias for MouseEvent.]
+ expected: FAIL
+
+ [createEvent(\'MOUSEEVENTS\') should be initialized correctly.]
+ expected: FAIL
+
+ [UIEvent should be an alias for UIEvent.]
+ expected: FAIL
+
+ [createEvent(\'UIEvent\') should be initialized correctly.]
+ expected: FAIL
+
+ [uievent should be an alias for UIEvent.]
+ expected: FAIL
+
+ [createEvent(\'uievent\') should be initialized correctly.]
+ expected: FAIL
+
+ [UIEVENT should be an alias for UIEvent.]
+ expected: FAIL
+
+ [createEvent(\'UIEVENT\') should be initialized correctly.]
+ expected: FAIL
+
+ [createEvent(\'UIEvents\') should be initialized correctly.]
+ expected: FAIL
+
+ [uievents should be an alias for UIEvent.]
+ expected: FAIL
+
+ [createEvent(\'uievents\') should be initialized correctly.]
+ expected: FAIL
+
+ [UIEVENTS should be an alias for UIEvent.]
+ expected: FAIL
+
+ [createEvent(\'UIEVENTS\') should be initialized correctly.]
+ expected: FAIL
+
+ [Should throw NOT_SUPPORTED_ERR for unrecognized arguments]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-1.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-1.xhtml.ini
new file mode 100644
index 00000000000..84e7d9285d8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-1.xhtml.ini
@@ -0,0 +1,5 @@
+[Document-createProcessingInstruction-literal-1.xhtml]
+ type: testharness
+ [<]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-2.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-2.xhtml.ini
new file mode 100644
index 00000000000..18cbdfd239c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction-literal-2.xhtml.ini
@@ -0,0 +1,5 @@
+[Document-createProcessingInstruction-literal-2.xhtml]
+ type: testharness
+ [ProcessingInstruction literals]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction.html.ini
new file mode 100644
index 00000000000..671be020ceb
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createProcessingInstruction.html.ini
@@ -0,0 +1,26 @@
+[Document-createProcessingInstruction.html]
+ type: testharness
+ [Should throw an INVALID_CHARACTER_ERR for target "A" and data "?>".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "\xc2\xb7A" and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "\xc3\x97A" and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "A\xc3\x97" and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "\\\\A" and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "\\f" and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target 0 and data "x".]
+ expected: FAIL
+
+ [Should throw an INVALID_CHARACTER_ERR for target "0" and data "x".]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-createTreeWalker.html.ini b/src/test/wpt/metadata/dom/nodes/Document-createTreeWalker.html.ini
new file mode 100644
index 00000000000..91e2c7b5ff7
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-createTreeWalker.html.ini
@@ -0,0 +1,14 @@
+[Document-createTreeWalker.html]
+ type: testharness
+ [Optional arguments to createTreeWalker should be optional (1 passed).]
+ expected: FAIL
+
+ [Optional arguments to createTreeWalker should be optional (2 passed).]
+ expected: FAIL
+
+ [Optional arguments to createTreeWalker should be optional (3 passed, null).]
+ expected: FAIL
+
+ [Optional arguments to createTreeWalker should be optional (3 passed, function).]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-getElementById.html.ini b/src/test/wpt/metadata/dom/nodes/Document-getElementById.html.ini
new file mode 100644
index 00000000000..9377b2c7cfb
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-getElementById.html.ini
@@ -0,0 +1,5 @@
+[Document-getElementById.html]
+ type: testharness
+ [Document.getElementById with an empty string]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Document-getElementsByTagName.html.ini b/src/test/wpt/metadata/dom/nodes/Document-getElementsByTagName.html.ini
new file mode 100644
index 00000000000..ec6343a3198
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Document-getElementsByTagName.html.ini
@@ -0,0 +1,11 @@
+[Document-getElementsByTagName.html]
+ type: testharness
+ [Shouldn\'t be able to set unsigned properties on a HTMLCollection (strict mode)]
+ expected: FAIL
+
+ [hasOwnProperty, getOwnPropertyDescriptor, getOwnPropertyNames]
+ expected: FAIL
+
+ [Document.getElementsByTagName]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/DocumentType-remove.html.ini b/src/test/wpt/metadata/dom/nodes/DocumentType-remove.html.ini
new file mode 100644
index 00000000000..7725c9ac8d8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/DocumentType-remove.html.ini
@@ -0,0 +1,5 @@
+[DocumentType-remove.html]
+ type: testharness
+ [DocumentType.remove]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElement-null.html.ini b/src/test/wpt/metadata/dom/nodes/Element-childElement-null.html.ini
new file mode 100644
index 00000000000..818ba86101a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElement-null.html.ini
@@ -0,0 +1,5 @@
+[Element-childElement-null.html]
+ type: testharness
+ [Null test]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElement-null.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-childElement-null.svg.ini
new file mode 100644
index 00000000000..5485ee50f28
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElement-null.svg.ini
@@ -0,0 +1,3 @@
+[Element-childElement-null.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.html.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.html.ini
new file mode 100644
index 00000000000..a4a5567bce9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.html.ini
@@ -0,0 +1,5 @@
+[Element-childElementCount-dynamic-add.html]
+ type: testharness
+ [Dynamic Adding of Elements]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.svg.ini
new file mode 100644
index 00000000000..b005b7c9c8e
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-add.svg.ini
@@ -0,0 +1,3 @@
+[Element-childElementCount-dynamic-add.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.html.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.html.ini
new file mode 100644
index 00000000000..52ecb84d39b
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.html.ini
@@ -0,0 +1,5 @@
+[Element-childElementCount-dynamic-remove.html]
+ type: testharness
+ [Dynamic Removal of Elements]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.svg.ini
new file mode 100644
index 00000000000..a6ec67fe026
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-dynamic-remove.svg.ini
@@ -0,0 +1,3 @@
+[Element-childElementCount-dynamic-remove.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.html.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.html.ini
new file mode 100644
index 00000000000..0428d706422
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.html.ini
@@ -0,0 +1,5 @@
+[Element-childElementCount-nochild.html]
+ type: testharness
+ [childElementCount without Child Element Nodes]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.svg.ini
new file mode 100644
index 00000000000..cdf552d073a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount-nochild.svg.ini
@@ -0,0 +1,3 @@
+[Element-childElementCount-nochild.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount.html.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount.html.ini
new file mode 100644
index 00000000000..d31cb1aacae
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount.html.ini
@@ -0,0 +1,5 @@
+[Element-childElementCount.html]
+ type: testharness
+ [childElementCount]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-childElementCount.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-childElementCount.svg.ini
new file mode 100644
index 00000000000..dee4bb3f3c1
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-childElementCount.svg.ini
@@ -0,0 +1,3 @@
+[Element-childElementCount.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-children.html.ini b/src/test/wpt/metadata/dom/nodes/Element-children.html.ini
new file mode 100644
index 00000000000..53481b43697
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-children.html.ini
@@ -0,0 +1,8 @@
+[Element-children.html]
+ type: testharness
+ [HTMLCollection edge cases]
+ expected: FAIL
+
+ [HTMLCollection edge cases 1]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-classlist.html.ini b/src/test/wpt/metadata/dom/nodes/Element-classlist.html.ini
new file mode 100644
index 00000000000..840c86ad02d
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-classlist.html.ini
@@ -0,0 +1,191 @@
+[Element-classlist.html]
+ type: testharness
+ [Element.classList must exist as an object]
+ expected: FAIL
+
+ [Element.classList must exist as an object even if the element has no class attribute]
+ expected: FAIL
+
+ [DOMTokenList should be exposed for prototyping]
+ expected: FAIL
+
+ [prototyping DOMTokenList should work]
+ expected: FAIL
+
+ [Element.classList must implement DOMTokenList]
+ expected: FAIL
+
+ [CSS .foo selectors must not match elements without any class]
+ expected: FAIL
+
+ [classList must be correct for an element that has classes]
+ expected: FAIL
+
+ [classList.length must be 0 for an element that has no classes]
+ expected: FAIL
+
+ [classList must not contain an undefined class]
+ expected: FAIL
+
+ [classList.item() must return null for out-of-range index]
+ expected: FAIL
+
+ [classList.item() must return null for negative index]
+ expected: FAIL
+
+ [classList[index\] must be undefined for out-of-range index]
+ expected: FAIL
+
+ [classList[index\] must be undefined for negative index]
+ expected: FAIL
+
+ [empty classList should return the empty string since the ordered set parser skip the whitespaces]
+ expected: FAIL
+
+ [.contains(empty_string) must throw a SYNTAX_ERR]
+ expected: FAIL
+
+ [.add(empty_string) must throw a SYNTAX_ERR]
+ expected: FAIL
+
+ [.remove(empty_string) must throw a SYNTAX_ERR]
+ expected: FAIL
+
+ [.toggle(empty_string) must throw a SYNTAX_ERR]
+ expected: FAIL
+
+ [.contains(string_with_spaces) must throw an INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [.add(string_with_spaces) must throw an INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [.remove(string_with_spaces) must throw an INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [.toggle(string_with_spaces) must throw an INVALID_CHARACTER_ERR]
+ expected: FAIL
+
+ [computed style must update when setting .className]
+ expected: FAIL
+
+ [classList.contains must update when .className is changed]
+ expected: FAIL
+
+ [classList.contains must be case sensitive]
+ expected: FAIL
+
+ [classList.contains must not match when punctuation characters are added]
+ expected: FAIL
+
+ [classList.add must not cause the CSS selector to stop matching]
+ expected: FAIL
+
+ [classList.add must not remove existing classes]
+ expected: FAIL
+
+ [classList.contains case sensitivity must match a case-specific string]
+ expected: FAIL
+
+ [classList.length must correctly reflect the number of tokens]
+ expected: FAIL
+
+ [classList.item(0) must return the first token]
+ expected: FAIL
+
+ [classList.item must return case-sensitive strings and preserve token order]
+ expected: FAIL
+
+ [classList[0\] must return the first token]
+ expected: FAIL
+
+ [classList[index\] must return case-sensitive strings and preserve token order]
+ expected: FAIL
+
+ [classList[index\] must still be undefined for out-of-range index when earlier indexes exist]
+ expected: FAIL
+
+ [className must update correctly when items have been added through classList]
+ expected: FAIL
+
+ [classList must stringify correctly when items have been added]
+ expected: FAIL
+
+ [classList.add should not add a token if it already exists]
+ expected: FAIL
+
+ [classList.remove removes arguments passed, if they are present.]
+ expected: FAIL
+
+ [classList.remove must remove existing tokens]
+ expected: FAIL
+
+ [classList.remove must not break case-sensitive CSS selector matching]
+ expected: FAIL
+
+ [classList.remove must remove duplicated tokens]
+ expected: FAIL
+
+ [classList.remove must collapse whitespace around removed tokens]
+ expected: FAIL
+
+ [classList.remove must collapse whitespaces around each token]
+ expected: FAIL
+
+ [classList.remove must collapse whitespaces around each token and remove duplicates]
+ expected: FAIL
+
+ [classList.remove must collapse whitespace when removing duplicate tokens]
+ expected: FAIL
+
+ [classList.add must collapse whitespaces and remove duplicates when adding a token that already exists]
+ expected: FAIL
+
+ [classList.toggle must toggle tokens case-sensitively when adding]
+ expected: FAIL
+
+ [classList.toggle must not break case-sensitive CSS selector matching]
+ expected: FAIL
+
+ [classList.toggle must be able to remove tokens]
+ expected: FAIL
+
+ [classList.toggle must be case-sensitive when removing tokens]
+ expected: FAIL
+
+ [CSS class selectors must stop matching when all classes have been removed]
+ expected: FAIL
+
+ [className must be empty when all classes have been removed]
+ expected: FAIL
+
+ [classList must stringify to an empty string when all classes have been removed]
+ expected: FAIL
+
+ [classList.item(0) must return null when all classes have been removed]
+ expected: FAIL
+
+ [classList[0\] must be undefined when all classes have been removed]
+ expected: FAIL
+
+ [classList.add should treat " " as a space]
+ expected: FAIL
+
+ [classList.add should treat \\t as a space]
+ expected: FAIL
+
+ [classList.add should treat \\r as a space]
+ expected: FAIL
+
+ [classList.add should treat \\n as a space]
+ expected: FAIL
+
+ [classList.add should treat \\f as a space]
+ expected: FAIL
+
+ [classList.length must be read-only]
+ expected: FAIL
+
+ [classList must be read-only]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-entity.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-entity.svg.ini
new file mode 100644
index 00000000000..f7c9cc7dba9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-entity.svg.ini
@@ -0,0 +1,3 @@
+[Element-firstElementChild-entity.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.html.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.html.ini
new file mode 100644
index 00000000000..668880f53dc
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.html.ini
@@ -0,0 +1,5 @@
+[Element-firstElementChild-namespace.html]
+ type: testharness
+ [firstElementChild with namespaces]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.svg.ini
new file mode 100644
index 00000000000..1e603342e0b
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.svg.ini
@@ -0,0 +1,3 @@
+[Element-firstElementChild-namespace.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.xhtml.ini
new file mode 100644
index 00000000000..3693be07aa0
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild-namespace.xhtml.ini
@@ -0,0 +1,3 @@
+[Element-firstElementChild-namespace.xhtml]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.html.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.html.ini
new file mode 100644
index 00000000000..1c1a15cc8aa
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.html.ini
@@ -0,0 +1,5 @@
+[Element-firstElementChild.html]
+ type: testharness
+ [firstElementChild]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.svg.ini
new file mode 100644
index 00000000000..449bb169e4d
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-firstElementChild.svg.ini
@@ -0,0 +1,3 @@
+[Element-firstElementChild.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.html.ini b/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.html.ini
new file mode 100644
index 00000000000..fc91e280383
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.html.ini
@@ -0,0 +1,5 @@
+[Element-lastElementChild.html]
+ type: testharness
+ [lastElementChild]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.svg.ini
new file mode 100644
index 00000000000..ef4918d7a00
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-lastElementChild.svg.ini
@@ -0,0 +1,3 @@
+[Element-lastElementChild.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.html.ini b/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.html.ini
new file mode 100644
index 00000000000..500ad7ddfd9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.html.ini
@@ -0,0 +1,5 @@
+[Element-nextElementSibling.html]
+ type: testharness
+ [nextElementSibling]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.svg.ini
new file mode 100644
index 00000000000..1e026d513a5
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-nextElementSibling.svg.ini
@@ -0,0 +1,3 @@
+[Element-nextElementSibling.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.html.ini b/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.html.ini
new file mode 100644
index 00000000000..9fc5b61136c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.html.ini
@@ -0,0 +1,5 @@
+[Element-previousElementSibling.html]
+ type: testharness
+ [previousElementSibling]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.svg.ini
new file mode 100644
index 00000000000..872dbfee924
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-previousElementSibling.svg.ini
@@ -0,0 +1,3 @@
+[Element-previousElementSibling.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-remove.html.ini b/src/test/wpt/metadata/dom/nodes/Element-remove.html.ini
new file mode 100644
index 00000000000..0e8d84dd9c6
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-remove.html.ini
@@ -0,0 +1,14 @@
+[Element-remove.html]
+ type: testharness
+ [element should support remove()]
+ expected: FAIL
+
+ [remove() should work if element doesn\'t have a parent]
+ expected: FAIL
+
+ [remove() should work if element does have a parent]
+ expected: FAIL
+
+ [remove() should work if element does have a parent and siblings]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini b/src/test/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini
new file mode 100644
index 00000000000..ed13e73097b
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini
@@ -0,0 +1,5 @@
+[Element-removeAttributeNS.html]
+ type: testharness
+ [removeAttributeNS should take a local name.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.html.ini b/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.html.ini
new file mode 100644
index 00000000000..77c3ddfa89e
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.html.ini
@@ -0,0 +1,5 @@
+[Element-siblingElement-null.html]
+ type: testharness
+ [Null test]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.svg.ini b/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.svg.ini
new file mode 100644
index 00000000000..09552374aff
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-siblingElement-null.svg.ini
@@ -0,0 +1,3 @@
+[Element-siblingElement-null.svg]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Element-tagName.html.ini b/src/test/wpt/metadata/dom/nodes/Element-tagName.html.ini
new file mode 100644
index 00000000000..94fd3f7e2bd
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Element-tagName.html.ini
@@ -0,0 +1,11 @@
+[Element-tagName.html]
+ type: testharness
+ [tagName should upper-case for HTML elements in HTML documents.]
+ expected: FAIL
+
+ [tagName should not upper-case for SVG elements in HTML documents.]
+ expected: FAIL
+
+ [tagName should be updated when changing ownerDocument]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-appendChild.html.ini b/src/test/wpt/metadata/dom/nodes/Node-appendChild.html.ini
new file mode 100644
index 00000000000..b71a27a5f08
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-appendChild.html.ini
@@ -0,0 +1,5 @@
+[Node-appendChild.html]
+ type: testharness
+ [WebIDL tests]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-insertBefore.html.ini b/src/test/wpt/metadata/dom/nodes/Node-insertBefore.html.ini
new file mode 100644
index 00000000000..0dc399ce4b8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-insertBefore.html.ini
@@ -0,0 +1,5 @@
+[Node-insertBefore.html]
+ type: testharness
+ [Calling insertBefore with a non-Node first argument must throw TypeError.]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-isEqualNode.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Node-isEqualNode.xhtml.ini
new file mode 100644
index 00000000000..ec35bfd9431
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-isEqualNode.xhtml.ini
@@ -0,0 +1,3 @@
+[Node-isEqualNode.xhtml]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Node-lookupPrefix.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Node-lookupPrefix.xhtml.ini
new file mode 100644
index 00000000000..72d35686a9a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-lookupPrefix.xhtml.ini
@@ -0,0 +1,3 @@
+[Node-lookupPrefix.xhtml]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Node-nodeName.html.ini b/src/test/wpt/metadata/dom/nodes/Node-nodeName.html.ini
new file mode 100644
index 00000000000..247299b4282
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-nodeName.html.ini
@@ -0,0 +1,5 @@
+[Node-nodeName.html]
+ type: testharness
+ [For Element nodes, nodeName should return the same as tagName.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-nodeName.xhtml.ini b/src/test/wpt/metadata/dom/nodes/Node-nodeName.xhtml.ini
new file mode 100644
index 00000000000..62e013eb53a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-nodeName.xhtml.ini
@@ -0,0 +1,5 @@
+[Node-nodeName.xhtml]
+ type: testharness
+ [For Element nodes, nodeName should return the same as tagName.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-normalize.html.ini b/src/test/wpt/metadata/dom/nodes/Node-normalize.html.ini
new file mode 100644
index 00000000000..215c710f475
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-normalize.html.ini
@@ -0,0 +1,5 @@
+[Node-normalize.html]
+ type: testharness
+ [Node.normalize()]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-parentNode.html.ini b/src/test/wpt/metadata/dom/nodes/Node-parentNode.html.ini
new file mode 100644
index 00000000000..a9b0f0820f9
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-parentNode.html.ini
@@ -0,0 +1,3 @@
+[Node-parentNode.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/Node-replaceChild.html.ini b/src/test/wpt/metadata/dom/nodes/Node-replaceChild.html.ini
new file mode 100644
index 00000000000..38937064a32
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-replaceChild.html.ini
@@ -0,0 +1,5 @@
+[Node-replaceChild.html]
+ type: testharness
+ [Passing null to replaceChild should throw a TypeError.]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/nodes/Node-textContent.html.ini b/src/test/wpt/metadata/dom/nodes/Node-textContent.html.ini
new file mode 100644
index 00000000000..f394dcaf4f0
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/Node-textContent.html.ini
@@ -0,0 +1,3 @@
+[Node-textContent.html]
+ type: testharness
+ expected: ERROR
diff --git a/src/test/wpt/metadata/dom/nodes/attributes.html.ini b/src/test/wpt/metadata/dom/nodes/attributes.html.ini
new file mode 100644
index 00000000000..20ecd9a4660
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/attributes.html.ini
@@ -0,0 +1,47 @@
+[attributes.html]
+ type: testharness
+ [When qualifiedName does not match the Name production, an INVALID_CHARACTER_ERR exception is to be thrown. (setAttribute)]
+ expected: FAIL
+
+ [setAttribute should lowercase its name argument (upper case attribute)]
+ expected: FAIL
+
+ [setAttribute should lowercase its name argument (mixed case attribute)]
+ expected: FAIL
+
+ [setAttribute should set the attribute with the given qualified name]
+ expected: FAIL
+
+ [When qualifiedName does not match the Name production, an INVALID_CHARACTER_ERR exception is to be thrown. (setAttributeNS)]
+ expected: FAIL
+
+ [When qualifiedName does not match the QName production, an NAMESPACE_ERR exception is to be thrown.]
+ expected: FAIL
+
+ [A namespace is required to use a prefix.]
+ expected: FAIL
+
+ [The xml prefix should not be allowed for arbitrary namespaces]
+ expected: FAIL
+
+ [The xmlns prefix should not be allowed for arbitrary namespaces]
+ expected: FAIL
+
+ [The xmlns qualified name should not be allowed for arbitrary namespaces]
+ expected: FAIL
+
+ [The XMLNS namespace should require xmlns as prefix or qualified name]
+ expected: FAIL
+
+ [First set attribute is returned by getAttribute]
+ expected: FAIL
+
+ [Only lowercase attributes are returned on HTML elements (upper case attribute)]
+ expected: FAIL
+
+ [Only lowercase attributes are returned on HTML elements (mixed case attribute)]
+ expected: FAIL
+
+ [First set attribute is returned with mapped attribute set later]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/case.html.ini b/src/test/wpt/metadata/dom/nodes/case.html.ini
new file mode 100644
index 00000000000..fb208dc1439
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/case.html.ini
@@ -0,0 +1,383 @@
+[case.html]
+ type: testharness
+ [createElement abc]
+ expected: FAIL
+
+ [getElementsByTagName a:abc]
+ expected: FAIL
+
+ [getElementsByTagName abc]
+ expected: FAIL
+
+ [createElement Abc]
+ expected: FAIL
+
+ [getElementsByTagName a:Abc]
+ expected: FAIL
+
+ [getElementsByTagName Abc]
+ expected: FAIL
+
+ [createElement ABC]
+ expected: FAIL
+
+ [getElementsByTagName a:ABC]
+ expected: FAIL
+
+ [getElementsByTagName ABC]
+ expected: FAIL
+
+ [createElement \xc3\xa4]
+ expected: FAIL
+
+ [getElementsByTagName a:\xc3\xa4]
+ expected: FAIL
+
+ [getElementsByTagName \xc3\xa4]
+ expected: FAIL
+
+ [createElement \xc3\x84]
+ expected: FAIL
+
+ [getElementsByTagName a:\xc3\x84]
+ expected: FAIL
+
+ [getElementsByTagName \xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,abc,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,Abc,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,Abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,Abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,Abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,Abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,Abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,Abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,ABC,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,ABC,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,ABC,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,ABC,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,ABC,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,ABC,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,ABC,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\xa4,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\xa4,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\xa4,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\x84,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\x84,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,\xc3\x84,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\x84,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/1999/xhtml,\xc3\x84,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\x84,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/1999/xhtml,\xc3\x84,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,abc,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,Abc,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,Abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,Abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,Abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,Abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,Abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,Abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,ABC,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,ABC,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,ABC,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,ABC,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,ABC,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,ABC,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,ABC,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\xa4,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\xa4,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\xa4,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\x84,abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\x84,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,\xc3\x84,Abc]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\x84,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://www.w3.org/2000/svg,\xc3\x84,ABC]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\x84,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://www.w3.org/2000/svg,\xc3\x84,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://FOO,abc,abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://FOO,abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://FOO,abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://FOO,Abc,abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,Abc,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,Abc,Abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,Abc,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,Abc,ABC]
+ expected: FAIL
+
+ [createElementNS http://FOO,Abc,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://FOO,Abc,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://FOO,ABC,abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,ABC,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,ABC,Abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,ABC,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,ABC,ABC]
+ expected: FAIL
+
+ [createElementNS http://FOO,ABC,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://FOO,ABC,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\xa4,abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,\xc3\xa4,Abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,\xc3\xa4,ABC]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\xa4,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\xa4,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\x84,abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\x84,Abc]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,\xc3\x84,Abc]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\x84,ABC]
+ expected: FAIL
+
+ [getAttributeNS http://FOO,\xc3\x84,ABC]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\x84,\xc3\xa4]
+ expected: FAIL
+
+ [createElementNS http://FOO,\xc3\x84,\xc3\x84]
+ expected: FAIL
+
+ [createElementNS abc]
+ expected: FAIL
+
+ [createElementNS Abc]
+ expected: FAIL
+
+ [getAttributeNS Abc]
+ expected: FAIL
+
+ [createElementNS ABC]
+ expected: FAIL
+
+ [getAttributeNS ABC]
+ expected: FAIL
+
+ [createElementNS \xc3\xa4]
+ expected: FAIL
+
+ [createElementNS \xc3\x84]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini
new file mode 100644
index 00000000000..e27303c0fe0
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-12.htm]
+ type: testharness
+ [element.getElementsByClassName(): simple]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini
new file mode 100644
index 00000000000..d7699df380c
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-13.htm]
+ type: testharness
+ [element.getElementsByClassName(): adding an element]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-14.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-14.htm.ini
new file mode 100644
index 00000000000..c64fcf0e3e7
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-14.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-14.htm]
+ type: testharness
+ [document.getElementsByClassName(): case-insensitive (quirks mode)]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini
new file mode 100644
index 00000000000..95c4a3ef759
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-18.htm]
+ type: testharness
+ [element.getElementsByClassName(array): "a", "b"]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-20.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-20.htm.ini
new file mode 100644
index 00000000000..b3ae75b2960
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-20.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-20.htm]
+ type: testharness
+ [get elements in document then add element to collection]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-21.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-21.htm.ini
new file mode 100644
index 00000000000..143ad1185c4
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-21.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-21.htm]
+ type: testharness
+ [delete element from collection]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-22.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-22.htm.ini
new file mode 100644
index 00000000000..edb0b18eec8
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-22.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-22.htm]
+ type: testharness
+ [move item in collection order]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-25.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-25.htm.ini
new file mode 100644
index 00000000000..b75ced052c3
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-25.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-25.htm]
+ type: testharness
+ [verify spacing is handled correctly]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-30.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-30.htm.ini
new file mode 100644
index 00000000000..f39c284c3ed
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-30.htm.ini
@@ -0,0 +1,3 @@
+[getElementsByClassName-30.htm]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/dom/nodes/getElementsByClassName-31.htm.ini b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-31.htm.ini
new file mode 100644
index 00000000000..c827621a16d
--- /dev/null
+++ b/src/test/wpt/metadata/dom/nodes/getElementsByClassName-31.htm.ini
@@ -0,0 +1,5 @@
+[getElementsByClassName-31.htm]
+ type: testharness
+ [getElementsByClassName across documents]
+ expected: TIMEOUT
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-attributes.html.ini b/src/test/wpt/metadata/dom/ranges/Range-attributes.html.ini
new file mode 100644
index 00000000000..747d7178dad
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-attributes.html.ini
@@ -0,0 +1,5 @@
+[Range-attributes.html]
+ type: testharness
+ [Range attributes]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-commonAncestorContainer-2.html.ini b/src/test/wpt/metadata/dom/ranges/Range-commonAncestorContainer-2.html.ini
new file mode 100644
index 00000000000..896fb81fed7
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-commonAncestorContainer-2.html.ini
@@ -0,0 +1,17 @@
+[Range-commonAncestorContainer-2.html]
+ type: testharness
+ [Detached Range]
+ expected: FAIL
+
+ [Range.commonAncestorContainer]
+ expected: FAIL
+
+ [Range.commonAncestorContainer 1]
+ expected: FAIL
+
+ [Range.commonAncestorContainer 2]
+ expected: FAIL
+
+ [Range.commonAncestorContainer 3]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-comparePoint-2.html.ini b/src/test/wpt/metadata/dom/ranges/Range-comparePoint-2.html.ini
new file mode 100644
index 00000000000..3d718d74924
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-comparePoint-2.html.ini
@@ -0,0 +1,11 @@
+[Range-comparePoint-2.html]
+ type: testharness
+ [Range.comparePoint]
+ expected: FAIL
+
+ [Range.comparePoint 1]
+ expected: FAIL
+
+ [Range.comparePoint 2]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-detach.html.ini b/src/test/wpt/metadata/dom/ranges/Range-detach.html.ini
new file mode 100644
index 00000000000..ee75b8271c7
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-detach.html.ini
@@ -0,0 +1,5 @@
+[Range-detach.html]
+ type: testharness
+ [Range.detach]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-intersectsNode-binding.html.ini b/src/test/wpt/metadata/dom/ranges/Range-intersectsNode-binding.html.ini
new file mode 100644
index 00000000000..48cfca8324a
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-intersectsNode-binding.html.ini
@@ -0,0 +1,5 @@
+[Range-intersectsNode-binding.html]
+ type: testharness
+ [Calling intersectsNode without an argument or with an invalid argument should throw a TypeError.]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-isPointInRange.html.ini b/src/test/wpt/metadata/dom/ranges/Range-isPointInRange.html.ini
new file mode 100644
index 00000000000..06cacb7f0b4
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-isPointInRange.html.ini
@@ -0,0 +1,5 @@
+[Range-isPointInRange.html]
+ type: testharness
+ [Setup]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/dom/ranges/Range-mutations.html.ini b/src/test/wpt/metadata/dom/ranges/Range-mutations.html.ini
new file mode 100644
index 00000000000..0abe36c6955
--- /dev/null
+++ b/src/test/wpt/metadata/dom/ranges/Range-mutations.html.ini
@@ -0,0 +1,3 @@
+[Range-mutations.html]
+ type: testharness
+ expected: TIMEOUT
diff --git a/src/test/wpt/metadata/domxpath/001.html.ini b/src/test/wpt/metadata/domxpath/001.html.ini
new file mode 100644
index 00000000000..d08f9a4775e
--- /dev/null
+++ b/src/test/wpt/metadata/domxpath/001.html.ini
@@ -0,0 +1,32 @@
+[001.html]
+ type: testharness
+ [HTML elements no namespace prefix]
+ expected: FAIL
+
+ [HTML elements namespace prefix]
+ expected: FAIL
+
+ [HTML elements mixed use of prefix]
+ expected: FAIL
+
+ [SVG elements no namespace prefix]
+ expected: FAIL
+
+ [SVG elements namespace prefix]
+ expected: FAIL
+
+ [HTML elements mixed case]
+ expected: FAIL
+
+ [SVG elements mixed case selector]
+ expected: FAIL
+
+ [Non-ascii HTML element]
+ expected: FAIL
+
+ [Non-ascii HTML element2]
+ expected: FAIL
+
+ [Throw with invalid prefix]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/domxpath/002.html.ini b/src/test/wpt/metadata/domxpath/002.html.ini
new file mode 100644
index 00000000000..8b0b413968c
--- /dev/null
+++ b/src/test/wpt/metadata/domxpath/002.html.ini
@@ -0,0 +1,47 @@
+[002.html]
+ type: testharness
+ [Select html element based on attribute]
+ expected: FAIL
+
+ [Select html element based on attribute mixed case]
+ expected: FAIL
+
+ [Select both HTML and SVG elements based on attribute]
+ expected: FAIL
+
+ [Select HTML element with non-ascii attribute 1]
+ expected: FAIL
+
+ [Select HTML element with non-ascii attribute 2]
+ expected: FAIL
+
+ [Select HTML element with non-ascii attribute 3]
+ expected: FAIL
+
+ [Select SVG element based on mixed case attribute]
+ expected: FAIL
+
+ [Select both HTML and SVG elements based on mixed case attribute]
+ expected: FAIL
+
+ [Select SVG elements with refX attribute]
+ expected: FAIL
+
+ [Select SVG elements with refX attribute incorrect case]
+ expected: FAIL
+
+ [Select SVG elements with refX attribute lowercase]
+ expected: FAIL
+
+ [Select SVG element with non-ascii attribute 1]
+ expected: FAIL
+
+ [Select SVG element with non-ascii attribute 2]
+ expected: FAIL
+
+ [xmlns attribute]
+ expected: FAIL
+
+ [svg element with XLink attribute]
+ expected: FAIL
+
diff --git a/src/test/wpt/metadata/domxpath/evaluator-constructor.html.ini b/src/test/wpt/metadata/domxpath/evaluator-constructor.html.ini
new file mode 100644
index 00000000000..22d519273c4
--- /dev/null
+++ b/src/test/wpt/metadata/domxpath/evaluator-constructor.html.ini
@@ -0,0 +1,8 @@
+[evaluator-constructor.html]
+ type: testharness
+ [Constructor with \'new\']
+ expected: FAIL
+
+ [Constructor without \'new\']
+ expected: FAIL
+