blob: 8555903d3cc1acfe3500c43094a84f090e9ce000 [file] [log] [blame]
<!DOCTYPE html>
<html>
<title>Service Workers: FetchEvent</title>
<head>
<link rel="help" href="https://slightlyoff.github.io/ServiceWorker/spec/service_worker/#fetch-event-section">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src=/resources/WebIDLParser.js></script>
<script src=/resources/idlharness.js></script>
</head>
<body>
<script type=text/plain id="idl_0">
[Constructor]
interface FetchEvent : Event {
readonly attribute Request request;
readonly attribute Client client; // The window issuing the request.
readonly attribute Context context;
readonly attribute boolean isReload;
void respondWith(Promise<AbstractResponse> r);
Promise<any> forwardTo(ScalarValueString url);
Promise<any> default();
};
enum Context {
"connect",
"font",
"img",
"object",
"script",
"style",
"worker",
"popup",
"child",
"navigate"
};
</pre>
<!--
Service Workers use the `[FetchEvent][1]` interface for `[fetch][2]` event.
[1]: #fetch-event-interface
[2]: #fetch-event
-->
<script type=text/plain id="untested_idls">
interface Request {};
interface Client {};
interface AbstractResponse {};
interface ScalarValueString {};
interface Event {};
</pre>
<script>
var idl_array = new IdlArray();
idl_array.add_untested_idls(document.getElementById("untested_idls").textContent);
idl_array.add_idls(document.getElementById("idl_0").textContent);
idl_array.add_objects({
FetchEvent: ["throw new Error ('No object defined for the FetchEvent interface')"],
Context: ["throw new Error ('No object defined for the Context enum')"]
});
idl_array.test();
</script>
</body>
</html>