Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Unified Diff: third_party/WebKit/LayoutTests/imported/wpt/service-workers/stub-3.2-navigator-service-worker.html

Issue 2415873002: Import w3c tests for the service workers (Closed)
Patch Set: Rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/imported/wpt/service-workers/stub-3.2-navigator-service-worker.html
diff --git a/third_party/WebKit/LayoutTests/imported/wpt/service-workers/stub-3.2-navigator-service-worker.html b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/stub-3.2-navigator-service-worker.html
new file mode 100644
index 0000000000000000000000000000000000000000..2654c60f06614339445d1cfc17be5d95138ad929
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/stub-3.2-navigator-service-worker.html
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<html>
+<title>Service Workers: navigator.serviceWorker</title>
+ <head>
+ <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker">
+ <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>
+
+<!--
+The `serviceWorker` attribute of the [Navigator][1] interface must return an
+instance of the `ServiceWorkerContainer` interface, which provides access to
+registration, removal, upgrade, and communication with Service Workers that are
+(or will become) active for the current document. Communication with these
+workers is provided via standard [HTML5 messaging APIs][2], and [messaging
+occurs as per usual with Web Workers][3].
+-->
+<script type=text/plain id="idl_0">
+partial interface Navigator {
+ readonly attribute ServiceWorkerContainer serviceWorker;
+};
+
+interface ServiceWorkerContainer : EventTarget {
+ [Unforgeable] readonly attribute ServiceWorker? installing;
+ [Unforgeable] readonly attribute ServiceWorker? waiting;
+ [Unforgeable] readonly attribute ServiceWorker? active;
+ [Unforgeable] readonly attribute ServiceWorker? controller;
+ readonly attribute Promise<ServiceWorker> ready;
+
+ Promise<sequence<ServiceWorker>?> getAll();
+ Promise<ServiceWorker> register(DOMString url, optional RegistrationOptionList options);
+ Promise<any> unregister(DOMString? scope);
+
+ // events
+ attribute EventHandler onupdatefound;
+ attribute EventHandler oncontrollerchange;
+ attribute EventHandler onreloadpage;
+ attribute EventHandler onerror;
+};
+
+dictionary RegistrationOptionList {
+ DOMString scope = "/*";
+};
+
+interface ReloadPageEvent : Event {
+ void waitUntil(Promise<any> f);
+};
+</script>
+
+<!--
+[1]: http://goo.gl/I7WAhg
+[2]: http://www.whatwg.org/specs/web-apps/current-work/multipage/web-messaging.html
+[3]: http://www.w3.org/TR/workers/#dom-worker-postmessage
+-->
+
+
+ <script type=text/plain id="untested_idls">
+ interface ServiceWorker {};
+ interface EventHandler {};
+ interface EventTarget {};
+ 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({
+ Navigator: ["throw new Error ('No object defined for the Navigator interface')"],
+ ServiceWorkerContainer: ["throw new Error ('No object defined for the ServiceWorkerContainer interface')"],
+ RegistrationOptionList: ["throw new Error ('No object defined for the RegistrationOptionList dictionary')"],
+ ReloadPageEvent: ["throw new Error ('No object defined for the ReloadPageEvent interface')"]
+ });
+ idl_array.test();
+ </script>
+
+ </body>
+</html>
+

Powered by Google App Engine
This is Rietveld 408576698