Bug 1233726 - Update web-platform-tests to revision 05c55fbdc527eacdc7b875f298a8cb1b6db0dfcd, a=testonly
@ -101,10 +101,6 @@
|
||||
"path": "battery-status/battery-charging-manual.html",
|
||||
"url": "/battery-status/battery-charging-manual.html"
|
||||
},
|
||||
{
|
||||
"path": "battery-status/battery-created-manual.html",
|
||||
"url": "/battery-status/battery-created-manual.html"
|
||||
},
|
||||
{
|
||||
"path": "battery-status/battery-discharging-manual.html",
|
||||
"url": "/battery-status/battery-discharging-manual.html"
|
||||
@ -777,6 +773,10 @@
|
||||
"path": "html/semantics/forms/the-input-element/file-manual.html",
|
||||
"url": "/html/semantics/forms/the-input-element/file-manual.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/forms/the-input-element/maxlength-manual.html",
|
||||
"url": "/html/semantics/forms/the-input-element/maxlength-manual.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/forms/the-optgroup-element/optgroup-disabled-manual.html",
|
||||
"url": "/html/semantics/forms/the-optgroup-element/optgroup-disabled-manual.html"
|
||||
@ -13091,6 +13091,10 @@
|
||||
"path": "content-security-policy/media-src/media-src-7_3_2.html",
|
||||
"url": "/content-security-policy/media-src/media-src-7_3_2.html"
|
||||
},
|
||||
{
|
||||
"path": "content-security-policy/media-src/media-src-redir-bug.sub.html",
|
||||
"url": "/content-security-policy/media-src/media-src-redir-bug.sub.html"
|
||||
},
|
||||
{
|
||||
"path": "content-security-policy/meta/meta-img-src.html",
|
||||
"url": "/content-security-policy/meta/meta-img-src.html"
|
||||
@ -13267,10 +13271,6 @@
|
||||
"path": "custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-move-element-test.html",
|
||||
"url": "/custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-move-element-test.html"
|
||||
},
|
||||
{
|
||||
"path": "custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-test.html",
|
||||
"url": "/custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-test.html"
|
||||
},
|
||||
{
|
||||
"path": "custom-elements/custom-element-lifecycle/types-of-callbacks/attribute-changed-callback-change-attribute-test.html",
|
||||
"url": "/custom-elements/custom-element-lifecycle/types-of-callbacks/attribute-changed-callback-change-attribute-test.html"
|
||||
@ -13740,12 +13740,12 @@
|
||||
"url": "/dom/nodes/Document-createEvent.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-createProcessingInstruction.html",
|
||||
"url": "/dom/nodes/Document-createProcessingInstruction.html"
|
||||
"path": "dom/nodes/Document-createProcessingInstruction-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Document-createProcessingInstruction-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-createProcessingInstruction.xhtml",
|
||||
"url": "/dom/nodes/Document-createProcessingInstruction.xhtml"
|
||||
"path": "dom/nodes/Document-createProcessingInstruction.html",
|
||||
"url": "/dom/nodes/Document-createProcessingInstruction.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-createTextNode.html",
|
||||
@ -13764,12 +13764,12 @@
|
||||
"url": "/dom/nodes/Document-getElementById.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-getElementsByTagName.html",
|
||||
"url": "/dom/nodes/Document-getElementsByTagName.html"
|
||||
"path": "dom/nodes/Document-getElementsByTagName-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Document-getElementsByTagName-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-getElementsByTagName.xhtml",
|
||||
"url": "/dom/nodes/Document-getElementsByTagName.xhtml"
|
||||
"path": "dom/nodes/Document-getElementsByTagName.html",
|
||||
"url": "/dom/nodes/Document-getElementsByTagName.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-getElementsByTagNameNS.html",
|
||||
@ -13784,77 +13784,77 @@
|
||||
"url": "/dom/nodes/Document-importNode.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/DocumentType-literal.html",
|
||||
"url": "/dom/nodes/DocumentType-literal.html"
|
||||
"path": "dom/nodes/DocumentType-literal-xhtml.xhtml",
|
||||
"url": "/dom/nodes/DocumentType-literal-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/DocumentType-literal.xhtml",
|
||||
"url": "/dom/nodes/DocumentType-literal.xhtml"
|
||||
"path": "dom/nodes/DocumentType-literal.html",
|
||||
"url": "/dom/nodes/DocumentType-literal.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/DocumentType-remove.html",
|
||||
"url": "/dom/nodes/DocumentType-remove.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElement-null-svg.svg",
|
||||
"url": "/dom/nodes/Element-childElement-null-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElement-null-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-childElement-null-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElement-null.html",
|
||||
"url": "/dom/nodes/Element-childElement-null.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElement-null.svg",
|
||||
"url": "/dom/nodes/Element-childElement-null.svg"
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-add-svg.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-add-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElement-null.xhtml",
|
||||
"url": "/dom/nodes/Element-childElement-null.xhtml"
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-add-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-add-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-add.html",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-add.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-add.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-add.svg"
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-remove-svg.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-remove-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-add.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-add.xhtml"
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-remove-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-remove-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-remove.html",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-remove.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-remove.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-remove.svg"
|
||||
"path": "dom/nodes/Element-childElementCount-nochild-svg.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-nochild-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-dynamic-remove.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-dynamic-remove.xhtml"
|
||||
"path": "dom/nodes/Element-childElementCount-nochild-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-nochild-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-nochild.html",
|
||||
"url": "/dom/nodes/Element-childElementCount-nochild.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-nochild.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-nochild.svg"
|
||||
"path": "dom/nodes/Element-childElementCount-svg.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount-nochild.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-nochild.xhtml"
|
||||
"path": "dom/nodes/Element-childElementCount-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount.html",
|
||||
"url": "/dom/nodes/Element-childElementCount.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount.svg",
|
||||
"url": "/dom/nodes/Element-childElementCount.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-childElementCount.xhtml",
|
||||
"url": "/dom/nodes/Element-childElementCount.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-children.html",
|
||||
"url": "/dom/nodes/Element-children.html"
|
||||
@ -13867,38 +13867,38 @@
|
||||
"path": "dom/nodes/Element-closest.html",
|
||||
"url": "/dom/nodes/Element-closest.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-entity-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild-entity-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-entity.svg",
|
||||
"url": "/dom/nodes/Element-firstElementChild-entity.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-entity.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild-entity.xhtml"
|
||||
"path": "dom/nodes/Element-firstElementChild-namespace-svg.svg",
|
||||
"url": "/dom/nodes/Element-firstElementChild-namespace-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-namespace-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild-namespace-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-namespace.html",
|
||||
"url": "/dom/nodes/Element-firstElementChild-namespace.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-namespace.svg",
|
||||
"url": "/dom/nodes/Element-firstElementChild-namespace.svg"
|
||||
"path": "dom/nodes/Element-firstElementChild-svg.svg",
|
||||
"url": "/dom/nodes/Element-firstElementChild-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild-namespace.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild-namespace.xhtml"
|
||||
"path": "dom/nodes/Element-firstElementChild-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild.html",
|
||||
"url": "/dom/nodes/Element-firstElementChild.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild.svg",
|
||||
"url": "/dom/nodes/Element-firstElementChild.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-firstElementChild.xhtml",
|
||||
"url": "/dom/nodes/Element-firstElementChild.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-getElementsByClassName.html",
|
||||
"url": "/dom/nodes/Element-getElementsByClassName.html"
|
||||
@ -13915,46 +13915,46 @@
|
||||
"path": "dom/nodes/Element-getElementsByTagNameNS.html",
|
||||
"url": "/dom/nodes/Element-getElementsByTagNameNS.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-lastElementChild-svg.svg",
|
||||
"url": "/dom/nodes/Element-lastElementChild-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-lastElementChild-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-lastElementChild-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-lastElementChild.html",
|
||||
"url": "/dom/nodes/Element-lastElementChild.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-lastElementChild.svg",
|
||||
"url": "/dom/nodes/Element-lastElementChild.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-lastElementChild.xhtml",
|
||||
"url": "/dom/nodes/Element-lastElementChild.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-matches.html",
|
||||
"url": "/dom/nodes/Element-matches.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-nextElementSibling-svg.svg",
|
||||
"url": "/dom/nodes/Element-nextElementSibling-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-nextElementSibling-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-nextElementSibling-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-nextElementSibling.html",
|
||||
"url": "/dom/nodes/Element-nextElementSibling.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-nextElementSibling.svg",
|
||||
"url": "/dom/nodes/Element-nextElementSibling.svg"
|
||||
"path": "dom/nodes/Element-previousElementSibling-svg.svg",
|
||||
"url": "/dom/nodes/Element-previousElementSibling-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-nextElementSibling.xhtml",
|
||||
"url": "/dom/nodes/Element-nextElementSibling.xhtml"
|
||||
"path": "dom/nodes/Element-previousElementSibling-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-previousElementSibling-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-previousElementSibling.html",
|
||||
"url": "/dom/nodes/Element-previousElementSibling.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-previousElementSibling.svg",
|
||||
"url": "/dom/nodes/Element-previousElementSibling.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-previousElementSibling.xhtml",
|
||||
"url": "/dom/nodes/Element-previousElementSibling.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-remove.html",
|
||||
"url": "/dom/nodes/Element-remove.html"
|
||||
@ -13963,18 +13963,18 @@
|
||||
"path": "dom/nodes/Element-removeAttributeNS.html",
|
||||
"url": "/dom/nodes/Element-removeAttributeNS.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-siblingElement-null-svg.svg",
|
||||
"url": "/dom/nodes/Element-siblingElement-null-svg.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-siblingElement-null-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Element-siblingElement-null-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-siblingElement-null.html",
|
||||
"url": "/dom/nodes/Element-siblingElement-null.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-siblingElement-null.svg",
|
||||
"url": "/dom/nodes/Element-siblingElement-null.svg"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-siblingElement-null.xhtml",
|
||||
"url": "/dom/nodes/Element-siblingElement-null.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Element-tagName.html",
|
||||
"url": "/dom/nodes/Element-tagName.html"
|
||||
@ -14056,12 +14056,12 @@
|
||||
"url": "/dom/nodes/Node-lookupPrefix.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Node-nodeName.html",
|
||||
"url": "/dom/nodes/Node-nodeName.html"
|
||||
"path": "dom/nodes/Node-nodeName-xhtml.xhtml",
|
||||
"url": "/dom/nodes/Node-nodeName-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Node-nodeName.xhtml",
|
||||
"url": "/dom/nodes/Node-nodeName.xhtml"
|
||||
"path": "dom/nodes/Node-nodeName.html",
|
||||
"url": "/dom/nodes/Node-nodeName.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Node-nodeValue.html",
|
||||
@ -14104,12 +14104,12 @@
|
||||
"url": "/dom/nodes/ParentNode-prepend.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/ParentNode-querySelector-All.html",
|
||||
"url": "/dom/nodes/ParentNode-querySelector-All.html"
|
||||
"path": "dom/nodes/ParentNode-querySelector-All-xht.xht",
|
||||
"url": "/dom/nodes/ParentNode-querySelector-All-xht.xht"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/ParentNode-querySelector-All.xht",
|
||||
"url": "/dom/nodes/ParentNode-querySelector-All.xht"
|
||||
"path": "dom/nodes/ParentNode-querySelector-All.html",
|
||||
"url": "/dom/nodes/ParentNode-querySelector-All.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/ProcessingInstruction-literal-1.xhtml",
|
||||
@ -15047,10 +15047,6 @@
|
||||
"path": "html/browsers/browsing-the-web/scroll-to-fragid/006.html",
|
||||
"url": "/html/browsers/browsing-the-web/scroll-to-fragid/006.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/browsing-the-web/scroll-to-fragid/007.html",
|
||||
"url": "/html/browsers/browsing-the-web/scroll-to-fragid/007.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/browsing-the-web/unloading-documents/001.html",
|
||||
"url": "/html/browsers/browsing-the-web/unloading-documents/001.html"
|
||||
@ -15491,10 +15487,6 @@
|
||||
"path": "html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/close_unload.html",
|
||||
"url": "/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/close_unload.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html",
|
||||
"url": "/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/the-window-object/garbage-collection-and-browsing-contexts/discard_iframe_history_1.html",
|
||||
"url": "/html/browsers/the-window-object/garbage-collection-and-browsing-contexts/discard_iframe_history_1.html"
|
||||
@ -15631,58 +15623,58 @@
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByClassName-same.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByClassName-same.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-case.xhtml"
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-id.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-interface.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-interface.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-namespace.xhtml"
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.xhtml"
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-null-undef.xhtml"
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param-xhtml.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param.xhtml",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-param.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-same.html",
|
||||
"url": "/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-same.html"
|
||||
@ -18015,6 +18007,10 @@
|
||||
"path": "html/semantics/forms/the-input-element/input-type-checkbox.html",
|
||||
"url": "/html/semantics/forms/the-input-element/input-type-checkbox.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/forms/the-input-element/maxlength.html",
|
||||
"url": "/html/semantics/forms/the-input-element/maxlength.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/forms/the-input-element/month.html",
|
||||
"url": "/html/semantics/forms/the-input-element/month.html"
|
||||
@ -18296,12 +18292,12 @@
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-before-after-events.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-for-event.html",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-for-event.html"
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-for-event.xhtml",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-for-event.xhtml"
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-for-event.html",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-for-event.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-language-type.html",
|
||||
@ -18324,12 +18320,12 @@
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-onload-string.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-text.html",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-text.html"
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-text.xhtml",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-text.xhtml"
|
||||
"path": "html/semantics/scripting-1/the-script-element/script-text.html",
|
||||
"url": "/html/semantics/scripting-1/the-script-element/script-text.html"
|
||||
},
|
||||
{
|
||||
"path": "html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html",
|
||||
@ -26407,6 +26403,10 @@
|
||||
"path": "shadow-dom/untriaged/user-interaction/ranges-and-selections/test-002.html",
|
||||
"url": "/shadow-dom/untriaged/user-interaction/ranges-and-selections/test-002.html"
|
||||
},
|
||||
{
|
||||
"path": "svg/interfaces.html",
|
||||
"url": "/svg/interfaces.html"
|
||||
},
|
||||
{
|
||||
"path": "touch-events/create-touch-touchlist.html",
|
||||
"url": "/touch-events/create-touch-touchlist.html"
|
||||
@ -26440,12 +26440,12 @@
|
||||
"url": "/typedarrays/constructors.html"
|
||||
},
|
||||
{
|
||||
"path": "url/a-element.html",
|
||||
"url": "/url/a-element.html"
|
||||
"path": "url/a-element-xhtml.xhtml",
|
||||
"url": "/url/a-element-xhtml.xhtml"
|
||||
},
|
||||
{
|
||||
"path": "url/a-element.xhtml",
|
||||
"url": "/url/a-element.xhtml"
|
||||
"path": "url/a-element.html",
|
||||
"url": "/url/a-element.html"
|
||||
},
|
||||
{
|
||||
"path": "url/historical.html",
|
||||
@ -28797,6 +28797,11 @@
|
||||
"timeout": "long",
|
||||
"url": "/custom-elements/concepts/custom-elements-type-allowed-chars.html"
|
||||
},
|
||||
{
|
||||
"path": "custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-test.html",
|
||||
"timeout": "long",
|
||||
"url": "/custom-elements/custom-element-lifecycle/types-of-callbacks/attached-callback-test.html"
|
||||
},
|
||||
{
|
||||
"path": "dom/nodes/Document-characterSet-normalization.html",
|
||||
"timeout": "long",
|
||||
@ -28937,6 +28942,11 @@
|
||||
"timeout": "long",
|
||||
"url": "/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/browsing-the-web/scroll-to-fragid/007.html",
|
||||
"timeout": "long",
|
||||
"url": "/html/browsers/browsing-the-web/scroll-to-fragid/007.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/history/the-history-interface/007.html",
|
||||
"timeout": "long",
|
||||
@ -28947,6 +28957,11 @@
|
||||
"timeout": "long",
|
||||
"url": "/html/browsers/origin/cross-origin-objects/cross-origin-objects.sub.html"
|
||||
},
|
||||
{
|
||||
"path": "html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html",
|
||||
"timeout": "long",
|
||||
"url": "/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html"
|
||||
},
|
||||
{
|
||||
"path": "html/dom/interfaces.html",
|
||||
"timeout": "long",
|
||||
@ -35854,7 +35869,7 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
"rev": "63bf7b5e1e12b308ba6ed20480ad7dc93afa1943",
|
||||
"rev": "05c55fbdc527eacdc7b875f298a8cb1b6db0dfcd",
|
||||
"url_base": "/",
|
||||
"version": 2
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
42122dea7c41a71c8cb06a91b91e71afa2d6664c
|
||||
d5e5a44a8bbe62751a66677491623a41b766275d
|
@ -1,54 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Battery Test: no backend implementation, charger unplugged in</title>
|
||||
<meta name="flags" content="interact">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
|
||||
<h2>Description</h2>
|
||||
<p>
|
||||
<strong>
|
||||
This test is only useful on devices that expose the BatteryManager interface,
|
||||
but lack a backend implementation.
|
||||
</strong>
|
||||
</p>
|
||||
<p>
|
||||
This test validates that all of the BatteryManager attributes exist and are set to their default values.
|
||||
</p>
|
||||
|
||||
<h2>Preconditions</h2>
|
||||
<ol>
|
||||
<li>
|
||||
The implementation is unable to report the battery's charging state,
|
||||
charging time, level or remaining time respectively.
|
||||
</li>
|
||||
<li>
|
||||
The device is unplugged from the charger before this test case is run.
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
<div id="log"></div>
|
||||
|
||||
<script>
|
||||
|
||||
async_test(function (t) {
|
||||
navigator.getBattery().then(function (battery) {
|
||||
t.step(function () {
|
||||
assert_true(battery.charging, 'charging must be set to true');
|
||||
assert_equals(battery.chargingTime, 0, 'chargingTime must be set to 0');
|
||||
assert_equals(battery.dischargingTime, Infinity, 'dischargingTime must be set to Infinity');
|
||||
assert_equals(battery.level, 1.0, 'level must be set to 1.0');
|
||||
});
|
||||
t.done();
|
||||
}, function (error) {
|
||||
t.step(function () {
|
||||
assert_unreached(error.message);
|
||||
});
|
||||
t.done();
|
||||
});
|
||||
}, 'When a BatteryManager object is created, charging must be set to true, ' +
|
||||
'chargingTime to 0, level to 1.0 and dischargingTime to the value positive ' +
|
||||
'Infinity, if the implementation is unable to report the battery\'s charging ' +
|
||||
'state, charging time, level or remaining time respectively.');
|
||||
|
||||
</script>
|
@ -0,0 +1,66 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<title>Video element src attribute must match src list - positive test</title>
|
||||
<script src='/resources/testharness.js'></script>
|
||||
<script src='/resources/testharnessreport.js'></script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Video element in media-src list - redirect test</h1>
|
||||
<div id='log'></div>
|
||||
|
||||
<p>This test tests a buggy interaction in Chrome 46. Two hosts (self and www2) are both allowed
|
||||
as media-src, but only one (self) is allowed for connect-src. If a video src starts on
|
||||
an allowed host (self), and is redirected to another allowed media-src host, it should succeed. But a bug
|
||||
causes the redirect to be done in a fetch context to which connect-src is being applied instead, so
|
||||
the load is blocked. (This test passes in Firefox 45, modulo an event listener not firing.)</p>
|
||||
|
||||
<script>
|
||||
var src_test = async_test("In-policy async video src");
|
||||
var src_redir_test = async_test("in-policy async video src w/redir")
|
||||
var source_test = async_test("In-policy async video source element");
|
||||
var source_redir_test = async_test("In-policy async video source element w/redir");
|
||||
|
||||
function media_loaded(t) {
|
||||
t.done();
|
||||
}
|
||||
|
||||
function media_error_handler(t) {
|
||||
t.step( function () {
|
||||
assert_unreached("Media error handler shouldn't be triggered for allowed domain.");
|
||||
});
|
||||
t.done();
|
||||
}
|
||||
</script>
|
||||
|
||||
<video id="videoObject" width="320" height="240" controls
|
||||
onloadeddata="media_loaded(source_test)">
|
||||
<source id="videoSourceObject"
|
||||
type="video/mp4"
|
||||
onerror="media_error_handler(source_test)"
|
||||
src="http://www2.{{host}}:{{ports[http][0]}}/media/white.mp4">
|
||||
</video>
|
||||
|
||||
<video id="videoObject2" width="320" height="240" controls
|
||||
onerror="media_error_handler(src_test)"
|
||||
onloadeddata="media_loaded(src_test)"
|
||||
src="http://www2.{{host}}:{{ports[http][0]}}/media/white.mp4">
|
||||
|
||||
<video id="videoObject3" width="320" height="240" controls
|
||||
onloadeddata="media_loaded(source_redir_test)">
|
||||
<source id="videoSourceObject"
|
||||
type="video/mp4"
|
||||
onerror="media_error_handler(source_test)"
|
||||
src="/common/redirect.py?location=http://www2.{{host}}:{{ports[http][0]}}/media/white.mp4">
|
||||
</video>
|
||||
|
||||
<video id="videoObject2" width="320" height="240" controls
|
||||
onerror="media_error_handler(src_test)"
|
||||
onloadeddata="media_loaded(src_test)"
|
||||
src="/common/redirect.py?location=http://www2.{{host}}:{{ports[http][0]}}/media/white.mp4">
|
||||
|
||||
<script async defer src="../support/checkReport.sub.js?reportExists=false">
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,6 @@
|
||||
Expires: Mon, 26 Jul 1997 05:00:00 GMT
|
||||
Cache-Control: no-store, no-cache, must-revalidate
|
||||
Cache-Control: post-check=0, pre-check=0, false
|
||||
Pragma: no-cache
|
||||
Set-Cookie: media-src-redir-bug={{$id:uuid()}}; Path=/content-security-policy/media-src/
|
||||
Content-Security-Policy: script-src * 'unsafe-inline'; media-src http://www2.{{host}}:{{ports[http][0]}}/ 'self'; connect-src 'self'; report-uri ../support/report.py?op=put&reportID={{$id}}
|
Before Width: | Height: | Size: 787 B After Width: | Height: | Size: 787 B |
Before Width: | Height: | Size: 913 B After Width: | Height: | Size: 913 B |
Before Width: | Height: | Size: 907 B After Width: | Height: | Size: 907 B |
Before Width: | Height: | Size: 735 B After Width: | Height: | Size: 735 B |
Before Width: | Height: | Size: 967 B After Width: | Height: | Size: 967 B |
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
Before Width: | Height: | Size: 926 B After Width: | Height: | Size: 926 B |
Before Width: | Height: | Size: 985 B After Width: | Height: | Size: 985 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 869 B After Width: | Height: | Size: 869 B |
@ -14,6 +14,12 @@ test(function() {
|
||||
assert_equals(document.vlinkColor, document.body.vLink);
|
||||
assert_equals(document.alinkColor, document.body.aLink);
|
||||
})
|
||||
test(function() {
|
||||
document.fgColor = null;
|
||||
assert_equals(document.fgColor, "");
|
||||
assert_equals(document.body.text, "");
|
||||
assert_equals(document.body.getAttribute("text"), "");
|
||||
})
|
||||
test(function() {
|
||||
document.fgColor = "blue";
|
||||
assert_equals(document.fgColor, "blue");
|
||||
|
@ -14,6 +14,12 @@ test(function() {
|
||||
assert_equals(document.vlinkColor, document.body.vLink);
|
||||
assert_equals(document.alinkColor, document.body.aLink);
|
||||
})
|
||||
test(function() {
|
||||
document.body.text = null;
|
||||
assert_equals(document.fgColor, "");
|
||||
assert_equals(document.body.text, "");
|
||||
assert_equals(document.body.getAttribute("text"), "");
|
||||
})
|
||||
test(function() {
|
||||
document.body.text = "blue";
|
||||
assert_equals(document.fgColor, "blue");
|
||||
|
@ -14,6 +14,10 @@
|
||||
<img srcset="/images/green-256x256.png 256w" sizes="512px" data-expect="512">
|
||||
<img srcset="/images/green-256x256.png 256w" sizes="1px" data-expect="1">
|
||||
<img srcset="/images/green-256x256.png 256w" sizes="0px" data-expect="0">
|
||||
<!-- SVG -->
|
||||
<img srcset="data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-1%20-1%202%202'%20width='20'%20height='20'><circle%20r='1'/></svg> 2x" data-expect="10">
|
||||
<img srcset="data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-1%20-1%202%202'%20width='20'><circle%20r='1'/></svg> 2x" data-expect="10">
|
||||
<img srcset="data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-1%20-1%202%202'%20height='20'><circle%20r='1'/></svg> 2x" data-expect="10">
|
||||
<script>
|
||||
setup({explicit_done:true});
|
||||
onload = function() {
|
||||
@ -24,8 +28,8 @@ onload = function() {
|
||||
assert_equals(img.height, expected, 'height');
|
||||
assert_equals(img.clientWidth, expected, 'clientWidth');
|
||||
assert_equals(img.clientHeight, expected, 'clientHeight');
|
||||
assert_equals(img.naturalWidth, 256, 'naturalWidth');
|
||||
assert_equals(img.naturalHeight, 256, 'naturalHeight');
|
||||
assert_equals(img.naturalWidth, expected, 'naturalWidth');
|
||||
assert_equals(img.naturalHeight, expected, 'naturalHeight');
|
||||
}, img.outerHTML);
|
||||
});
|
||||
done();
|
||||
|
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset=utf-8>
|
||||
<title>input max length</title>
|
||||
<link rel="author" title="Sam Gibson" href="mailto:sam@ifdown.net">
|
||||
<link rel=help href="https://html.spec.whatwg.org/multipage/forms.html#the-maxlength-and-minlength-attributes">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<p>Type a letter anywhere into the input field (do not select any text, or otherwise manipulate the input)</p>
|
||||
<input type=text maxlength=4 id=only-four value="inpu"></input>
|
||||
|
||||
<script>
|
||||
var input;
|
||||
setup(function() {
|
||||
input = document.getElementById('only-four');
|
||||
}, {explicit_done: true, explicit_timeout: true});
|
||||
|
||||
|
||||
on_event(input, 'keyup', function(event) {
|
||||
if ((event.keyCode >= 65 && event.keyCode <= 90) ||
|
||||
(event.keyCode >= 97 && event.keyCode <= 122)) {
|
||||
test(function() {
|
||||
assert_equals(input.value, "inpu");
|
||||
}, 'input content should limit to maxlength')
|
||||
|
||||
done();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,55 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>input max length</title>
|
||||
<link rel="author" title="Sam Gibson" href="mailto:sam@ifdown.net">
|
||||
<link rel=help href="https://html.spec.whatwg.org/multipage/forms.html#the-maxlength-and-minlength-attributes">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>Text input element</h1>
|
||||
|
||||
<div style="display: none">
|
||||
<input id="none" />
|
||||
<input id="negative" type="-5" />
|
||||
<input id="non-numeric" type="not-a-number" />
|
||||
<input id="assign-negative" />
|
||||
<input id="assign-non-numeric" />
|
||||
</div>
|
||||
|
||||
<div id="log"></div>
|
||||
|
||||
<script type="text/javascript">
|
||||
test(
|
||||
function() {
|
||||
assert_equals(document.getElementById("none").maxLength, -1);
|
||||
}, "Unset maxlength is -1");
|
||||
|
||||
test(
|
||||
function() {
|
||||
assert_equals(document.getElementById("negative").maxLength, -1);
|
||||
}, "Negative maxlength is always -1");
|
||||
|
||||
test(
|
||||
function() {
|
||||
assert_equals(document.getElementById("non-numeric").maxLength, -1);
|
||||
}, "Non-numeric maxlength is -1");
|
||||
|
||||
test(
|
||||
function() {
|
||||
assert_throws("INDEX_SIZE_ERR", function() {
|
||||
document.getElementById("assign-negative").maxLength = -5;
|
||||
});
|
||||
}, "Assigning negative integer throws IndexSizeError");
|
||||
|
||||
test(
|
||||
function() {
|
||||
document.getElementById("assign-non-numeric").maxLength = "not-a-number";
|
||||
assert_equals(document.getElementById("assign-non-numeric").maxLength, 0);
|
||||
}, "Assigning non-numeric to maxlength sets maxlength to 0");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,4 +1,4 @@
|
||||
Note: the html5lib_* files in this directory are autogenerated.
|
||||
|
||||
To update them use the script /tools/scripts/update_html5lib_tests.py.
|
||||
To update them use the script /html/tools/update_html5lib_tests.py.
|
||||
Further instructions are provided in that file.
|
@ -127,18 +127,23 @@ function get_type() {
|
||||
return run_type;
|
||||
};
|
||||
|
||||
var test_in_data_uri = get_test_func(function (iframe, uri_encoded_input) {
|
||||
iframe.src = "data:text/html;charset=utf8," + uri_encoded_input;
|
||||
var test_in_blob_uri = get_test_func(function (iframe, uri_encoded_input, t) {
|
||||
var b = new Blob([decodeURIComponent(uri_encoded_input)], { type: "text/html" });
|
||||
var blobURL = URL.createObjectURL(b);
|
||||
iframe.src = blobURL;
|
||||
t.add_cleanup(function() {
|
||||
URL.revokeObjectURL(blobURL);
|
||||
});
|
||||
});
|
||||
|
||||
var test_document_write = get_test_func(function(iframe, uri_encoded_input) {
|
||||
var test_document_write = get_test_func(function(iframe, uri_encoded_input, t) {
|
||||
iframe.contentDocument.open();
|
||||
var input = decodeURIComponent(uri_encoded_input);
|
||||
iframe.contentDocument.write(input);
|
||||
iframe.contentDocument.close();
|
||||
});
|
||||
|
||||
var test_document_write_single = get_test_func(function(iframe, uri_encoded_input) {
|
||||
var test_document_write_single = get_test_func(function(iframe, uri_encoded_input, t) {
|
||||
iframe.contentDocument.open();
|
||||
var input = decodeURIComponent(uri_encoded_input);
|
||||
for (var i=0; i< input.length; i++) {
|
||||
@ -166,7 +171,7 @@ function get_test_func(inject_func) {
|
||||
}
|
||||
);
|
||||
};
|
||||
inject_func(iframe, uri_encoded_input);
|
||||
inject_func(iframe, uri_encoded_input, t);
|
||||
}
|
||||
return test_func;
|
||||
}
|
||||
@ -248,7 +253,7 @@ function init_tests(test_type) {
|
||||
var test_funcs = {
|
||||
"write":test_document_write,
|
||||
"write_single":test_document_write_single,
|
||||
"uri":test_in_data_uri,
|
||||
"uri":test_in_blob_uri,
|
||||
"innerHTML":test_fragment
|
||||
};
|
||||
var tests_started = 0;
|
||||
|
@ -203,7 +203,7 @@ eventWatcher.wait_for(t, 'animationstart').then(t.step_func(function() {
|
||||
'animationend']);
|
||||
})).then(t.step_func(function() {
|
||||
assertExpectedStateAtEndOfAnimation();
|
||||
test.done();
|
||||
t.done();
|
||||
}));
|
||||
```
|
||||
|
||||
|
@ -772,6 +772,30 @@ IdlInterface.prototype.test_self = function()
|
||||
}.bind(this), this.name + " interface object length");
|
||||
}
|
||||
|
||||
if (!this.is_callback() || this.has_constants()) {
|
||||
test(function() {
|
||||
// This function tests WebIDL as of 2015-11-17.
|
||||
// https://heycam.github.io/webidl/#interface-object
|
||||
|
||||
assert_own_property(self, this.name,
|
||||
"self does not have own property " + format_value(this.name));
|
||||
|
||||
// "All interface objects must have a property named “name” with
|
||||
// attributes { [[Writable]]: false, [[Enumerable]]: false,
|
||||
// [[Configurable]]: true } whose value is the identifier of the
|
||||
// corresponding interface."
|
||||
|
||||
assert_own_property(self[this.name], "name");
|
||||
var desc = Object.getOwnPropertyDescriptor(self[this.name], "name");
|
||||
assert_false("get" in desc, this.name + ".name has getter");
|
||||
assert_false("set" in desc, this.name + ".name has setter");
|
||||
assert_false(desc.writable, this.name + ".name is writable");
|
||||
assert_false(desc.enumerable, this.name + ".name is enumerable");
|
||||
assert_true(desc.configurable, this.name + ".name is not configurable");
|
||||
assert_equals(self[this.name].name, this.name, "wrong value for " + this.name + ".name");
|
||||
}.bind(this), this.name + " interface object name");
|
||||
}
|
||||
|
||||
// TODO: Test named constructors if I find any interfaces that have them.
|
||||
|
||||
test(function()
|
||||
|
@ -61,22 +61,6 @@ In the browser:
|
||||
var tree = WebIDL2.parse("string of WebIDL");
|
||||
</script>
|
||||
|
||||
Advanced Parsing
|
||||
----------------
|
||||
|
||||
`parse()` can optionally accept a second parameter, an options object, which can be used to
|
||||
modify parsing behavior.
|
||||
|
||||
The following options are recognized:
|
||||
```javascript
|
||||
{
|
||||
allowNestedTypedefs: false #
|
||||
}
|
||||
```
|
||||
And their meanings are as follows:
|
||||
|
||||
* `allowNestedTypedefs`: Boolean indicating whether the parser should accept `typedef`s as valid members of `interface`s. This is non-standard syntax and therefore the default is `false`.
|
||||
|
||||
Errors
|
||||
------
|
||||
When there is a syntax error in the WebIDL, it throws an exception object with the following
|
||||
@ -676,8 +660,9 @@ The fields are as follows:
|
||||
whereas the lack thereof will yield a `null`. If there is an `rhs` field then
|
||||
they are the right-hand side's arguments, otherwise they apply to the extended
|
||||
attribute directly.
|
||||
* `rhs`: If there is a right-hand side, this will capture its `type` (which can be
|
||||
"identifier" or "identifier-list") and its `value`.
|
||||
* `rhs`: If there is a right-hand side, this will capture its `type` (always
|
||||
"identifier" in practice, though it may be extended in the future) and its
|
||||
`value`.
|
||||
* `typePair`: If the extended attribute is a `MapClass` this will capture the
|
||||
map's key type and value type respectively.
|
||||
|
||||
@ -696,24 +681,6 @@ For Infinity:
|
||||
|
||||
* `negative`: Boolean indicating whether this is negative Infinity or not.
|
||||
|
||||
### `iterable<>`, `legacyiterable<>`, `maplike<>`, `setlike<>` declarations
|
||||
|
||||
These appear as members of interfaces that look like this:
|
||||
|
||||
{
|
||||
"type": "maplike", // or "legacyiterable" / "iterable" / "setlike"
|
||||
"idlType": /* One or two types */,
|
||||
"readonly": false, // only for maplike and setlike
|
||||
"extAttrs": []
|
||||
}
|
||||
|
||||
The fields are as follows:
|
||||
|
||||
* `type`: Always one of "iterable", "legacyiterable", "maplike" or "setlike".
|
||||
* `idlType`: An [IDL Type](#idl-type) (or an array of two types) representing the declared type arguments.
|
||||
* `readonly`: Whether the maplike or setlike is declared as read only.
|
||||
* `extAttrs`: A list of [extended attributes](#extended-attributes).
|
||||
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
@ -336,7 +336,6 @@
|
||||
ret.rhs = rhs
|
||||
}
|
||||
else if (consume(OTHER, "(")) {
|
||||
// [Exposed=(Window,Worker)]
|
||||
rhs = [];
|
||||
var id = consume(ID);
|
||||
if (id) {
|
||||
@ -344,10 +343,7 @@
|
||||
}
|
||||
identifiers(rhs);
|
||||
consume(OTHER, ")") || error("Unexpected token in extended attribute argument list or type pair");
|
||||
ret.rhs = {
|
||||
type: "identifier-list",
|
||||
value: rhs
|
||||
};
|
||||
ret.rhs = rhs;
|
||||
}
|
||||
if (!ret.rhs) return error("No right hand side to extended attribute assignment");
|
||||
}
|
||||
@ -582,7 +578,7 @@
|
||||
return ret;
|
||||
}
|
||||
else if (consume(ID, "stringifier")) {
|
||||
ret.stringifier = true;-
|
||||
ret.stringifier = true;
|
||||
all_ws();
|
||||
if (consume(OTHER, ";")) return ret;
|
||||
ret.idlType = return_type();
|
||||
@ -687,69 +683,6 @@
|
||||
}
|
||||
return ret;
|
||||
};
|
||||
|
||||
var iterable_type = function() {
|
||||
if (consume(ID, "iterable")) return "iterable";
|
||||
else if (consume(ID, "legacyiterable")) return "legacyiterable";
|
||||
else if (consume(ID, "maplike")) return "maplike";
|
||||
else if (consume(ID, "setlike")) return "setlike";
|
||||
else return;
|
||||
}
|
||||
|
||||
var readonly_iterable_type = function() {
|
||||
if (consume(ID, "maplike")) return "maplike";
|
||||
else if (consume(ID, "setlike")) return "setlike";
|
||||
else return;
|
||||
}
|
||||
|
||||
var iterable = function (store) {
|
||||
all_ws(store, "pea");
|
||||
var grabbed = [],
|
||||
ret = {type: null, idlType: null, readonly: false};
|
||||
if (consume(ID, "readonly")) {
|
||||
ret.readonly = true;
|
||||
grabbed.push(last_token);
|
||||
var w = all_ws();
|
||||
if (w) grabbed.push(w);
|
||||
}
|
||||
var consumeItType = ret.readonly ? readonly_iterable_type : iterable_type;
|
||||
|
||||
var ittype = consumeItType();
|
||||
if (!ittype) {
|
||||
tokens = grabbed.concat(tokens);
|
||||
return;
|
||||
}
|
||||
|
||||
var secondTypeRequired = ittype === "maplike";
|
||||
var secondTypeAllowed = secondTypeRequired || ittype === "iterable";
|
||||
ret.type = ittype;
|
||||
if (ret.type !== 'maplike' && ret.type !== 'setlike')
|
||||
delete ret.readonly;
|
||||
all_ws();
|
||||
if (consume(OTHER, "<")) {
|
||||
ret.idlType = type() || error("Error parsing " + ittype + " declaration");
|
||||
all_ws();
|
||||
if (secondTypeAllowed) {
|
||||
var type2 = null;
|
||||
if (consume(OTHER, ",")) {
|
||||
all_ws();
|
||||
type2 = type();
|
||||
all_ws();
|
||||
}
|
||||
if (type2)
|
||||
ret.idlType = [ret.idlType, type2];
|
||||
else if (secondTypeRequired)
|
||||
error("Missing second type argument in " + ittype + " declaration");
|
||||
}
|
||||
if (!consume(OTHER, ">")) error("Unterminated " + ittype + " declaration");
|
||||
all_ws();
|
||||
if (!consume(OTHER, ";")) error("Missing semicolon after " + ittype + " declaration");
|
||||
}
|
||||
else
|
||||
error("Error parsing " + ittype + " declaration");
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
var interface_ = function (isPartial, store) {
|
||||
all_ws(isPartial ? null : store, "pea");
|
||||
@ -781,9 +714,7 @@
|
||||
ret.members.push(cnt);
|
||||
continue;
|
||||
}
|
||||
var mem = (opt.allowNestedTypedefs && typedef(store ? mems : null)) ||
|
||||
iterable(store ? mems : null) ||
|
||||
serialiser(store ? mems : null) ||
|
||||
var mem = serialiser(store ? mems : null) ||
|
||||
attribute(store ? mems : null) ||
|
||||
operation(store ? mems : null) ||
|
||||
error("Unknown member");
|
||||
@ -907,6 +838,7 @@
|
||||
all_ws(store ? vals : null);
|
||||
if (consume(OTHER, "}")) {
|
||||
all_ws();
|
||||
if (saw_comma) error("Trailing comma in enum");
|
||||
consume(OTHER, ";") || error("No semicolon after enum");
|
||||
return ret;
|
||||
}
|
||||
|
@ -1,17 +1,17 @@
|
||||
{
|
||||
"name": "webidl2",
|
||||
"description": "A WebIDL Parser",
|
||||
"version": "2.0.11",
|
||||
"version": "2.0.10",
|
||||
"author": "Robin Berjon <robin@berjon.com>",
|
||||
"license": "MIT",
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"mocha": "2.2.5",
|
||||
"mocha": "2.1.0",
|
||||
"expect.js": "0.3.1",
|
||||
"underscore": "1.8.3",
|
||||
"jsondiffpatch": "0.1.31",
|
||||
"underscore": "1.7.0",
|
||||
"jsondiffpatch": "0.1.27",
|
||||
"benchmark": "*",
|
||||
"microtime": "1.4.2"
|
||||
"microtime": "1.1.0"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "mocha"
|
||||
|
@ -1,3 +0,0 @@
|
||||
interface MapLikeOneType {
|
||||
maplike<long>;
|
||||
}
|
@ -1,3 +0,0 @@
|
||||
interface ReadonlyIterable {
|
||||
readonly iterable<long>;
|
||||
}
|
@ -1,3 +0,0 @@
|
||||
interface SetLikeTwoTypes {
|
||||
setlike<long, long>;
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
|
||||
interface Point {
|
||||
attribute float x;
|
||||
attribute float y;
|
||||
};
|
||||
|
||||
|
||||
interface Rect {
|
||||
attribute Point topleft;
|
||||
attribute Point bottomright;
|
||||
};
|
||||
|
||||
interface Widget {
|
||||
typedef sequence<Point> PointSequence;
|
||||
|
||||
readonly attribute Rect bounds;
|
||||
|
||||
boolean pointWithinBounds(Point p);
|
||||
boolean allPointsWithinBounds(PointSequence ps);
|
||||
};
|
||||
|
||||
typedef [Clamp] octet value;
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"message": "Missing second type argument in maplike declaration",
|
||||
"line": 2
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"message": "Invalid operation",
|
||||
"line": 2
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"message": "Unterminated setlike declaration",
|
||||
"line": 2
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"message": "Invalid operation"
|
||||
, "line": 14
|
||||
}
|
@ -17,16 +17,11 @@ describe("Parses all of the IDLs to produce the correct ASTs", function () {
|
||||
|
||||
for (var i = 0, n = idls.length; i < n; i++) {
|
||||
var idl = idls[i], json = jsons[i];
|
||||
|
||||
var func = (function (idl, json) {
|
||||
return function () {
|
||||
try {
|
||||
var optFile = pth.join(__dirname, "syntax/opt", pth.basename(json));
|
||||
var opt = undefined;
|
||||
if (fs.existsSync(optFile))
|
||||
opt = JSON.parse(fs.readFileSync(optFile, "utf8"));
|
||||
var diff = jdp.diff(JSON.parse(fs.readFileSync(json, "utf8")),
|
||||
wp.parse(fs.readFileSync(idl, "utf8"), opt));
|
||||
wp.parse(fs.readFileSync(idl, "utf8")));
|
||||
if (diff && debug) console.log(JSON.stringify(diff, null, 4));
|
||||
expect(diff).to.be(undefined);
|
||||
}
|
||||
|
@ -2,6 +2,4 @@ callback AsyncOperationCallback = void (DOMString status);
|
||||
|
||||
callback interface EventHandler {
|
||||
void eventOccurred(DOMString details);
|
||||
};
|
||||
|
||||
callback SortCallback = boolean (any a, any b);
|
||||
};
|
@ -5,6 +5,4 @@ interface Meal {
|
||||
attribute float size; // in grams
|
||||
|
||||
void initialize(MealType type, float size);
|
||||
};
|
||||
|
||||
enum AltMealType { "rice", "noodles", "other", };
|
||||
};
|
@ -1,6 +0,0 @@
|
||||
// Extracted from http://www.w3.org/TR/2015/WD-service-workers-20150205/
|
||||
|
||||
[Global=(Worker,ServiceWorker), Exposed=ServiceWorker]
|
||||
interface ServiceWorkerGlobalScope : WorkerGlobalScope {
|
||||
|
||||
};
|
@ -1,7 +0,0 @@
|
||||
interface IterableOne {
|
||||
iterable<long>;
|
||||
};
|
||||
|
||||
interface IterableTwo {
|
||||
iterable<short, double?>;
|
||||
};
|
@ -1,3 +0,0 @@
|
||||
interface LegacyIterable {
|
||||
legacyiterable<long>;
|
||||
};
|
@ -1,7 +0,0 @@
|
||||
interface MapLike {
|
||||
maplike<long, float>;
|
||||
};
|
||||
|
||||
interface ReadOnlyMapLike {
|
||||
readonly maplike<long, float>;
|
||||
};
|
@ -1,7 +0,0 @@
|
||||
interface SetLike {
|
||||
setlike<long>;
|
||||
};
|
||||
|
||||
interface ReadOnlySetLike {
|
||||
readonly setlike<long>;
|
||||
};
|
@ -1,22 +0,0 @@
|
||||
|
||||
interface Point {
|
||||
attribute float x;
|
||||
attribute float y;
|
||||
};
|
||||
|
||||
|
||||
interface Rect {
|
||||
attribute Point topleft;
|
||||
attribute Point bottomright;
|
||||
};
|
||||
|
||||
interface Widget {
|
||||
typedef sequence<Point> PointSequence;
|
||||
|
||||
readonly attribute Rect bounds;
|
||||
|
||||
boolean pointWithinBounds(Point p);
|
||||
boolean allPointsWithinBounds(PointSequence ps);
|
||||
};
|
||||
|
||||
typedef [Clamp] octet value;
|
@ -72,48 +72,5 @@
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "callback",
|
||||
"name": "SortCallback",
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "boolean"
|
||||
},
|
||||
"arguments": [
|
||||
{
|
||||
"optional": false,
|
||||
"variadic": false,
|
||||
"extAttrs": [],
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "any"
|
||||
},
|
||||
"name": "a"
|
||||
},
|
||||
{
|
||||
"optional": false,
|
||||
"variadic": false,
|
||||
"extAttrs": [],
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "any"
|
||||
},
|
||||
"name": "b"
|
||||
}
|
||||
],
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
@ -101,15 +101,5 @@
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "enum",
|
||||
"name": "AltMealType",
|
||||
"values": [
|
||||
"rice",
|
||||
"noodles",
|
||||
"other"
|
||||
],
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
@ -1,30 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "ServiceWorkerGlobalScope",
|
||||
"partial": false,
|
||||
"members": [],
|
||||
"inheritance": "WorkerGlobalScope",
|
||||
"extAttrs": [
|
||||
{
|
||||
"name": "Global",
|
||||
"arguments": null,
|
||||
"rhs": {
|
||||
"type": "identifier-list",
|
||||
"value": [
|
||||
"Worker",
|
||||
"ServiceWorker"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Exposed",
|
||||
"arguments": null,
|
||||
"rhs": {
|
||||
"type": "identifier",
|
||||
"value": "ServiceWorker"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
@ -1,55 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "IterableOne",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "iterable",
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "IterableTwo",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "iterable",
|
||||
"idlType": [
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "short"
|
||||
},
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": true,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "double"
|
||||
}
|
||||
],
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
||||
|
@ -1,24 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "LegacyIterable",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "legacyiterable",
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
||||
|
@ -1,67 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "MapLike",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "maplike",
|
||||
"idlType": [
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "float"
|
||||
}
|
||||
],
|
||||
"readonly": false,
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "ReadOnlyMapLike",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "maplike",
|
||||
"idlType": [
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
{
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "float"
|
||||
}
|
||||
],
|
||||
"readonly": true,
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
||||
|
@ -1,47 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "SetLike",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "setlike",
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
"readonly": false,
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "ReadOnlySetLike",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "setlike",
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "long"
|
||||
},
|
||||
"readonly": true,
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
||||
|
@ -1,226 +0,0 @@
|
||||
[
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "Point",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "attribute",
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"inherit": false,
|
||||
"readonly": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "float"
|
||||
},
|
||||
"name": "x",
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "attribute",
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"inherit": false,
|
||||
"readonly": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "float"
|
||||
},
|
||||
"name": "y",
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "Rect",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "attribute",
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"inherit": false,
|
||||
"readonly": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "Point"
|
||||
},
|
||||
"name": "topleft",
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "attribute",
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"inherit": false,
|
||||
"readonly": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "Point"
|
||||
},
|
||||
"name": "bottomright",
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "Widget",
|
||||
"partial": false,
|
||||
"members": [
|
||||
{
|
||||
"type": "typedef",
|
||||
"typeExtAttrs": [],
|
||||
"idlType": {
|
||||
"sequence": true,
|
||||
"generic": "sequence",
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "Point"
|
||||
}
|
||||
},
|
||||
"name": "PointSequence",
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "attribute",
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"inherit": false,
|
||||
"readonly": true,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "Rect"
|
||||
},
|
||||
"name": "bounds",
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "operation",
|
||||
"getter": false,
|
||||
"setter": false,
|
||||
"creator": false,
|
||||
"deleter": false,
|
||||
"legacycaller": false,
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "boolean"
|
||||
},
|
||||
"name": "pointWithinBounds",
|
||||
"arguments": [
|
||||
{
|
||||
"optional": false,
|
||||
"variadic": false,
|
||||
"extAttrs": [],
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "Point"
|
||||
},
|
||||
"name": "p"
|
||||
}
|
||||
],
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "operation",
|
||||
"getter": false,
|
||||
"setter": false,
|
||||
"creator": false,
|
||||
"deleter": false,
|
||||
"legacycaller": false,
|
||||
"static": false,
|
||||
"stringifier": false,
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "boolean"
|
||||
},
|
||||
"name": "allPointsWithinBounds",
|
||||
"arguments": [
|
||||
{
|
||||
"optional": false,
|
||||
"variadic": false,
|
||||
"extAttrs": [],
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "PointSequence"
|
||||
},
|
||||
"name": "ps"
|
||||
}
|
||||
],
|
||||
"extAttrs": []
|
||||
}
|
||||
],
|
||||
"inheritance": null,
|
||||
"extAttrs": []
|
||||
},
|
||||
{
|
||||
"type": "typedef",
|
||||
"typeExtAttrs": [
|
||||
{
|
||||
"name": "Clamp",
|
||||
"arguments": null
|
||||
}
|
||||
],
|
||||
"idlType": {
|
||||
"sequence": false,
|
||||
"generic": null,
|
||||
"nullable": false,
|
||||
"array": false,
|
||||
"union": false,
|
||||
"idlType": "octet"
|
||||
},
|
||||
"name": "value",
|
||||
"extAttrs": []
|
||||
}
|
||||
]
|
@ -1,3 +0,0 @@
|
||||
{
|
||||
"allowNestedTypedefs": true
|
||||
}
|
@ -19,12 +19,12 @@ var match = [
|
||||
["[*|foo='bar' i]", ["", "foo", "BAR"], ["a", "foo", "x"], ["b", "foo", "x"], ["c", "foo", "x"]],
|
||||
["[align='left' i]", ["", "align", "LEFT"]],
|
||||
["[align='LEFT' i]", ["", "align", "left"]],
|
||||
["[class='a' i]", ["", "class", "A"]],
|
||||
["[class='A' i]", ["", "class", "a"]],
|
||||
["[id='a' i]", ["", "id", "A"]],
|
||||
["[id='A' i]", ["", "id", "a"]],
|
||||
["[lang='a' i]", ["", "lang", "A"]],
|
||||
["[lang='A' i]", ["", "lang", "a"]],
|
||||
["[class~='a' i]", ["", "class", "X A B"]],
|
||||
["[class~='A' i]", ["", "class", "x a b"]],
|
||||
["[id^='a' i]", ["", "id", "AB"]],
|
||||
["[id$='A' i]", ["", "id", "xa"]],
|
||||
["[lang|='a' i]", ["", "lang", "A-B"]],
|
||||
["[lang*='A' i]", ["", "lang", "xab"]],
|
||||
["[*|lang='a' i]", ["http://www.w3.org/XML/1998/namespace", "lang", "A"]],
|
||||
["[*|lang='A' i]", ["http://www.w3.org/XML/1998/namespace", "lang", "a"]],
|
||||
["@namespace x 'http://www.w3.org/XML/1998/namespace'; [x|lang='A' i]", ["http://www.w3.org/XML/1998/namespace", "lang", "a"]],
|
||||
@ -40,11 +40,11 @@ var nomatch = [
|
||||
["[foo='\u00E4' i]", ["", "foo", "\u00C4"]],
|
||||
["[foo='\u00C4' i]", ["", "foo", "\u00E4"]],
|
||||
["[foo='a\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00C4"]],
|
||||
["[foo='a\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00E4"]],
|
||||
["[foo='A\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00C4"]],
|
||||
["[foo='A\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00E4"]],
|
||||
["[foo='\u00E4' i] /* COMBINING in attribute */", ["", "foo", "a\u0308"]],
|
||||
["[foo='\u00E4' i] /* COMBINING in attribute */", ["", "foo", "A\u0308"]],
|
||||
["[foo~='a\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00E4"]],
|
||||
["[foo^='A\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00C4"]],
|
||||
["[foo$='A\u0308' i] /* COMBINING in selector */", ["", "foo", "\u00E4"]],
|
||||
["[foo*='\u00E4' i] /* COMBINING in attribute */", ["", "foo", "a\u0308"]],
|
||||
["[foo|='\u00E4' i] /* COMBINING in attribute */", ["", "foo", "A\u0308"]],
|
||||
["[foo='\u00C4' i] /* COMBINING in attribute */", ["", "foo", "a\u0308"]],
|
||||
["[foo='\u00C4' i] /* COMBINING in attribute */", ["", "foo", "A\u0308"]],
|
||||
["[foo='a\u0308' i] /* COMBINING in selector */", ["", "foo", "a"]],
|
||||
|
@ -29,6 +29,8 @@ var valid = [
|
||||
"[foo~='bar' i]",
|
||||
"[foo^='bar' i]",
|
||||
"[foo$='bar' i]",
|
||||
"[foo*='bar' i]",
|
||||
"[foo|='bar' i]",
|
||||
"[|foo='bar' i]",
|
||||
"[*|foo='bar' i]",
|
||||
];
|
||||
|
1568
testing/web-platform/tests/svg/interfaces.html
Normal file
@ -2,17 +2,11 @@ import os
|
||||
import urlparse
|
||||
from abc import ABCMeta, abstractmethod, abstractproperty
|
||||
|
||||
from utils import from_os_path, to_os_path
|
||||
|
||||
item_types = ["testharness", "reftest", "manual", "stub", "wdspec"]
|
||||
|
||||
|
||||
def from_os_path(path):
|
||||
return path.replace(os.path.sep, "/")
|
||||
|
||||
|
||||
def to_os_path(path):
|
||||
return path.replace("/", os.path.sep)
|
||||
|
||||
|
||||
def get_source_file(source_files, tests_root, manifest, path):
|
||||
def make_new():
|
||||
from sourcefile import SourceFile
|
||||
|
@ -5,6 +5,7 @@ from collections import defaultdict
|
||||
from item import item_types, ManualTest, WebdriverSpecTest, Stub, RefTest, TestharnessTest
|
||||
from log import get_logger
|
||||
from sourcefile import SourceFile
|
||||
from utils import from_os_path, to_os_path
|
||||
|
||||
|
||||
CURRENT_VERSION = 2
|
||||
@ -207,7 +208,7 @@ class Manifest(object):
|
||||
for item_type, items in self._data.iteritems()
|
||||
}
|
||||
|
||||
reftest_nodes = {key:[v.to_json() for v in value]
|
||||
reftest_nodes = {from_os_path(key): [v.to_json() for v in value]
|
||||
for key, value in self.reftest_nodes.iteritems()}
|
||||
|
||||
rv = {"url_base": self.url_base,
|
||||
@ -246,6 +247,7 @@ class Manifest(object):
|
||||
self._add(manifest_item)
|
||||
|
||||
for path, values in obj["reftest_nodes"].iteritems():
|
||||
path = to_os_path(path)
|
||||
for v in values:
|
||||
item = RefTest.from_json(self, tests_root, v,
|
||||
source_files=source_files)
|
||||
@ -306,17 +308,16 @@ class LocalChanges(object):
|
||||
return self._data[item_type]
|
||||
|
||||
def to_json(self):
|
||||
reftest_nodes = {key:[v.to_json() for v in value]
|
||||
reftest_nodes = {from_os_path(key): [v.to_json() for v in value]
|
||||
for key, value in self.reftest_nodes.iteritems()}
|
||||
|
||||
rv = {"items": defaultdict(dict),
|
||||
"reftest_nodes": reftest_nodes,
|
||||
"deleted": []}
|
||||
|
||||
rv["deleted"].extend(self._deleted)
|
||||
"deleted": [from_os_path(path) for path in self._deleted]}
|
||||
|
||||
for test_type, paths in self._data.iteritems():
|
||||
for path, tests in paths.iteritems():
|
||||
path = from_os_path(path)
|
||||
rv["items"][test_type][path] = [test.to_json() for test in tests]
|
||||
|
||||
return rv
|
||||
@ -343,6 +344,7 @@ class LocalChanges(object):
|
||||
self.add(manifest_item)
|
||||
|
||||
for path, values in obj["reftest_nodes"].iteritems():
|
||||
path = to_os_path(path)
|
||||
for v in values:
|
||||
item = RefTest.from_json(self.manifest, tests_root, v,
|
||||
source_files=source_files)
|
||||
@ -350,7 +352,7 @@ class LocalChanges(object):
|
||||
self.reftest_nodes_by_url[item.url] = item
|
||||
|
||||
for item in obj["deleted"]:
|
||||
self.add_deleted(item)
|
||||
self.add_deleted(to_os_path(item))
|
||||
|
||||
return self
|
||||
|
||||
|
@ -21,6 +21,12 @@ def is_blacklisted(url):
|
||||
return True
|
||||
return False
|
||||
|
||||
def from_os_path(path):
|
||||
return path.replace(os.path.sep, "/")
|
||||
|
||||
def to_os_path(path):
|
||||
return path.replace("/", os.path.sep)
|
||||
|
||||
class ContextManagerStringIO(StringIO):
|
||||
def __enter__(self):
|
||||
return self
|
||||
|
@ -15,7 +15,6 @@ test(function() {
|
||||
var tex = gl.createTexture();
|
||||
gl.bindTexture(gl.TEXTURE_2D, tex);
|
||||
|
||||
/* Bug 1226336
|
||||
shouldGenerateGLError(gl, gl.INVALID_ENUM, function() {
|
||||
gl.compressedTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 10, 10, COMPRESSED_RGB_S3TC_DXT1_EXT, new Uint8Array(8));
|
||||
});
|
||||
@ -27,6 +26,5 @@ test(function() {
|
||||
gl.compressedTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 10, 10, COMPRESSED_RGB_S3TC_DXT1_EXT);
|
||||
});
|
||||
}, "Should throw a TypeError when passing too few arguments.");
|
||||
*/
|
||||
});
|
||||
</script>
|
||||
|