Skip to content

Commit 9d9d7a4

Browse files
author
Jake Champion
committed
use new fastly:experimental module in wpt-harness
1 parent 5c6a5d7 commit 9d9d7a4

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

tests/wpt-harness/post-harness.js

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
/* eslint-env serviceworker */
2+
/* global add_completion_callback setup done */
3+
import { enableDebugLogging, setDefaultBackend, setBaseURL } from "fastly:experimental";
24

3-
fastly.enableDebugLogging(true);
4-
fastly.defaultBackend = "wpt";
5+
enableDebugLogging(true);
6+
setDefaultBackend("wpt");
57

6-
let completionPromise = new Promise((resolve, reject) => {
8+
let completionPromise = new Promise((resolve) => {
79
add_completion_callback(function(tests, harness_status, asserts) {
810
resolve({tests, harness_status, asserts});
911
});
@@ -14,15 +16,17 @@ setup({ explicit_done: true });
1416
async function handleRequest(event) {
1517
let url = new URL(event.request.url);
1618
let input = `http://web-platform.test:8000${url.pathname}${url.search}`;
17-
fastly.baseURL = new URL(input);
18-
globalThis.location = fastly.baseURL;
19+
let baseURL = new URL(input);
20+
setBaseURL(baseURL);
21+
globalThis.location = baseURL;
1922
try {
2023
let response = await fetch(input);
2124
let testSource = await response.text();
2225
testSource += "\n//# sourceURL=" + url.pathname;
2326

2427
let scripts = [];
2528

29+
// eslint-disable-next-line no-unused-vars
2630
for (let [_, path] of testSource.matchAll(/META: *script=(.+)/g)) {
2731
let metaSource = await loadMetaScript(path, input);
2832
scripts.push(metaSource);
@@ -32,7 +36,7 @@ async function handleRequest(event) {
3236
evalAllScripts(scripts);
3337
done();
3438

35-
let {tests, harness_status, asserts} = await completionPromise;
39+
let {tests} = await completionPromise;
3640

3741
return new Response(JSON.stringify(tests, null, 2), { headers: { "content-encoding" : "application/json" } });
3842
} catch (e) {
@@ -44,15 +48,15 @@ async function handleRequest(event) {
4448
}
4549
}`, { status: 500 });
4650
}
47-
};
51+
}
4852

4953
function evalAllScripts(wpt_test_scripts) {
5054
for (let wpt_test_script of wpt_test_scripts) {
5155
eval(wpt_test_script);
5256
}
5357
}
5458

55-
async function loadMetaScript(path, base) {
59+
async function loadMetaScript(path) {
5660
let response = await fetch(path);
5761
let metaSource = await response.text();
5862
// Somewhat annoyingly, the WPT harness includes META scripts as <script src=[path]> tags,

0 commit comments

Comments
 (0)