diff options
115 files changed, 2874 insertions, 76 deletions
diff --git a/README.md b/README.md index d6af215eca5..52ddaecf05e 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ On Debian-based Linuxes: ``` sh sudo apt-get install autoconf2.13 curl freeglut3-dev libtool \ libfreetype6-dev libgl1-mesa-dri libglib2.0-dev xorg-dev \ - msttcorefonts gperf g++ + msttcorefonts gperf g++ automake cmake ``` On Fedora Core: diff --git a/mk/check.mk b/mk/check.mk index 9fcda7cd7ad..766815d755d 100644 --- a/mk/check.mk +++ b/mk/check.mk @@ -93,7 +93,7 @@ check-content: contenttest .PHONY: check-wpt check-wpt: - bash $(S)src/test/wpt/run.sh $(S) + bash $(S)src/test/wpt/run.sh $(S) $(B) .PHONY: tidy tidy: diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index ba9e53e2723..1e30647a3d6 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -670,8 +670,8 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, conversionCode = ( "match FromJSValConvertible::from_jsval(cx, ${val}, %s) {\n" " Ok(strval) => ${declName} = %s,\n" - " Err(_) => return 0,\n" - "}" % (nullBehavior, strval)) + " Err(_) => { %s },\n" + "}" % (nullBehavior, strval, exceptionCode)) if defaultValue is None: return conversionCode @@ -794,7 +794,6 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, assert not isOptional typeName = CGDictionary.makeDictionaryName(type.inner) - selfRef = "${declName}" declType = CGGeneric(typeName) @@ -806,10 +805,10 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, else: val = "${val}" - template = ("%s = %s::new();\n" - "if %s.Init(cx, %s) == 0 {\n" - " return 0;\n" - "}" % (selfRef, typeName, selfRef, val)) + template = ("${declName} = match %s::new(cx, %s) {\n" + " Ok(dictionary) => dictionary,\n" + " Err(_) => return 0,\n" + "};" % (typeName, val)) return (template, declType, None, False, None) @@ -4143,7 +4142,9 @@ class CGDictionary(CGThing): descriptorProvider, isMember=True, isOptional=(not member.defaultValue), - defaultValue=member.defaultValue)) + defaultValue=member.defaultValue, + failureCode="return Err(());", + exceptionCode="return Err(());")) for member in dictionary.members ] def define(self): @@ -4172,10 +4173,11 @@ class CGDictionary(CGThing): def impl(self): d = self.dictionary if d.parent: - initParent = ("// Per spec, we init the parent's members first\n" - "if self.parent.Init(cx, val) == 0 {\n" - " return 0;\n" - "}\n") + initParent = ("parent: match %s::%s::new(cx, val) {\n" + " Ok(parent) => parent,\n" + " Err(_) => return Err(()),\n" + "},\n") % (self.makeModuleName(d.parent), + self.makeClassName(d.parent)) else: initParent = "" @@ -4196,28 +4198,24 @@ class CGDictionary(CGThing): return string.Template( "impl ${selfName} {\n" - " pub fn new() -> ${selfName} {\n" - " ${selfName} {\n" + - ((" parent: %s::%s::new(),\n" % (self.makeModuleName(d.parent), - self.makeClassName(d.parent))) if d.parent else "") + + " pub fn new(cx: *JSContext, val: JSVal) -> Result<${selfName}, ()> {\n" + " let mut result = ${selfName} {\n" + "${initParent}" + "\n".join(" %s: %s," % (self.makeMemberName(m[0].identifier.name), defaultValue(self.getMemberType(m))) for m in self.memberInfo) + "\n" - " }\n" - " }\n" + " };\n" "\n" - " pub fn Init(&mut self, cx: *JSContext, val: JSVal) -> JSBool {\n" + " let object = if val.is_null_or_undefined() {\n" + " ptr::null()\n" + " } else if val.is_object() {\n" + " val.to_object()\n" + " } else {\n" + " //XXXjdm throw properly here\n" + " return Err(());\n" + " };\n" " unsafe {\n" - "${initParent}" - " let mut found: JSBool = 0;\n" - " let temp: JSVal = NullValue();\n" - " let isNull = val.is_null_or_undefined();\n" - " if !isNull && val.is_primitive() {\n" - " return 0; //XXXjdm throw properly here\n" - " //return Throw(cx, NS_ERROR_XPC_BAD_CONVERT_JS);\n" - " }\n" - "\n" "${initMembers}\n" - " return 1;\n" " }\n" + " Ok(result)\n" " }\n" "}").substitute({ "selfName": self.makeClassName(d), @@ -4253,9 +4251,8 @@ class CGDictionary(CGThing): def getMemberConversion(self, memberInfo): (member, (templateBody, declType, holderType, dealWithOptional, initialValue)) = memberInfo - replacements = { "val": "temp", - "valPtr": "&temp", - "declName": ("self.%s" % self.makeMemberName(member.identifier.name)), + replacements = { "val": "value.unwrap()", + "declName": ("result.%s" % self.makeMemberName(member.identifier.name)), # We need a holder name for external interfaces, but # it's scoped down to the conversion so we can just use # anything we want. @@ -4265,48 +4262,25 @@ class CGDictionary(CGThing): if dealWithOptional: replacements["declName"] = "(" + replacements["declName"] + ".Value())" if member.defaultValue: - replacements["haveValue"] = "found != 0" + replacements["haveValue"] = "value.is_some()" propName = member.identifier.name - propCheck = ('"%s".to_c_str().with_ref(|s| { JS_HasProperty(cx, val.to_object(), s, &found) })' % - propName) - propGet = ('"%s".to_c_str().with_ref(|s| { JS_GetProperty(cx, val.to_object(), s, &temp) })' % - propName) - - conversionReplacements = { - "prop": "(this->%s)" % member.identifier.name, - "convert": string.Template(templateBody).substitute(replacements), - "propCheck": propCheck, - "propGet": propGet - } - conversion = ("if isNull {\n" - " found = 0;\n" - "} else if ${propCheck} == 0 {\n" - " return 0;\n" - "}\n") - if member.defaultValue: - conversion += ( - "if found != 0 {\n" - " if ${propGet} == 0 {\n" - " return 0;\n" - " }\n" - "}\n" - "${convert}") - else: - conversion += ( - "if found != 0 {\n" - " ${prop}.Construct();\n" - " if ${propGet} == 0 {\n" - " return 0;\n" - " }\n" - "${convert}\n" - "}") - conversionReplacements["convert"] = CGIndenter( - CGGeneric(conversionReplacements["convert"])).define() - - return CGGeneric( - string.Template(conversion).substitute(conversionReplacements) - ) + conversion = CGIndenter( + CGGeneric(string.Template(templateBody).substitute(replacements)), + 8).define() + if not member.defaultValue: + raise TypeError("We don't support dictionary members without a " + "default value.") + + conversion = ( + "match get_dictionary_property(cx, object, \"%s\") {\n" + " Err(()) => return Err(()),\n" + " Ok(value) => {\n" + "%s\n" + " },\n" + "}\n") % (propName, conversion) + + return CGGeneric(conversion) @staticmethod def makeIdName(name): @@ -4450,6 +4424,7 @@ class CGBindingRoot(CGThing): 'dom::bindings::utils::{ThrowingConstructor, unwrap, unwrap_jsmanaged}', 'dom::bindings::utils::{VoidVal, with_gc_disabled}', 'dom::bindings::utils::{with_gc_enabled}', + 'dom::bindings::utils::get_dictionary_property', 'dom::bindings::trace::JSTraceable', 'dom::bindings::callback::{CallbackContainer,CallbackInterface}', 'dom::bindings::callback::{CallSetup,ExceptionHandling}', diff --git a/src/components/script/dom/bindings/utils.rs b/src/components/script/dom/bindings/utils.rs index 05d84c2f451..8d506b6fce4 100644 --- a/src/components/script/dom/bindings/utils.rs +++ b/src/components/script/dom/bindings/utils.rs @@ -27,6 +27,7 @@ use js::jsapi::{JS_GetClass, JS_LinkConstructorAndPrototype, JS_GetStringCharsAn use js::jsapi::{JS_ObjectIsRegExp, JS_ObjectIsDate}; use js::jsapi::{JS_InternString, JS_GetFunctionObject}; use js::jsapi::{JS_HasPropertyById, JS_GetPrototype}; +use js::jsapi::{JS_GetProperty, JS_HasProperty}; use js::jsapi::{JS_DefineFunctions, JS_DefineProperty}; use js::jsapi::{JS_ValueToString, JS_GetReservedSlot, JS_SetReservedSlot}; use js::jsapi::{JSContext, JSObject, JSBool, jsid, JSClass, JSNative}; @@ -492,6 +493,49 @@ pub fn FindEnumStringIndex(cx: *JSContext, } } +pub fn get_dictionary_property(cx: *JSContext, + object: *JSObject, + property: &str) -> Result<Option<JSVal>, ()> { + use std::c_str::CString; + fn has_property(cx: *JSContext, object: *JSObject, property: &CString, + found: &mut JSBool) -> bool { + unsafe { + property.with_ref(|s| { + JS_HasProperty(cx, object, s, found as *mut _ as *_) != 0 + }) + } + } + fn get_property(cx: *JSContext, object: *JSObject, property: &CString, + value: &mut JSVal) -> bool { + unsafe { + property.with_ref(|s| { + JS_GetProperty(cx, object, s, value as *mut _ as *_) != 0 + }) + } + } + + let property = property.to_c_str(); + if object.is_null() { + return Ok(None); + } + + let mut found: JSBool = 0; + if !has_property(cx, object, &property, &mut found) { + return Err(()); + } + + if found == 0 { + return Ok(None); + } + + let mut value = NullValue(); + if !get_property(cx, object, &property, &mut value) { + return Err(()); + } + + Ok(Some(value)) +} + pub fn HasPropertyOnPrototype(cx: *JSContext, proxy: *JSObject, id: jsid) -> bool { // MOZ_ASSERT(js::IsProxy(proxy) && js::GetProxyHandler(proxy) == handler); let mut found = false; 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 + diff --git a/src/test/wpt/run.sh b/src/test/wpt/run.sh index b60b7c2a1fb..83406765aff 100644 --- a/src/test/wpt/run.sh +++ b/src/test/wpt/run.sh @@ -2,7 +2,7 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. -cd $1/build +cd $2/.. test -d _virtualenv || virtualenv _virtualenv test -d $1/src/test/wpt/metadata || mkdir -p $1/src/test/wpt/metadata @@ -10,4 +10,4 @@ test -d $1/src/test/wpt/prefs || mkdir -p $1/src/test/wpt/prefs source _virtualenv/bin/activate (python -c "import html5lib" &>/dev/null) || pip install html5lib (python -c "import wptrunner" &>/dev/null) || pip install wptrunner -python $1/src/test/wpt/run.py +python $1/src/test/wpt/run.py --binary $2/../servo |