mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Update web-platform-tests to revision 0d318188757a9c996e20b82db201fd04de5aa255
This commit is contained in:
parent
b2a5225831
commit
1a81b18b9f
12321 changed files with 544385 additions and 6 deletions
140
tests/wpt/web-platform-tests/tools/scripts/manifest.js
Normal file
140
tests/wpt/web-platform-tests/tools/scripts/manifest.js
Normal file
|
@ -0,0 +1,140 @@
|
|||
// grab test metadata from a test file
|
||||
function __result_handler() {
|
||||
|
||||
function __get_metadata() {
|
||||
var obj = new Object();
|
||||
var author = [];
|
||||
var assert = [];
|
||||
var help = [];
|
||||
var match = [];
|
||||
var mismatch = [];
|
||||
var flags = [];
|
||||
var nodes;
|
||||
|
||||
nodes = document.querySelectorAll('link[rel="author"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
var href = nodes[i].getAttribute("href");
|
||||
var title = nodes[i].getAttribute("title");
|
||||
var s = title;
|
||||
if (href != null) {
|
||||
s += " <" + href + ">";
|
||||
}
|
||||
author.push(s);
|
||||
}
|
||||
if (nodes.length > 0) obj.author = author;
|
||||
nodes = document.querySelectorAll('meta[name="assert"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
assert.push(nodes[i].getAttribute("content"));
|
||||
}
|
||||
if (nodes.length > 0) obj.assert = assert;
|
||||
nodes = document.querySelectorAll('link[rel="help"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
help.push(nodes[i].getAttribute("href"));
|
||||
}
|
||||
if (nodes.length > 0) obj.help = help;
|
||||
nodes = document.querySelectorAll('link[rel="match"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
match.push(nodes[i].getAttribute("href"));
|
||||
}
|
||||
if (nodes.length > 0) obj.match = match;
|
||||
nodes = document.querySelectorAll('link[rel="mismatch"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
mismatch.push(nodes[i].getAttribute("href"));
|
||||
}
|
||||
if (nodes.length > 0) obj.match = mismatch;
|
||||
nodes = document.querySelectorAll('meta[name="flags"]');
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
flags.push(nodes[i].getAttribute("content"));
|
||||
}
|
||||
if (nodes.length > 0) obj.flags = flags;
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
var meta = __get_metadata();
|
||||
var nodes;
|
||||
|
||||
function copy(obj, prop, arr) {
|
||||
if (typeof arr !== "undefined") {
|
||||
var a = [];
|
||||
for (var i = 0; i<arr.length;i++) {
|
||||
a[i] = arr[i];
|
||||
}
|
||||
obj[prop] = a;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var ret = new Object();
|
||||
ret.location = document.location.href;
|
||||
ret.type = "manual";
|
||||
ret.tests = new Object();
|
||||
|
||||
var node = document.querySelector('script[src$="/resources/testharness.js"]');
|
||||
if (node !== null) {
|
||||
ret.type = "script";
|
||||
}
|
||||
|
||||
if (ret.type === "script") {
|
||||
if (typeof metadata_generator === "undefined"
|
||||
|| Object.keys(metadata_generator.currentMetadata).length === 0)
|
||||
return "WRAPPER:TRY_AGAIN";
|
||||
else {
|
||||
for (var key in metadata_generator.currentMetadata) {
|
||||
var obj = metadata_generator.currentMetadata[key];
|
||||
var newtest = new Object();
|
||||
ret.tests[key]= newtest;
|
||||
if (typeof obj.help === "undefined") {
|
||||
copy(newtest, "help", meta.help);
|
||||
} else if (typeof obj.help === "string") {
|
||||
newtest.help = [ obj.help ];
|
||||
}
|
||||
if (typeof obj.author === "undefined") {
|
||||
copy(newtest, "author", meta.author);
|
||||
} else if (typeof obj.author === "string") {
|
||||
newtest.author = [ obj.author ];
|
||||
}
|
||||
if (typeof obj.assert === "undefined") {
|
||||
copy(newtest, "assert", meta.assert);
|
||||
} else if (typeof obj.assert === "string") {
|
||||
newtest.assert = [ obj.assert ];
|
||||
}
|
||||
copy(newtest, "match", meta.match);
|
||||
copy(newtest, "mismatch", meta.mismatch);
|
||||
copy(newtest, "flags", meta.flags);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
} else {
|
||||
var newtest = meta;
|
||||
ret.tests[document.title]= newtest;
|
||||
|
||||
if (typeof newtest.match !== "undefined"
|
||||
|| typeof newtest.mismatch !== "undefined") {
|
||||
ret.type = "reftest";
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function __give_up() {
|
||||
var ret = new Object();
|
||||
ret.location = document.location.href;
|
||||
ret.type = "manual";
|
||||
ret.tests = new Object();
|
||||
|
||||
var node = document.querySelector('script[src$="/resources/testharness.js"]');
|
||||
if (node !== null) {
|
||||
ret.type = "script";
|
||||
} else if (typeof newtest.match !== "undefined"
|
||||
|| typeof newtest.mismatch !== "undefined") {
|
||||
ret.type = "reftest";
|
||||
}
|
||||
|
||||
var newtest = __get_metadata();
|
||||
ret.tests[document.title]= newtest;
|
||||
|
||||
return ret;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue