mirror of
https://github.com/servo/servo.git
synced 2025-08-12 08:55:32 +01:00
Update web-platform-tests to revision be5419e845d39089ba6dc338c1bd0fa279108317
This commit is contained in:
parent
aa199307c8
commit
2b6f573eb5
3440 changed files with 109438 additions and 41750 deletions
|
@ -11,6 +11,7 @@ var embeddedElements = {
|
|||
width: {type: "unsigned long", customGetter: true},
|
||||
height: {type: "unsigned long", customGetter: true},
|
||||
referrerPolicy: {type: "enum", keywords: ["", "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "strict-origin", "origin-when-cross-origin", "strict-origin-when-cross-origin", "unsafe-url"]},
|
||||
decoding: {type: "enum", keywords: ["async", "sync", "auto"], defaultVal: "auto", invalidVal: "auto"},
|
||||
|
||||
// Obsolete
|
||||
name: "string",
|
||||
|
|
|
@ -1,17 +1,3 @@
|
|||
var inputModeKeywords = [
|
||||
"verbatim",
|
||||
"latin",
|
||||
"latin-name",
|
||||
"latin-prose",
|
||||
"full-width-latin",
|
||||
"kana",
|
||||
"kana-name",
|
||||
"katakana",
|
||||
"numeric",
|
||||
"tel",
|
||||
"email",
|
||||
"url",
|
||||
];
|
||||
var formElements = {
|
||||
form: {
|
||||
acceptCharset: {type: "string", domAttrName: "accept-charset"},
|
||||
|
@ -52,7 +38,6 @@ var formElements = {
|
|||
formNoValidate: "boolean",
|
||||
formTarget: "string",
|
||||
height: {type: "unsigned long", customGetter: true},
|
||||
inputMode: {type: "enum", keywords: inputModeKeywords},
|
||||
max: "string",
|
||||
maxLength: "limited long",
|
||||
min: "string",
|
||||
|
@ -118,7 +103,6 @@ var formElements = {
|
|||
cols: {type: "limited unsigned long with fallback", defaultVal: 20},
|
||||
dirName: "string",
|
||||
disabled: "boolean",
|
||||
inputMode: {type: "enum", keywords: inputModeKeywords},
|
||||
maxLength: "limited long",
|
||||
minLength: "limited long",
|
||||
name: "string",
|
||||
|
|
|
@ -12,7 +12,7 @@ var metadataElements = {
|
|||
rel: "string",
|
||||
as: {
|
||||
type: "enum",
|
||||
keywords: ["fetch", "audio", "document", "embed", "font", "image", "manifest", "object", "report", "script", "serviceworker", "sharedworker", "style", "track", "video", "worker", "xslt"],
|
||||
keywords: ["fetch", "audio", "document", "embed", "font", "image", "manifest", "object", "report", "script", "sharedworker", "style", "track", "video", "worker", "xslt"],
|
||||
defaultVal: "",
|
||||
invalidVal: ""
|
||||
},
|
||||
|
@ -24,19 +24,6 @@ var metadataElements = {
|
|||
type: "string",
|
||||
sizes: "settable tokenlist",
|
||||
referrerPolicy: {type: "enum", keywords: ["", "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "strict-origin", "origin-when-cross-origin", "strict-origin-when-cross-origin", "unsafe-url"]},
|
||||
scope: "string",
|
||||
workerType: {
|
||||
type: "enum",
|
||||
keywords: ["classic", "module"],
|
||||
defaultVal: "classic",
|
||||
invalidVal: "",
|
||||
},
|
||||
updateViaCache: {
|
||||
type: "enum",
|
||||
keywords: ["imports", "all", "none"],
|
||||
defaultVal: "imports",
|
||||
invalidVal: "imports"
|
||||
},
|
||||
|
||||
// Obsolete
|
||||
charset: "string",
|
||||
|
|
|
@ -52,7 +52,9 @@ var miscElements = {
|
|||
},
|
||||
|
||||
// Global attributes should exist even on unknown elements
|
||||
undefinedelement: {},
|
||||
undefinedelement: {
|
||||
inputMode: {type: "enum", keywords: ["none", "text", "tel", "url", "email", "numeric", "decimal", "search"]},
|
||||
},
|
||||
};
|
||||
|
||||
mergeElements(miscElements);
|
||||
|
|
|
@ -669,8 +669,12 @@ ReflectionTests.reflects = function(data, idlName, idlObj, domName, domObj) {
|
|||
}
|
||||
|
||||
if (data.keywords[i].length > 1) {
|
||||
domTests.push(data.keywords[i].slice(1));
|
||||
idlTests.push(data.keywords[i].slice(1));
|
||||
var sliced = data.keywords[i].slice(1);
|
||||
// If slicing a value yields another valid value, then skip it since it results in duplicate tests.
|
||||
if (data.keywords.indexOf(sliced) == -1) {
|
||||
domTests.push(sliced);
|
||||
idlTests.push(sliced);
|
||||
}
|
||||
}
|
||||
|
||||
if (data.keywords[i] != data.keywords[i].toLowerCase()) {
|
||||
|
|
|
@ -0,0 +1,89 @@
|
|||
<!doctype html>
|
||||
<title>USVString test relate to url</title>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<div id=log></div>
|
||||
<script>
|
||||
// Unpaired surrogate codepoints present in USVString are replaced
|
||||
// with U+FFFD. %EF%BF%BD is UTF-8 encoding of U+FFFD.
|
||||
'use strict';
|
||||
test(() => {
|
||||
location.hash = '\uD999';
|
||||
assert_equals(location.hash, '#%EF%BF%BD');
|
||||
}, "location : unpaired surrogate codepoint should be replaced with U+FFFD");
|
||||
|
||||
test(() => {
|
||||
var w = window.open("about:blank#\uD800");
|
||||
assert_equals(w.location.hash, '#%EF%BF%BD');
|
||||
}, "window.open : unpaired surrogate codepoint should be replaced with U+FFFD");
|
||||
|
||||
test(() => {
|
||||
var w = document.open("about:blank#\uD800", "", "");
|
||||
assert_equals(w.location.hash, '#%EF%BF%BD');
|
||||
}, "document.open : unpaired surrogate codepoint should be replaced with U+FFFD");
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("a");
|
||||
element.ping = '\uD989';
|
||||
assert_equals(element.ping, '\uFFFD');
|
||||
}, "anchor : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("area");
|
||||
element.ping = '\uDA99';
|
||||
assert_equals(element.ping, '\uFFFD');
|
||||
}, "area : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("base");
|
||||
element.href = '\uD989';
|
||||
assert_equals(element.href.endsWith('%EF%BF%BD'), true);
|
||||
}, "base : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var src = new EventSource('\uD899');
|
||||
assert_equals(src.url.endsWith('%EF%BF%BD'), true);
|
||||
}, "EventSource : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("frame");
|
||||
element.src = '\uDCA9';
|
||||
element.longDesc = '\uDCA8';
|
||||
assert_equals(element.src.endsWith('%EF%BF%BD'), true);
|
||||
assert_equals(element.longDesc.endsWith('%EF%BF%BD'), true);
|
||||
}, "frame : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("iframe");
|
||||
element.src = '\uDC89';
|
||||
element.longDesc = '\uDC88';
|
||||
assert_equals(element.src.endsWith('%EF%BF%BD'), true);
|
||||
assert_equals(element.longDesc.endsWith('%EF%BF%BD'), true);
|
||||
}, "iframe : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("link");
|
||||
element.href = '\uDB89';
|
||||
assert_equals(element.href.endsWith('%EF%BF%BD'), true);
|
||||
}, "link : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var element = document.createElement("source");
|
||||
element.src = '\uDDDD';
|
||||
element.srcset = '\uD800';
|
||||
assert_equals(element.src.endsWith('%EF%BF%BD'), true);
|
||||
assert_equals(element.srcset, '\uFFFD');
|
||||
}, "source : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
const event = new StorageEvent('storage', {
|
||||
url: window.location.href + '\uD999',
|
||||
});
|
||||
assert_equals(event.url, window.location.href + "\uFFFD");
|
||||
}, "storage event : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
|
||||
test(() => {
|
||||
var wsocket = new EventSource('ws://www.example.com/socketserve\uD899/');
|
||||
assert_true(wsocket.url.endsWith('ws://www.example.com/socketserve%EF%BF%BD/'));
|
||||
}, "websocket url : unpaired surrogate codepoint should be replaced with U+FFFD")
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue