blob: 50581cedcbe21f6514b74fedce7f917d6eec7498 [file] [log] [blame]
async function test()
{
try {
try {
var response = await fetch("http://localhost:8080/resources/square100.png.fromserviceworker");
log("Failed: fetch suceeded unexpectedly");
} catch(e) {
log("PASS: Fetch failed as expected with: " + e);
}
var frame = await interceptedFrame("resources/service-worker-crossorigin-fetch-worker.js", "/workers/service/resources/");
var response = await frame.contentWindow.fetch("http://localhost:8080/resources/square100.png.fromserviceworker");
var buffer = await response.arrayBuffer();
log("PASS: Got response with buffer byte length being " + buffer.byteLength);
if (!frame.contentWindow.internals)
return Promise.rejects("Test requires internals API");
await new Promise(resolve => {
frame.onload = resolve;
frame.contentWindow.internals.forceReload(true);
});
// On shift reload, frame should bypass its service worker.
try {
var response = await fetch("http://localhost:8080/resources/square100.png.fromserviceworker");
log("Failed: fetch suceeded unexpectedly");
} catch(e) {
log("PASS: Fetch failed as expected with: " + e);
}
} catch(e) {
log("FAIL: Got exception: " + e);
}
finishSWTest();
}
test();