Re-sync service-workers web-platform-tests from upstream
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Dec 2019 01:09:08 +0000 (01:09 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Dec 2019 01:09:08 +0000 (01:09 +0000)
https://bugs.webkit.org/show_bug.cgi?id=205181

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Resync service-workers web-platform-tests from upstream 178762b6fce688979.

* web-platform-tests/service-workers/*: Updated

LayoutTests:

* tests-options.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@253457 268f45cc-cd09-0410-ab3c-d52691b4dbfc

141 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/service-workers/cache-storage/resources/vary.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/cache-storage/serviceworker/cache-add.https-expected.txt
LayoutTests/imported/w3c/web-platform-tests/service-workers/cache-storage/window/cache-add.https-expected.txt
LayoutTests/imported/w3c/web-platform-tests/service-workers/cache-storage/worker/cache-add.https-expected.txt
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/clients-matchall-frozen.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-error.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-within-sw.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-waits-for-activate.https-expected.txt
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-waits-for-activate.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resource-timing.sub.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-error-worker.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-add-async-worker.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-waits-for-activate-worker.js
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/test-helpers.sub.js
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/test-request-headers-worker.js
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/test-request-headers-worker.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/sandboxed-iframe-navigator-serviceworker.https-expected.txt
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/sandboxed-iframe-navigator-serviceworker.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/service-workers/specgen.json [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/w3c-import.log
LayoutTests/tests-options.json

index e887092..2dc9d58 100644 (file)
@@ -1,5 +1,14 @@
 2019-12-12  Chris Dumez  <cdumez@apple.com>
 
+        Re-sync service-workers web-platform-tests from upstream
+        https://bugs.webkit.org/show_bug.cgi?id=205181
+
+        Reviewed by Alex Christensen.
+
+        * tests-options.json:
+
+2019-12-12  Chris Dumez  <cdumez@apple.com>
+
         Re-sync workers web-platform-tests from upstream
         https://bugs.webkit.org/show_bug.cgi?id=205180
 
index 9e81ac1..8e7c1ea 100644 (file)
@@ -217,6 +217,7 @@ webkit.org/b/201665 imported/w3c/web-platform-tests/service-workers/service-work
 imported/w3c/web-platform-tests/service-workers/service-worker/multipart-image.https.html [ Skip ]
 imported/w3c/web-platform-tests/service-workers/service-worker/skip-waiting-using-registration.https.html [ Skip ]
 imported/w3c/web-platform-tests/service-workers/service-worker/worker-in-sandboxed-iframe-by-csp-fetch-event.https.html [ Skip ]
+imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html [ Skip ]
 
 # This test is a flaky timeout.
 imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-video-cache.https.html [ Skip ]
index f0c2dc2..4a00d36 100644 (file)
@@ -1,5 +1,16 @@
 2019-12-12  Chris Dumez  <cdumez@apple.com>
 
+        Re-sync service-workers web-platform-tests from upstream
+        https://bugs.webkit.org/show_bug.cgi?id=205181
+
+        Reviewed by Alex Christensen.
+
+        Resync service-workers web-platform-tests from upstream 178762b6fce688979.
+
+        * web-platform-tests/service-workers/*: Updated
+
+2019-12-12  Chris Dumez  <cdumez@apple.com>
+
         Unreviewed, land missing baselines from r253453.
 
         * web-platform-tests/workers/SharedWorker-MessageEvent-source.any-expected.txt: Added.
index 59e39bc..a609d7e 100644 (file)
@@ -1,3 +1,5 @@
+from six import text_type
+
 def main(request, response):
   if "clear-vary-value-override-cookie" in request.GET:
     response.unset_cookie("vary-value-override")
@@ -15,7 +17,7 @@ def main(request, response):
   # (including query), but differ by VARY header.
   cookie_vary = request.cookies.get("vary-value-override");
   if cookie_vary:
-    response.headers.set("vary", cookie_vary)
+    response.headers.set("vary", text_type(cookie_vary))
   else:
     # If there is no cookie, then use the query string value, if present.
     query_vary = request.GET.first("vary", default="")
index 1710c2b..98e5795 100644 (file)
@@ -20,5 +20,5 @@ PASS Cache.addAll with a mix of succeeding and failing requests
 PASS Cache.addAll called with the same Request object specified twice 
 PASS Cache.addAll should succeed when entries differ by vary header 
 PASS Cache.addAll should reject when entries are duplicate by vary header 
-FAIL Cache.addAll should reject when one entry has a vary header matching another entry assert_throws: Cache.addAll() should reject when one entry has a vary header matching an earlier entry. function "function () { throw e }" threw object "TypeError: Response is not OK" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS Cache.addAll should reject when one entry has a vary header matching another entry 
 
index cda2a86..636c82f 100644 (file)
@@ -19,5 +19,5 @@ PASS Cache.addAll with a mix of succeeding and failing requests
 PASS Cache.addAll called with the same Request object specified twice 
 PASS Cache.addAll should succeed when entries differ by vary header 
 PASS Cache.addAll should reject when entries are duplicate by vary header 
-FAIL Cache.addAll should reject when one entry has a vary header matching another entry assert_throws: Cache.addAll() should reject when one entry has a vary header matching an earlier entry. function "function () { throw e }" threw object "TypeError: Response is not OK" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS Cache.addAll should reject when one entry has a vary header matching another entry 
 
index cda2a86..636c82f 100644 (file)
@@ -19,5 +19,5 @@ PASS Cache.addAll with a mix of succeeding and failing requests
 PASS Cache.addAll called with the same Request object specified twice 
 PASS Cache.addAll should succeed when entries differ by vary header 
 PASS Cache.addAll should reject when entries are duplicate by vary header 
-FAIL Cache.addAll should reject when one entry has a vary header matching another entry assert_throws: Cache.addAll() should reject when one entry has a vary header matching an earlier entry. function "function () { throw e }" threw object "TypeError: Response is not OK" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS Cache.addAll should reject when one entry has a vary header matching another entry 
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.js b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.js
new file mode 100644 (file)
index 0000000..9a9c819
--- /dev/null
@@ -0,0 +1,14 @@
+// META: title=fetch method on the right interface
+// META: global=!default,serviceworker
+
+test(function() {
+    assert_false(self.hasOwnProperty('fetch'), 'ServiceWorkerGlobalScope ' +
+        'instance should not have "fetch" method as its property.');
+    assert_inherits(self, 'fetch', 'ServiceWorkerGlobalScope should ' +
+        'inherit "fetch" method.');
+    assert_own_property(self.__proto__.__proto__, 'fetch',
+        'WorkerGlobalScope should have "fetch" propery in its prototype.');
+    assert_equals(self.fetch, self.__proto__.__proto__.fetch,
+        'ServiceWorkerGlobalScope.fetch should be the same as ' +
+        'WorkerGlobalScope.fetch.');
+}, 'Fetch method on the right interface');
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker-expected.txt
new file mode 100644 (file)
index 0000000..5bdf063
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS Fetch method on the right interface 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.serviceworker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
index 277090f..5dfe404 100644 (file)
@@ -17,6 +17,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/close.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/extendable-message-event-constructor.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/extendable-message-event.https.html
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/fetch-on-the-right-interface.https.any.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/isSecureContext.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/isSecureContext.serviceworker.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/postmessage.https.html
index ef27ac3..479c28a 100644 (file)
@@ -49,19 +49,6 @@ promise_test(function(t) {
             });
         })
       .then(function(e) {
-          assert_equals(e.data.length, 1);
-          assert_object_equals(e.data[0], expected_window_2);
-        })
-      .then(function() {
-          var channel = new MessageChannel();
-
-          return new Promise(function(resolve) {
-              channel.port1.onmessage = resolve;
-              windows[1].navigator.serviceWorker.controller.postMessage(
-                  {port:channel.port2, options: {lifecycleState: "all"}, includeLifecycleState: true}, [channel.port2]);
-            });
-        })
-      .then(function(e) {
           assert_equals(e.data.length, 2);
           // No specific order is required, so support inversion.
           if (e.data[0][3] == new URL(scope + '#2', location)) {
@@ -71,32 +58,6 @@ promise_test(function(t) {
             assert_object_equals(e.data[0], expected_window_1);
             assert_object_equals(e.data[1], expected_window_2);
           }
-        })
-      .then(function() {
-          var channel = new MessageChannel();
-
-          return new Promise(function(resolve) {
-              channel.port1.onmessage = resolve;
-              windows[1].navigator.serviceWorker.controller.postMessage(
-                  {port:channel.port2, options: {lifecycleState: "frozen"}, includeLifecycleState: true}, [channel.port2]);
-            });
-        })
-      .then(function(e) {
-          assert_equals(e.data.length, 1);
-          assert_object_equals(e.data[0], expected_window_1);
-        })
-      .then(function() {
-          var channel = new MessageChannel();
-
-          return new Promise(function(resolve) {
-              channel.port1.onmessage = resolve;
-              windows[1].navigator.serviceWorker.controller.postMessage(
-                  {port:channel.port2, options: {lifecycleState: "active"}, includeLifecycleState: true}, [channel.port2]);
-            });
-        })
-      .then(function(e) {
-          assert_equals(e.data.length, 1);
-          assert_object_equals(e.data[0], expected_window_2);
       });
 }, 'Test Clients.matchAll()');
 
index 901c158..ca2f884 100644 (file)
@@ -7,34 +7,27 @@
 </head>
 <body>
 <script>
-var scope = "resources";
-var registration;
+const scope = "./resources/in-scope";
 
 promise_test(async (test) => {
-    registration = await navigator.serviceWorker.register("fetch-error-worker.js", { scope : scope });
-    var activeWorker = registration.active;
-    if (activeWorker)
-        return;
-    activeWorker = registration.installing;
-    return new Promise(resolve => {
-        activeWorker.addEventListener('statechange', () => {
-            if (activeWorker.state === "activated")
-                resolve();
-        });
-    });
+    const registration = await service_worker_unregister_and_register(
+        test, "./resources/fetch-error-worker.js", scope);
+    promise_test(async () => registration.unregister(),
+                 "Unregister service worker");
+    await wait_for_state(test, registration.installing, 'activated');
 }, "Setup service worker");
 
 promise_test(async (test) => {
     const iframe = await with_iframe(scope);
-
+    test.add_cleanup(() => iframe.remove());
     const response = await iframe.contentWindow.fetch("fetch-error-test");
-    await response.text().then(assert_unreached, (error) => { assert_true(error.message.includes("Sorry")); });
-    iframe.remove();
+    try {
+      await response.text();
+      assert_unreached();
+    } catch (error) {
+      assert_true(error.message.includes("Sorry"));
+    }
 }, "Make sure a load that makes progress does not time out");
-
-promise_test(async () => {
-    registration.unregister();
-}, "Unregister service worker");
 </script>
 </body>
 </html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https-expected.txt
new file mode 100644 (file)
index 0000000..06f1094
--- /dev/null
@@ -0,0 +1,4 @@
+
+PASS Service Worker: Fetch event added asynchronously doesn't throw 
+PASS fetch event added asynchronously does not throw 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https.html
new file mode 100644 (file)
index 0000000..ac13e4f
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<title>Service Worker: Fetch event added asynchronously doesn't throw</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+<script>
+'use strict';
+
+service_worker_test(
+  'resources/fetch-event-add-async-worker.js');
+</script>
index 8a567fd..f5a60c3 100644 (file)
@@ -18,13 +18,13 @@ async function registerSwAndOpenFrame(t) {
   return frame;
 }
 
-async function deleteCashes() {
+async function deleteCaches() {
   const cacheKeys = await caches.keys();
   await Promise.all(cacheKeys.map(c => caches.delete(c)));
 }
 
 promise_test(async t => {
-  t.add_cleanup(deleteCashes);
+  t.add_cleanup(deleteCaches);
 
   const iframe = await registerSwAndOpenFrame(t);
   const fetchText =
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https-expected.txt
new file mode 100644 (file)
index 0000000..c1f58ad
--- /dev/null
@@ -0,0 +1,11 @@
+
+
+Harness Error (TIMEOUT), message = null
+
+PASS Set up an active service worker 
+TIMEOUT workerTiming for navigation in a frame with network fallback Test timed out
+NOTRUN workerTiming for navigation in a frame for a response from a fetch handler 
+NOTRUN workerTiming for subresources in a frame with network fallback 
+NOTRUN workerTiming for subresources in a frame for a response from a fetchhandler 
+NOTRUN Unregister service worker 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html
new file mode 100644 (file)
index 0000000..6ca9247
--- /dev/null
@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+<script>
+// This is tentative because currently this feature only has an explainer and
+// no formal spec.
+// https://github.com/wanderview/fetchevent-worker-timing/blob/master/explainer.md
+
+async function wait_for_performance_entries(url, performance, entry_type) {
+  const entries = await performance.getEntriesByName(url);
+  if (entries.length > 0) {
+    return entries;
+  }
+  return new Promise((resolve) => {
+    new PerformanceObserver((list, observer) => {
+      const entries = list.getEntriesByName(url);
+      if (entries.length > 0) {
+        observer.disconnect();
+        resolve(entries);
+      }
+    }).observe({ entryTypes: [entry_type] });
+  });
+}
+
+function load_image(target_document, url) {
+  return new Promise((resolve, reject) => {
+    const image = target_document.createElement('img');
+    image.onload = () => { resolve(image); }
+    image.onerror = () => { reject(`Failed to load: ${url}`); };
+    image.src = url;
+  });
+}
+
+promise_test(async (t) => {
+  const registration = await service_worker_unregister_and_register(
+    t, 'resources/fetch-event-worker-timing.js', 'resources/');
+  promise_test(async (t) => registration.unregister(),
+    'Unregister service worker');
+  await wait_for_state(t, registration.installing, 'activated');
+}, 'Set up an active service worker');
+
+promise_test(async (t) => {
+  const frame = await with_iframe('resources/empty.html?fallback');
+  t.add_cleanup(() => frame.remove());
+
+  const performance = frame.contentWindow.performance;
+
+  const entries = await wait_for_performance_entries(
+    frame.src, performance, 'navigation');
+  assert_equals(entries.length, 1, 'PerformanceNavigationTiming is observed');
+
+  const worker_timings = await entries[0].workerTiming;
+  const expected_worker_timings = [
+    {
+      name: "network-fallback mark 1",
+      entryType: "mark",
+      detail: { foo: 'foo' }
+    },
+    {
+      name: "network-fallback mark 2",
+      entryType: "mark",
+      detail: { bar: 'bar' }
+    },
+    {
+      name: "network-fallback measure",
+      entryType: "measure",
+      detail: { baz: 'baz' }
+    }
+  ];
+  assert_equals(worker_timings.length, expected_worker_timings.length,
+    'workerTiming is completed when PerformanceResourceTiming is observed');
+
+  for (let i = 0; i < workerTimings.length; i++) {
+    assert_equals(worker_timings[i].name,
+      expected_worker_timings[i].name, 'entry name');
+    assert_equals(worker_timings[i].entryType,
+      expected_worker_timings[i].entryType, 'entry type');
+    assert_object_equals(worker_timings[i].detail,
+      expected_worker_timings[i].detail, 'entry detail');
+  }
+}, 'workerTiming for navigation in a frame with network fallback');
+
+promise_test(async (t) => {
+  const frame= await with_iframe('resources/empty.html?fetch-event');
+  t.add_cleanup(() => frame.remove());
+
+  const performance = frame.contentWindow.performance;
+
+  const entries = await wait_for_performance_entries(
+    frame.src, performance, 'navigation');
+  assert_equals(entries.length, 1, 'PerformanceNavigationTiming is observed');
+
+  const worker_timings = await entries[0].workerTiming;
+  const expected_worker_timings = [
+    {
+      name: "fetch-event mark 1",
+      entryType: "mark",
+      detail: { foo: 'foo' }
+    },
+    {
+      name: "fetch-event mark 2",
+      entryType: "mark",
+      detail: { bar: 'bar' }
+    },
+    {
+      name: "fetch-event measure",
+      entryType: "measure",
+      detail: { baz: 'baz' }
+    }
+  ];
+  assert_equals(worker_timings.length, expected_worker_timings.length,
+    'workerTiming is completed when PerformanceResourceTiming is observed');
+
+  for (let i = 0; i < workerTimings.length; i++) {
+    assert_equals(worker_timings[i].name,
+      expected_worker_timings[i].name, 'entry name');
+    assert_equals(worker_timings[i].entryType,
+      expected_worker_timings[i].entryType, 'entry type');
+    assert_object_equals(worker_timings[i].detail,
+      expected_worker_timings[i].detail, 'entry detail');
+  }
+}, 'workerTiming for navigation in a frame for a response from a fetch ' +
+   'handler');
+
+promise_test(async (t) => {
+  const frame = await with_iframe('resources/empty.html');
+  t.add_cleanup(() => frame.remove());
+
+  const performance = frame.contentWindow.performance;
+
+  const image_path = base_path() + 'resources/square.png?fallback';
+  const image_url = get_host_info()['HTTPS_ORIGIN'] + image_path;
+
+  let entries = await performance.getEntriesByName(image_url);
+  assert_equals(entries.length, 0, 'No PerformanceResourceTiming');
+
+  const image = await load_image(frame.contentDocument,
+    'square.png?fetch-event');
+  entries = await wait_for_performance_entries(
+    image.src, performance, 'resource');
+  assert_equals(entries.length, 1, 'PerformanceResourceTiming is observed');
+
+  const worker_timings = await entries[0].workerTiming;
+  const expected_worker_timings = [
+    {
+      name: "network-fallback mark 1",
+      entryType: "mark",
+      detail: { foo: 'foo' }
+    },
+    {
+      name: "network-fallback mark 2",
+      entryType: "mark",
+      detail: { bar: 'bar' }
+    },
+    {
+      name: "network-fallback measure",
+      entryType: "measure",
+      detail: { baz: 'baz' }
+    }
+  ];
+  assert_equals(worker_timings.length, expected_worker_timings.length,
+    'workerTiming is completed when PerformanceResourceTiming is observed');
+
+  for (let i = 0; i < workerTimings.length; i++) {
+    assert_equals(worker_timings[i].name,
+      expected_worker_timings[i].name, 'entry name');
+    assert_equals(worker_timings[i].entryType,
+      expected_worker_timings[i].entryType, 'entry type');
+    assert_object_equals(worker_timings[i].detail,
+      expected_worker_timings[i].detail, 'entry detail');
+  }
+}, 'workerTiming for subresources in a frame with network fallback');
+
+promise_test(async (t) => {
+  const frame = await with_iframe('resources/empty.html');
+  t.add_cleanup(() => frame.remove());
+
+  const performance = frame.contentWindow.performance;
+
+  const image_path = base_path() + 'resources/square.png?fetch-event';
+  const image_url = get_host_info()['HTTPS_ORIGIN'] + image_path;
+
+  let entries = await performance.getEntriesByName(image_url);
+  assert_equals(entries.length, 0, 'No PerformanceResourceTiming');
+
+  const image = await load_image(frame.contentDocument,
+    'square.png?fetch-event');
+  entries = await wait_for_performance_entries(
+    image.src, performance, 'resource');
+  assert_equals(entries.length, 1, 'PerformanceResourceTiming is observed');
+
+  const worker_timings = await entries[0].workerTiming;
+  const expected_worker_timings = [
+    {
+      name: "fetch-event mark 1",
+      entryType: "mark",
+      detail: { foo: 'foo' }
+    },
+    {
+      name: "fetch-event mark 2",
+      entryType: "mark",
+      detail: { bar: 'bar' }
+    },
+    {
+      name: "fetch-event measure",
+      entryType: "measure",
+      detail: { baz: 'baz' }
+    }
+  ];
+  assert_equals(worker_timings.length, expected_worker_timings.length,
+    'workerTiming is completed when PerformanceResourceTiming is observed');
+
+  for (let i = 0; i < workerTimings.length; i++) {
+    assert_equals(worker_timings[i].name,
+      expected_worker_timings[i].name, 'entry name');
+    assert_equals(worker_timings[i].entryType,
+      expected_worker_timings[i].entryType, 'entry type');
+    assert_object_equals(worker_timings[i].detail,
+      expected_worker_timings[i].detail, 'entry detail');
+  }
+}, 'workerTiming for subresources in a frame for a response from a fetch' +
+   'handler');
+</script>
index 889c5ec..7c88845 100644 (file)
 <body>
 <script>
 
-var worker = 'resources/fetch-waits-for-activate-worker.js';
-var expected_url = normalizeURL(worker);
-var scope = 'resources/fetch-waits-for-activate/';
-
-promise_test(function(t) {
-  var registration;
-  var frameLoadPromise;
-  var frame;
-  return service_worker_unregister_and_register(t, worker, scope).then(function(reg) {
-    t.add_cleanup(function() {
-      return service_worker_unregister(t, scope);
-    });
-
-    registration = reg;
-    return wait_for_state(t, reg.installing, 'activating');
-  }).then(function() {
-    assert_equals(registration.active.scriptURL, expected_url,
-                  'active worker should be present');
-    assert_equals(registration.active.state, 'activating',
-                  'active worker should be in activating state');
-
-    // This should block until we message the worker to tell it to complete
-    // the activate event.
-    frameLoadPromise = with_iframe(scope).then(function(f) {
-      frame = f;
-    });
-
-    // Wait some time to allow frame loading to proceed.  It should not,
-    // however, if the fetch event is blocked on the activate.  I don't
-    // see any way to force this race without a timeout, unfortunately.
-    return new Promise(function(resolve) {
-      setTimeout(resolve, 1000);
-    });
-  }).then(function() {
-    assert_equals(frame, undefined, 'frame should not be loaded');
-    assert_equals(registration.active.scriptURL, expected_url,
-                  'active worker should be present');
-    assert_equals(registration.active.state, 'activating',
-                  'active worker should be in activating state');
-
-    // This signals the activate event to complete.  The frame should now
-    // load.
-    registration.active.postMessage('GO');
-    return frameLoadPromise;
-  }).then(function() {
-    assert_equals(frame.contentWindow.navigator.serviceWorker.controller.scriptURL,
-                  expected_url, 'frame should now be loaded and controlled');
-    assert_equals(registration.active.state, 'activated',
-                  'active worker should be in activated state');
-    frame.remove();
+const worker_url = 'resources/fetch-waits-for-activate-worker.js';
+const normalized_worker_url = normalizeURL(worker_url);
+const worker_scope = 'resources/fetch-waits-for-activate/';
+
+// Resolves with the Service Worker's registration once it's reached the
+// "activating" state. (The Service Worker should remain "activating" until
+// explicitly told advance to the "activated" state).
+async function registerAndWaitForActivating(t) {
+  const registration = await service_worker_unregister_and_register(
+      t, worker_url, worker_scope);
+  t.add_cleanup(() => service_worker_unregister(t, worker_scope));
+
+  await wait_for_state(t, registration.installing, 'activating');
+
+  return registration;
+}
+
+// Attempts to ensure that the "Handle Fetch" algorithm has reached the step
+//
+//   "If activeWorker’s state is "activating", wait for activeWorker’s state to
+//    become "activated"."
+//
+// by waiting for some time to pass.
+//
+// WARNING: whether the algorithm has reached that step isn't directly
+// observable, so this is best effort and can race. Note that this can only
+// result in false positives (where the algorithm hasn't reached that step yet
+// and any functional events haven't actually been handled by the Service
+// Worker).
+async function ensureFunctionalEventsAreWaiting(registration) {
+  await (new Promise(resolve => { setTimeout(resolve, 1000); }));
+
+  assert_equals(registration.active.scriptURL, normalized_worker_url,
+                'active worker should be present');
+  assert_equals(registration.active.state, 'activating',
+                'active worker should be in activating state');
+}
+
+promise_test(async t => {
+  const registration = await registerAndWaitForActivating(t);
+
+  let frame = null;
+  t.add_cleanup(() => {
+    if (frame) {
+      frame.remove();
+    }
+  });
+
+  // This should block until we message the worker to tell it to complete
+  // the activate event.
+  const frameLoadPromise = with_iframe(worker_scope).then(function(f) {
+    frame = f;
+  });
+
+  await ensureFunctionalEventsAreWaiting(registration);
+  assert_equals(frame, null, 'frame should not be loaded');
+
+  registration.active.postMessage('ACTIVATE');
+
+  await frameLoadPromise;
+  assert_equals(frame.contentWindow.navigator.serviceWorker.controller.scriptURL,
+                normalized_worker_url,
+                'frame should now be loaded and controlled');
+  assert_equals(registration.active.state, 'activated',
+                'active worker should be in activated state');
+}, 'Navigation fetch events should wait for the activate event to complete.');
+
+promise_test(async t => {
+  const frame = await with_iframe(worker_scope);
+  t.add_cleanup(() => { frame.remove(); });
+
+  const registration = await registerAndWaitForActivating(t);
+
+  // Make the Service Worker control the frame so the frame can perform an
+  // intercepted fetch.
+  await (new Promise(resolve => {
+    navigator.serviceWorker.onmessage = e => {
+      assert_equals(
+        frame.contentWindow.navigator.serviceWorker.controller.scriptURL,
+        normalized_worker_url, 'frame should be controlled');
+      resolve();
+    };
+
+    registration.active.postMessage('CLAIM');
+  }));
+
+  const fetch_url = `${worker_scope}non/existent/path`;
+  const expected_fetch_result = 'Hello world';
+  let fetch_promise_settled = false;
+
+  // This should block until we message the worker to tell it to complete
+  // the activate event.
+  const fetchPromise = frame.contentWindow.fetch(fetch_url, {
+    method: 'POST',
+    body: expected_fetch_result,
+  }).then(response => {
+    fetch_promise_settled = true;
+    return response;
   });
-}, 'Fetch events should wait for the activate event to complete.');
+
+  await ensureFunctionalEventsAreWaiting(registration);
+  assert_false(fetch_promise_settled,
+               "fetch()-ing a Service Worker-controlled scope shouldn't have " +
+               "settled yet");
+
+  registration.active.postMessage('ACTIVATE');
+
+  const response = await fetchPromise;
+  assert_equals(await response.text(), expected_fetch_result,
+                "Service Worker should have responded to request to" +
+                fetch_url)
+  assert_equals(registration.active.state, 'activated',
+                'active worker should be in activated state');
+}, 'Subresource fetch events should wait for the activate event to complete.');
 
 </script>
 </body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.js b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.js
new file mode 100644 (file)
index 0000000..2335f63
--- /dev/null
@@ -0,0 +1,53 @@
+// META: title=serviceWorker on service worker global
+// META: global=!default,serviceworker
+
+test(() => {
+  assert_equals(registration.installing, null, 'registration.installing');
+  assert_equals(registration.waiting, null, 'registration.waiting');
+  assert_equals(registration.active, null, 'registration.active');
+  assert_true('serviceWorker' in self, 'self.serviceWorker exists');
+  assert_equals(serviceWorker.state, 'parsed', 'serviceWorker.state');
+  assert_readonly(self, 'serviceWorker', `self.serviceWorker is read only`);
+}, 'First run');
+
+// Cache this for later tests.
+const initialServiceWorker = self.serviceWorker;
+
+async_test((t) => {
+  assert_true('serviceWorker' in self, 'self.serviceWorker exists');
+  serviceWorker.postMessage({ messageTest: true });
+
+  // The rest of the test runs once this receives the above message.
+  addEventListener('message', t.step_func((event) => {
+    // Ignore unrelated messages.
+    if (!event.data.messageTest) return;
+    assert_equals(event.source, serviceWorker, 'event.source');
+    t.done();
+  }));
+}, 'Can post message to self during startup');
+
+// The test is registered now so there isn't a race condition when collecting tests, but the asserts
+// don't happen until the 'install' event fires.
+async_test((t) => {
+  addEventListener('install', t.step_func_done(() => {
+    assert_true('serviceWorker' in self, 'self.serviceWorker exists');
+    assert_equals(serviceWorker, initialServiceWorker, `self.serviceWorker hasn't changed`);
+    assert_equals(registration.installing, serviceWorker, 'registration.installing');
+    assert_equals(registration.waiting, null, 'registration.waiting');
+    assert_equals(registration.active, null, 'registration.active');
+    assert_equals(serviceWorker.state, 'installing', 'serviceWorker.state');
+  }));
+}, 'During install');
+
+// The test is registered now so there isn't a race condition when collecting tests, but the asserts
+// don't happen until the 'activate' event fires.
+async_test((t) => {
+  addEventListener('activate', t.step_func_done(() => {
+    assert_true('serviceWorker' in self, 'self.serviceWorker exists');
+    assert_equals(serviceWorker, initialServiceWorker, `self.serviceWorker hasn't changed`);
+    assert_equals(registration.installing, null, 'registration.installing');
+    assert_equals(registration.waiting, null, 'registration.waiting');
+    assert_equals(registration.active, serviceWorker, 'registration.active');
+    assert_equals(serviceWorker.state, 'activating', 'serviceWorker.state');
+  }));
+}, 'During activate');
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker-expected.txt
new file mode 100644 (file)
index 0000000..7e42847
--- /dev/null
@@ -0,0 +1,6 @@
+
+FAIL First run assert_true: self.serviceWorker exists expected true got false
+FAIL Can post message to self during startup assert_true: self.serviceWorker exists expected true got false
+FAIL During install assert_true: self.serviceWorker exists expected true got false
+FAIL During activate assert_true: self.serviceWorker exists expected true got false
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/global-serviceworker.https.any.serviceworker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https-expected.txt
new file mode 100644 (file)
index 0000000..ad1706c
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS Referrer of the top-level script fetch should be the document URL 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https.html
new file mode 100644 (file)
index 0000000..1a9bcf3
--- /dev/null
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<title>Service Worker: check referrer of top-level script fetch</title>
+<meta name="timeout" content="long">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/test-helpers.sub.js?pipe=sub"></script>
+<script>
+
+async function get_toplevel_script_headers(worker) {
+  worker.postMessage("getHeaders");
+  return new Promise((resolve) => {
+    navigator.serviceWorker.onmessage = (event) => {
+      resolve(event.data);
+    };
+  });
+}
+
+promise_test(async (t) => {
+  const script = "resources/test-request-headers-worker.py";
+  const scope = "resources/blank.html";
+  const host_info = get_host_info();
+
+  const registration = await service_worker_unregister_and_register(
+    t, script, scope);
+  t.add_cleanup(() => service_worker_unregister(t, scope));
+  await wait_for_state(t, registration.installing, "activated");
+
+  const expected_referrer = host_info["HTTPS_ORIGIN"] + location.pathname;
+
+  // Check referrer for register().
+  const register_headers = await get_toplevel_script_headers(registration.active);
+  assert_equals(register_headers["referer"], expected_referrer, "referrer of register()");
+
+  // Check referrer for update().
+  await registration.update();
+  await wait_for_state(t, registration.installing, "installed");
+  const update_headers = await get_toplevel_script_headers(registration.waiting);
+  assert_equals(update_headers["referer"], expected_referrer, "referrer of update()");
+}, "Referrer of the top-level script fetch should be the document URL");
+
+</script>
index f0502ca..2a36608 100644 (file)
@@ -98,14 +98,12 @@ promise_test(function(t) {
               resource: 'resources/missing.jpg',
               mode: 'same-origin',
               description: 'Network fallback load failure',
-              should_no_performance_entry: true,
           });
           verify({
               performance: performance,
               resource: 'resources/missing.jpg',
               mode: 'cross-origin',
               description: 'Network fallback cross-origin load failure',
-              should_no_performance_entry: true,
           });
           // Tests for respondWith(fetch()).
           verify({
index 1c381fd..5129ed5 100644 (file)
@@ -11,10 +11,11 @@ self.onfetch = event => {
 
   // Request handler for a synthesized response.
   if (url.indexOf('synthesized') != -1) {
+    let script_headers = new Headers({ "Content-Type": "text/javascript" });
     if (destination === 'worker')
-      event.respondWith(new Response(dedicated_worker_script));
+      event.respondWith(new Response(dedicated_worker_script, { 'headers': script_headers }));
     else if (destination === 'sharedworker')
-      event.respondWith(new Response(shared_worker_script));
+      event.respondWith(new Response(shared_worker_script, { 'headers': script_headers }));
     else
       event.respondWith(new Response('Unexpected request! ' + destination));
     return;
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-error-worker.js b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-error-worker.js
new file mode 100644 (file)
index 0000000..788252c
--- /dev/null
@@ -0,0 +1,22 @@
+importScripts("/resources/testharness.js");
+
+function doTest(event)
+{
+    if (!event.request.url.includes("fetch-error-test"))
+        return;
+
+    let counter = 0;
+    const stream = new ReadableStream({ pull: controller => {
+        switch (++counter) {
+        case 1:
+            controller.enqueue(new Uint8Array([1]));
+            return;
+        default:
+            // We asynchronously error the stream so that there is ample time to resolve the fetch promise and call text() on the response.
+            step_timeout(() => controller.error("Sorry"), 50);
+        }
+    }});
+    event.respondWith(new Response(stream));
+}
+
+self.addEventListener("fetch", doTest);
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-add-async-worker.js b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-add-async-worker.js
new file mode 100644 (file)
index 0000000..a5a44a5
--- /dev/null
@@ -0,0 +1,6 @@
+importScripts('/resources/testharness.js');
+
+promise_test(async () => {
+  await new Promise(handler => { step_timeout(handler, 0); });
+  self.addEventListener('fetch', () => {});
+}, 'fetch event added asynchronously does not throw');
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js b/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js
new file mode 100644 (file)
index 0000000..7f3b201
--- /dev/null
@@ -0,0 +1,39 @@
+importScripts("/resources/testharness.js");
+
+self.addEventListener('fetch', event => {
+  if (event.request.url.indexOf('fallback') >= 0) {
+    event.addPerformanceEntry(
+      performance.mark("network-fallback mark 1",
+        { detail: { foo: 'foo' } }));
+    event.addPerformanceEntry(
+      performance.mark("network-fallback mark 2",
+        { detail: { bar: 'bar' } }));
+    event.addPerformanceEntry(performance.measure("network-fallback measure",
+      {
+        start: "network-fallback mark 1", end: "network-fallback mark 2",
+        detail: { baz: 'baz' }
+      }));
+    return;
+  } else if (event.request.url.indexOf('fetch-event') >= 0) {
+    event.respondWith((async () => {
+      event.addPerformanceEntry(performance.mark("fetch-event mark 1",
+        { detail: { foo: 'foo' } }));
+      const response = await fetch(event.request);
+
+      event.waitUntil(new Promise((resolve) => {
+        // Add performance entries after settling a promise for respondWith().
+        step_timeout(() => {
+          event.addPerformanceEntry(performance.mark("fetch-event mark 2",
+            { detail: { bar: 'bar' } }));
+          event.addPerformanceEntry(performance.measure("fetch-event measure",
+            {
+              start: "fetch-event mark 1", end: "fetch-event mark 2",
+              detail: { baz: 'baz' }
+            }));
+          resolve();
+        }, 100);
+      }));
+      return response;
+    })());
+  }
+});
index 66f3e59..92a96ff 100644 (file)
@@ -6,9 +6,23 @@ addEventListener('activate', function(evt) {
   }));
 });
 
-addEventListener('message', function(evt) {
-  if (typeof activatePromiseResolve === 'function') {
-    activatePromiseResolve();
+addEventListener('message', async function(evt) {
+  switch (evt.data) {
+    case 'CLAIM':
+      evt.waitUntil(new Promise(async resolve => {
+        await clients.claim();
+        evt.source.postMessage('CLAIMED');
+        resolve();
+      }));
+      break;
+    case 'ACTIVATE':
+      if (typeof activatePromiseResolve !== 'function') {
+        throw new Error('Not activating!');
+      }
+      activatePromiseResolve();
+      break;
+    default:
+      throw new Error('Unknown message!');
   }
 });
 
index af8dad3..bbd16ab 100644 (file)
@@ -1,10 +1,19 @@
 // Adapter for testharness.js-style tests with Service Workers
 
-function service_worker_unregister_and_register(test, url, scope) {
+/**
+ * @param options an object that represents RegistrationOptions except for scope.
+ * @param options.type a WorkerType.
+ * @param options.updateViaCache a ServiceWorkerUpdateViaCache.
+ * @see https://w3c.github.io/ServiceWorker/#dictdef-registrationoptions
+ */
+function service_worker_unregister_and_register(test, url, scope, options) {
   if (!scope || scope.length == 0)
     return Promise.reject(new Error('tests must define a scope'));
 
-  var options = { scope: scope };
+  if (options && options.scope)
+    return Promise.reject(new Error('scope must not be passed in options'));
+
+  options = Object.assign({ scope: scope }, options);
   return service_worker_unregister(test, scope)
     .then(function() {
         return navigator.serviceWorker.register(url, options);
index 71aff5e..8d47591 100644 (file)
@@ -1,3 +1,6 @@
+// Add a unique timestamp per request to induce service worker script update.
+// Time stamp: %TIMESTAMP%
+
 // The server injects the request headers here as a JSON string.
 const headersAsJson = `%HEADERS%`;
 const headers = JSON.parse(headersAsJson);
index 5666f19..d305705 100644 (file)
@@ -1,5 +1,6 @@
 import json
 import os
+import time
 
 def main(request, response):
   path = os.path.join(os.path.dirname(__file__),
@@ -8,6 +9,7 @@ def main(request, response):
 
   data = {key:request.headers[key] for key,value in request.headers.iteritems()}
   body = body.replace("%HEADERS%", json.dumps(data))
+  body = body.replace("%TIMESTAMP%", str(time.time()))
 
   headers = []
   headers.append(("ETag", "etag"))
index 8f1bcfd..b0570b3 100644 (file)
@@ -90,6 +90,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-cors-xhr-iframe.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-csp-iframe.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-csp-iframe.html.sub.headers
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-error-worker.js
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-add-async-worker.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-after-navigation-within-page-iframe.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-async-respond-with-worker.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-network-error-controllee-iframe.html
@@ -107,6 +109,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-respond-with-stops-propagation-worker.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-within-sw-worker.js
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-header-visibility-iframe.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-inscope.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-outscope.html
index 3f2f298..4ac8fbc 100644 (file)
@@ -2,5 +2,5 @@
 PASS Accessing navigator.serviceWorker in normal iframe should not throw. 
 PASS Accessing navigator.serviceWorker in sandboxed iframe should throw. 
 PASS Accessing navigator.serviceWorker in sandboxed iframe with allow-same-origin flag should not throw. 
-FAIL Switching iframe sandbox attribute while loading the iframe assert_equals: expected "navigator.serviceWorker failed: SecurityError" but got "ok"
+FAIL Switching iframe sandbox attribute while loading the iframe promise_test: Unhandled rejection with value: object "TypeError: msg.startsWith is not a function. (In 'msg.startsWith('no msg back')', 'msg.startsWith' is undefined)"
 
index a58525f..70be6ef 100644 (file)
@@ -8,10 +8,12 @@
 var lastCallbackId = 0;
 var callbacks = {};
 function postMessageAndWaitResult(frame) {
-  return new Promise(function(resolve) {
+  return new Promise(function(resolve, reject) {
     var id = ++lastCallbackId;
     callbacks[id] = resolve;
     frame.contentWindow.postMessage({id:id}, '*');
+    const timeout = 1000;
+    step_timeout(() => reject("no msg back after " + timeout + "ms"), timeout);
   });
 }
 
@@ -105,10 +107,13 @@ promise_test(function(t) {
           // It's not clear whether navigation subsequently creates a new
           // Document, but I'm assuming it wouldn't.
           // https://html.spec.whatwg.org/multipage/embedded-content.html#attr-iframe-sandbox
-          assert_equals(
-              result,
-              'navigator.serviceWorker failed: SecurityError');
-        });
+          assert_true(
+              false,
+              'should NOT get message back from a sandboxed frame where scripts are not allowed to execute');
+        })
+      .catch(msg => {
+        assert_true(msg.startsWith('no msg back'), 'expecting error message "no msg back"');
+      });
   }, 'Switching iframe sandbox attribute while loading the iframe');
 
 </script>
index 18ba25d..e02ac1e 100644 (file)
@@ -62,6 +62,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-exposed-header-names.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-csp.https.html
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-error.https.html
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-add-async.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-after-navigation-within-page.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-async-respond-with.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-is-history-backward-navigation-manual.https.html
@@ -82,6 +84,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-throws-after-respond-with.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-within-sw-manual.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-within-sw.https.html
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-header-visibility.https.html
@@ -143,6 +146,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/redirected-response.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referer.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-policy-header.https.html
+/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/register-closed-window.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/register-default-scope.https.html
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/register-same-scope-different-script-url.https.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/specgen.json b/LayoutTests/imported/w3c/web-platform-tests/service-workers/specgen.json
deleted file mode 100644 (file)
index 88c36ed..0000000
+++ /dev/null
@@ -1,658 +0,0 @@
-{
-    "sections": [
-        {
-            "href": "#introduction",
-            "id": "introduction",
-            "hash": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
-            "secno": "1",
-            "testable": false
-        },
-        {
-            "href": "#about",
-            "id": "about",
-            "hash": "8d3cf149aa73cff52328509ebbaffd933e8fb6af",
-            "secno": "1.1",
-            "testable": false
-        },
-        {
-            "href": "#dependencies",
-            "id": "dependencies",
-            "hash": "1355f2d7ec9bf4e617ee632c0db44f834c96435b",
-            "secno": "1.2",
-            "testable": false
-        },
-        {
-            "href": "#motivations",
-            "id": "motivations",
-            "hash": "92d899bc1e63a170d2324638d16f580b97b4f4d6",
-            "secno": "1.3",
-            "testable": false
-        },
-        {
-            "href": "#concepts",
-            "id": "concepts",
-            "hash": "589023372dc033b0a77be1cd01f54f5f8c3ebfa8",
-            "secno": "2",
-            "testable": false
-        },
-        {
-            "href": "#document-context",
-            "id": "document-context",
-            "hash": "34feeb18dea978349a2f76e6b17c127123b3db74",
-            "secno": "3",
-            "testable": false
-        },
-        {
-            "href": "#service-worker-obj",
-            "id": "service-worker-obj",
-            "hash": "6cbd0107199072ab86b36e72d08d5465b42e6da8",
-            "secno": "3.1",
-            "testPageHash": "8dbbc9aa4300f0203524f3e405dbf7ca462e7164",
-            "testPagePath": "stub-3.1-service-worker-obj.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-scope",
-            "id": "service-worker-scope",
-            "hash": "136f25ef227515a7be9b32c44967f68b34ad8924",
-            "secno": "3.1.1",
-            "testPageHash": "965a00b32d56192330aa9f6337072bb3633ad382",
-            "testPagePath": "stub-3.1.1-service-worker-scope.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-url",
-            "id": "service-worker-url",
-            "hash": "df66a1b4b3bfa3e7ab96fd491a6829fab1d18a88",
-            "secno": "3.1.2",
-            "testPageHash": "92f6aed1437bb39c5941b495ac6c5f342c025b38",
-            "testPagePath": "stub-3.1.2-service-worker-url.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-state",
-            "id": "service-worker-state",
-            "hash": "8f80f2b4cbb1c228867c9dd90c05cbecfc92dd77",
-            "secno": "3.1.3",
-            "testPageHash": "4aad1dc47572879fdc2c79a814ad21e1ef9a64ec",
-            "testPagePath": "stub-3.1.3-service-worker-state.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-on-state-change",
-            "id": "service-worker-on-state-change",
-            "hash": "0f8fd9d1431deacea72fe739f42992ab5a396bf2",
-            "secno": "3.1.4",
-            "testPageHash": "6bb309bccc1e7c74ade7fc4c6e400bafb60daceb",
-            "testPagePath": "stub-3.1.4-service-worker-on-state-change.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker",
-            "id": "navigator-service-worker",
-            "hash": "22f1ebbafca6976d0f4814b0fbb8f173bf919f06",
-            "secno": "3.2",
-            "testPageHash": "6d597735816a09ec774150029ed5136198f52ab7",
-            "testPagePath": "stub-3.2-navigator-service-worker.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-installing",
-            "id": "navigator-service-worker-installing",
-            "hash": "9675c3cdf5ba4b4155284e06a19e4de631645509",
-            "secno": "3.2.1",
-            "testPageHash": "2c8e56e74c130104e395de46bad20fb5d3021d95",
-            "testPagePath": "stub-3.2.1-navigator-service-worker-installing.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-waiting",
-            "id": "navigator-service-worker-waiting",
-            "hash": "88b4db92cc49109e6a15ddebdd219690d9648e76",
-            "secno": "3.2.2",
-            "testPageHash": "1cf6ed58bf5ecf963fed8c3d9211b853dab564e2",
-            "testPagePath": "stub-3.2.2-navigator-service-worker-waiting.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-active",
-            "id": "navigator-service-worker-active",
-            "hash": "0da48e885c77da60d1837197780049904789e3cb",
-            "secno": "3.2.3",
-            "testPageHash": "f5dca8c6eb5f29a0f9a5f06e25861e7f3106cc67",
-            "testPagePath": "stub-3.2.3-navigator-service-worker-active.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-controller",
-            "id": "navigator-service-worker-controller",
-            "hash": "293433ccb7bb2a22d8d5a81e788892e071b25e65",
-            "secno": "3.2.4",
-            "testPageHash": "6452f431d0765d7aa3135d18fee43e6664dcbb12",
-            "testPagePath": "stub-3.2.4-navigator-service-worker-controller.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-ready",
-            "id": "navigator-service-worker-ready",
-            "hash": "6240fde8d7168beeb95f4f36aa9e143319b2061b",
-            "secno": "3.2.5",
-            "testPageHash": "ae4fd694c88bab72f338d97bf96b7d23e2e83e87",
-            "testPagePath": "stub-3.2.5-navigator-service-worker-ready.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-getAll",
-            "id": "navigator-service-worker-getAll",
-            "hash": "292ee3af2cc8fadc24302446809d04bf2e9811a5",
-            "secno": "3.2.6",
-            "testPageHash": "4096ae712cc3e753456fbe05bb4d0cfc4399d2c9",
-            "testPagePath": "stub-3.2.6-navigator-service-worker-getAll.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-register",
-            "id": "navigator-service-worker-register",
-            "hash": "c999dc5f67126c9f0f02b25fd943a34b48cff618",
-            "secno": "3.2.7",
-            "testPageHash": "bde900b97dbb08b053ff8115775ea3b79a124b6e",
-            "testPagePath": "stub-3.2.7-navigator-service-worker-register.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-unregister",
-            "id": "navigator-service-worker-unregister",
-            "hash": "fd196f926f181563855e4683cc995405c1e611d0",
-            "secno": "3.2.8",
-            "testPageHash": "dbd99a1dcbcb629431617790a305e840495049eb",
-            "testPagePath": "stub-3.2.8-navigator-service-worker-unregister.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-onupdatefound",
-            "id": "navigator-service-worker-onupdatefound",
-            "hash": "2bb5aabaca24a68f9e6b4c4443968178eb1ccfe8",
-            "secno": "3.2.9",
-            "testPageHash": "eef0c1c39577abefb3654a6e9917ff2da657871b",
-            "testPagePath": "stub-3.2.9-navigator-service-worker-onupdatefound.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-oncontrollerchange",
-            "id": "navigator-service-worker-oncontrollerchange",
-            "hash": "c89a4ffba10d9285e07c38c28718719d87053994",
-            "secno": "3.2.10",
-            "testPageHash": "35e0ce2b8f4527ebbd75d4dfa3436fd7f8c79792",
-            "testPagePath": "stub-3.2.10-navigator-service-worker-oncontrollerchange.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-onreloadpage",
-            "id": "navigator-service-worker-onreloadpage",
-            "hash": "424441910abf2e1bdc3db658fe46827f7abe60a4",
-            "secno": "3.2.11",
-            "testPageHash": "ae614de17e5f339b65f77cafa6e0f5625491abfb",
-            "testPagePath": "stub-3.2.11-navigator-service-worker-onreloadpage.html",
-            "testable": true
-        },
-        {
-            "href": "#navigator-service-worker-onerror",
-            "id": "navigator-service-worker-onerror",
-            "hash": "710f7fcd2f5340147b9e030bc5932b8242cef828",
-            "secno": "3.2.12",
-            "testPageHash": "cd62779e27151d55f14ac6ab7aa41dcf723e0ac7",
-            "testPagePath": "stub-3.2.12-navigator-service-worker-onerror.html",
-            "testable": true
-        },
-        {
-            "href": "#execution-context",
-            "id": "execution-context",
-            "hash": "ddf24f0adf58237e264c3c43cb7ab07af3013c9d",
-            "secno": "4",
-            "testable": false
-        },
-        {
-            "href": "#service-worker-global-scope",
-            "id": "service-worker-global-scope",
-            "hash": "e6b8bb7f99c125f4226fc5b6c51cf03a7437f2ef",
-            "secno": "4.1",
-            "testPageHash": "2f596b6b07bcfb71c01d75f725eb52c84e9c69dd",
-            "testPagePath": "stub-4.1-service-worker-global-scope.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-caches",
-            "id": "service-worker-global-scope-caches",
-            "hash": "43d3c9f441b3a7abd0d3a7f55d93faaceeb7d97d",
-            "secno": "4.1.1",
-            "testPageHash": "f19b91c887f6312688b66b1988147a599cd9470f",
-            "testPagePath": "stub-4.1.1-service-worker-global-scope-caches.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-clients",
-            "id": "service-worker-global-scope-clients",
-            "hash": "cb83230107645229da9776ed0fc9f7bc6fcce747",
-            "secno": "4.1.2",
-            "testPageHash": "45b3aae572f7161748fa98e97b4f2b738c3dcfef",
-            "testPagePath": "stub-4.1.2-service-worker-global-scope-clients.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-scope",
-            "id": "service-worker-global-scope-scope",
-            "hash": "08c808048b647aa9d4cc0b0a0f70b06ca89af4a3",
-            "secno": "4.1.3",
-            "testPageHash": "bfe7eaf8deb8de7d2ccfbba97640478b1c81d6c7",
-            "testPagePath": "stub-4.1.3-service-worker-global-scope-scope.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-fetch",
-            "id": "service-worker-global-scope-fetch",
-            "hash": "b66133d8a2c67f9b10c274d5b05383ff76d2cd42",
-            "secno": "4.1.4",
-            "testPageHash": "2b1ffa915afddeb099dfff23f4ecf555b0710ed4",
-            "testPagePath": "stub-4.1.4-service-worker-global-scope-fetch.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-update",
-            "id": "service-worker-global-scope-update",
-            "hash": "3ddf48cecb4d4a67a329248787dd220ce17f4eff",
-            "secno": "4.1.5",
-            "testPageHash": "15879bf45f460c0ab0c02793655096c1bca418a7",
-            "testPagePath": "stub-4.1.5-service-worker-global-scope-update.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-unregister",
-            "id": "service-worker-global-scope-unregister",
-            "hash": "fff9ef2daa5689b38a17eeb9a6bd7071098ca778",
-            "secno": "4.1.6",
-            "testPageHash": "c4bf327228628b794db9c6f2eb17519e37cea6b9",
-            "testPagePath": "stub-4.1.6-service-worker-global-scope-unregister.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-global-scope-onmessage",
-            "id": "service-worker-global-scope-onmessage",
-            "hash": "bc8f6aed2d515dc7f6b0757afa02f37899082668",
-            "secno": "4.1.7",
-            "testPageHash": "9e6f2732d21871ec06e9541ea881baf962f7cdf4",
-            "testPagePath": "stub-4.1.7-service-worker-global-scope-onmessage.html",
-            "testable": true
-        },
-        {
-            "href": "#client",
-            "id": "client",
-            "hash": "47a1c10cd9e4db9a5c86d9bcf80477f771ea954c",
-            "secno": "4.2",
-            "testPageHash": "21d74c1af0b3176b029c9b62b37fe73436e0f197",
-            "testPagePath": "stub-4.2-client.html",
-            "testable": true
-        },
-        {
-            "href": "#service-worker-clients",
-            "id": "service-worker-clients",
-            "hash": "c2c6f4873f07b53705a46b2bd44ba10f84dd2b56",
-            "secno": "4.3",
-            "testPageHash": "9c0366e6cfd28caaeaf940bad2b3c7ace93037f6",
-            "testPagePath": "stub-4.3-service-worker-clients.html",
-            "testable": true
-        },
-        {
-            "href": "#get-serviced-method",
-            "id": "get-serviced-method",
-            "hash": "299abaa21cf096e423edfa19755987986f742a1f",
-            "secno": "4.3.1",
-            "testPageHash": "efeb1c2dc8144c30e6628cb56b3e532531ee1e88",
-            "testPagePath": "stub-4.3.1-get-serviced-method.html",
-            "testable": true
-        },
-        {
-            "href": "#reloadall-method",
-            "id": "reloadall-method",
-            "hash": "bb4d775d261e69cbeaf65c123e949c24cf542ae7",
-            "secno": "4.3.2",
-            "testPageHash": "d1a4dde873b77201b4de745d2083bf63549b0b8b",
-            "testPagePath": "stub-4.3.2-reloadall-method.html",
-            "testable": true
-        },
-        {
-            "href": "#request-objects",
-            "id": "request-objects",
-            "hash": "65ae6c08f720a2eedb7b140f5635a5ac46ddadfc",
-            "secno": "4.4",
-            "testPageHash": "ec493c70e8a0d8d3eeb0ecaef59610aed97d298e",
-            "testPagePath": "stub-4.4-request-objects.html",
-            "testable": true
-        },
-        {
-            "href": "#response-objects",
-            "id": "response-objects",
-            "hash": "2efbff63c70ab92f93e4acd021409b9df4776882",
-            "secno": "4.5",
-            "testPageHash": "8340b69d62f111f56095c5fe9047d9215fa7aefc",
-            "testPagePath": "stub-4.5-response-objects.html",
-            "testable": true
-        },
-        {
-            "href": "#abstract-response",
-            "id": "abstract-response",
-            "hash": "bddc306a9892c0bca43e8b361c1ee22b87759e23",
-            "secno": "4.5.1",
-            "testable": false
-        },
-        {
-            "href": "#response",
-            "id": "response",
-            "hash": "6471d25755bdab0d4f72413f9367b7bb36c53a6f",
-            "secno": "4.5.2",
-            "testPageHash": "346d63cc7eb8ee412f5f704ba241205c8d437540",
-            "testPagePath": "stub-4.5.2-response.html",
-            "testable": true
-        },
-        {
-            "href": "#header",
-            "id": "header",
-            "hash": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
-            "secno": "4.5.3",
-            "testable": false
-        },
-        {
-            "href": "#opaque-response",
-            "id": "opaque-response",
-            "hash": "df5431f4fbd26d81f2d4f567309c6a7a26dbfd4a",
-            "secno": "4.5.4",
-            "testPageHash": "85373f290cf594f0f09eb0a76bc6ef6299be595f",
-            "testPagePath": "stub-4.5.4-opaque-response.html",
-            "testable": true
-        },
-        {
-            "href": "#cors-response",
-            "id": "cors-response",
-            "hash": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
-            "secno": "4.5.5",
-            "testable": false
-        },
-        {
-            "href": "#cache-objects",
-            "id": "cache-objects",
-            "hash": "001d0dfb8fbcbcb6443d1be2b722c9a84d6fd95b",
-            "secno": "4.6",
-            "testPageHash": "c1ef341d15a8c76d015eef57842ed10e62c02927",
-            "testPagePath": "stub-4.6-cache-objects.html",
-            "testable": true
-        },
-        {
-            "href": "#cache-lifetimes",
-            "id": "cache-lifetimes",
-            "hash": "7c73698ca9b686a0314ddf368bf8ad4ca6af392f",
-            "secno": "4.6.1",
-            "testPageHash": "f3524320a98f2fbdc5d711de82770957a7f5ec4b",
-            "testPagePath": "stub-4.6.1-cache-lifetimes.html",
-            "testable": true
-        },
-        {
-            "href": "#cache",
-            "id": "cache",
-            "hash": "bf1fe844577ab57a60eb550be24335a3321ca2ee",
-            "secno": "4.6.2",
-            "testPageHash": "c55b7b05c8e2f4b65722e16cdbcd78ffdfe1e4bf",
-            "testPagePath": "stub-4.6.2-cache.html",
-            "testable": true
-        },
-        {
-            "href": "#cache-storage",
-            "id": "cache-storage",
-            "hash": "9cdaac070f56e55d66a89cd4b6e669a04aa73b82",
-            "secno": "4.6.3",
-            "testPageHash": "ee6902f170d94cc1e3a4a00f4c90e7e19c4dff95",
-            "testPagePath": "stub-4.6.3-cache-storage.html",
-            "testable": true
-        },
-        {
-            "href": "#events",
-            "id": "events",
-            "hash": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
-            "secno": "4.7",
-            "testable": false
-        },
-        {
-            "href": "#install-phase-event",
-            "id": "install-phase-event",
-            "hash": "8495382b418adbbed436b2002ab0155a3a295ef2",
-            "secno": "4.7.1",
-            "testPageHash": "e48e98d51936bd57d21903615203f2b78d3f4b12",
-            "testPagePath": "stub-4.7.1-install-phase-event.html",
-            "testable": true
-        },
-        {
-            "href": "#wait-until-method",
-            "id": "wait-until-method",
-            "hash": "295fb5d4932396fd13365ed2fe57aa672f1f2a56",
-            "secno": "4.7.1.1",
-            "testPageHash": "c3769e51852b8438a97c39c50fa62351a73c4ee6",
-            "testPagePath": "stub-4.7.1.1-wait-until-method.html",
-            "testable": true
-        },
-        {
-            "href": "#install-event",
-            "id": "install-event",
-            "hash": "3a0f6da1771c22ab21ddc00729433a4d95ac6782",
-            "secno": "4.7.2",
-            "testPageHash": "9a103cc461eaca3da75db583ce08f13ecd2b1a98",
-            "testPagePath": "stub-4.7.2-install-event.html",
-            "testable": true
-        },
-        {
-            "href": "#install-event-section",
-            "id": "install-event-section",
-            "hash": "4631577df2efc1a4350000461629bc1ca93dbd14",
-            "secno": "4.7.2.1",
-            "testPageHash": "32f54e74bef784d2f0ac772b44abeee06573062d",
-            "testPagePath": "stub-4.7.2.1-install-event-section.html",
-            "testable": true
-        },
-        {
-            "href": "#replace-method",
-            "id": "replace-method",
-            "hash": "b9093b05204d09748311023b4c737ede02ff8115",
-            "secno": "4.7.2.2",
-            "testPageHash": "372bed923f8c35c4923634ae27fa121919ac0fec",
-            "testPagePath": "stub-4.7.2.2-replace-method.html",
-            "testable": true
-        },
-        {
-            "href": "#activate-event",
-            "id": "activate-event",
-            "hash": "ac3d03aa0ed961fb1122850aeab92c302c55ecd0",
-            "secno": "4.7.3",
-            "testPageHash": "6241762ab1d6f430fa9b7cc8f02a00e6591c6bc6",
-            "testPagePath": "stub-4.7.3-activate-event.html",
-            "testable": true
-        },
-        {
-            "href": "#fetch-event",
-            "id": "fetch-event",
-            "hash": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
-            "secno": "4.7.4",
-            "testable": false
-        },
-        {
-            "href": "#fetch-event-section",
-            "id": "fetch-event-section",
-            "hash": "ae24fda9664a3bd7b7fe2a8712ac469c3ee7128e",
-            "secno": "4.7.4.1",
-            "testPageHash": "393fc7b65e9f5afd18da666b6b206ccd639397cd",
-            "testPagePath": "stub-4.7.4.1-fetch-event-section.html",
-            "testable": true
-        },
-        {
-            "href": "#respond-with-method",
-            "id": "respond-with-method",
-            "hash": "7e4f010e2ec1ea0500b435cf599ba58942164457",
-            "secno": "4.7.4.2",
-            "testPageHash": "31e0acd058b9a5b722ae9f405b50bc94d31596b8",
-            "testPagePath": "stub-4.7.4.2-respond-with-method.html",
-            "testable": true
-        },
-        {
-            "href": "#default-method",
-            "id": "default-method",
-            "hash": "4d6f8f93b2e10ab0e486dbf464ff107ec1a6aa4c",
-            "secno": "4.7.4.3",
-            "testPageHash": "34e015c973887e2b3bf8b6db62f75d5d417a43cc",
-            "testPagePath": "stub-4.7.4.3-default-method.html",
-            "testable": true
-        },
-        {
-            "href": "#is-reload-attribute",
-            "id": "is-reload-attribute",
-            "hash": "6e1afd9e8940e9cd38aa7de1ed57e8c5b1a60e3d",
-            "secno": "4.7.4.4",
-            "testPageHash": "703a6469782d37be3c25e2214f897d1064acca47",
-            "testPagePath": "stub-4.7.4.4-is-reload-attribute.html",
-            "testable": true
-        },
-        {
-            "href": "#security-considerations",
-            "id": "security-considerations",
-            "hash": "5b02b143172647dd7f74f0464dffa7ec7d0e8f94",
-            "secno": "5",
-            "testable": false
-        },
-        {
-            "href": "#origin-relativity",
-            "id": "origin-relativity",
-            "hash": "72bbbd7d3d43a859af6ff9f19353210ddfcc26de",
-            "secno": "5.1",
-            "testPageHash": "1c92607dfac57b0f59654d059a4a67e0f984b84d",
-            "testPagePath": "stub-5.1-origin-relativity.html",
-            "testable": true
-        },
-        {
-            "href": "#cross-origin-resources",
-            "id": "cross-origin-resources",
-            "hash": "6176879ecfb5ae769679ceef4ee1e8889be8df92",
-            "secno": "5.2",
-            "testPageHash": "bcf85ba278c70c086645c416cee729ce753bc528",
-            "testPagePath": "stub-5.2-cross-origin-resources.html",
-            "testable": true
-        },
-        {
-            "href": "#storage-considerations",
-            "id": "storage-considerations",
-            "hash": "e101cee2062749b1a73086492377458251a5e875",
-            "secno": "6",
-            "testable": false
-        },
-        {
-            "href": "#extensibility",
-            "id": "extensibility",
-            "hash": "ef1b382bb89c52e01edad421b02b237765a21ce7",
-            "secno": "7",
-            "testable": false
-        },
-        {
-            "href": "#algorithms",
-            "id": "algorithms",
-            "hash": "d130247eab1d368efea646ff369e65f6c0c19481",
-            "secno": "8",
-            "testable": false
-        },
-        {
-            "href": "#registration-algorithm",
-            "id": "registration-algorithm",
-            "hash": "b688d090671c08ca17ea7cadc561e6d471ee099e",
-            "secno": "8.1",
-            "testable": false
-        },
-        {
-            "href": "#update-algorithm",
-            "id": "update-algorithm",
-            "hash": "679a19fef428affc83103c1eec0dbd3be40c4e2a",
-            "secno": "8.2",
-            "testable": false
-        },
-        {
-            "href": "#soft-update-algorithm",
-            "id": "soft-update-algorithm",
-            "hash": "8eb103f5cd0e595ee5e25f075e8c6239211e482a",
-            "secno": "8.3",
-            "testable": false
-        },
-        {
-            "href": "#installation-algorithm",
-            "id": "installation-algorithm",
-            "hash": "5874d9247d979009b67aedf964ae097837cfb3d9",
-            "secno": "8.4",
-            "testable": false
-        },
-        {
-            "href": "#activation-algorithm",
-            "id": "activation-algorithm",
-            "hash": "648b34baf6e7c2096a842e6d367949117843108e",
-            "secno": "8.5",
-            "testable": false
-        },
-        {
-            "href": "#on-fetch-request-algorithm",
-            "id": "on-fetch-request-algorithm",
-            "hash": "e1da43671071ec307f99cd781fc9b46353f3adfd",
-            "secno": "8.6",
-            "testable": false
-        },
-        {
-            "href": "#on-document-unload-algorithm",
-            "id": "on-document-unload-algorithm",
-            "hash": "8a7196b5dd04ad4fb9b96e16a52f4f7ac1906763",
-            "secno": "8.7",
-            "testable": false
-        },
-        {
-            "href": "#unregistration-algorithm",
-            "id": "unregistration-algorithm",
-            "hash": "0114db166d42211d0d7ab4b8e77de64a9fc97517",
-            "secno": "8.8",
-            "testable": false
-        },
-        {
-            "href": "#update-state-algorithm",
-            "id": "update-state-algorithm",
-            "hash": "2ed8a1e7479f1a8ad038aa44ccdd5e4f6b65cf05",
-            "secno": "8.9",
-            "testable": false
-        },
-        {
-            "href": "#scope-match-algorithm",
-            "id": "scope-match-algorithm",
-            "hash": "a2117fb34a8fa4ca3e832d9276477cfc1318dd1a",
-            "secno": "8.10",
-            "testable": false
-        },
-        {
-            "href": "#get-registration-algorithm",
-            "id": "get-registration-algorithm",
-            "hash": "b20332db952ba8f4b7e5f65b740a18da4a199c2e",
-            "secno": "8.11",
-            "testable": false
-        },
-        {
-            "href": "#get-newest-worker-algorithm",
-            "id": "get-newest-worker-algorithm",
-            "hash": "72dc1cbee8c98501931c411018fd1cad4376142b",
-            "secno": "8.12",
-            "testable": false
-        },
-        {
-            "href": "#acknowledgements",
-            "id": "acknowledgements",
-            "hash": "6347067ca5a574f8cc80c76d95dee568042d059b",
-            "secno": "9",
-            "testable": false
-        }
-    ],
-    "specUrl": "https://w3c.github.io/ServiceWorker/"
-}
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj-expected.txt
deleted file mode 100644 (file)
index 05ac065..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-
-Harness Error (FAIL), message = Invalid object member name ServiceWorkerState
-
-FAIL ServiceWorker interface: existence and properties of interface object assert_equals: prototype of ServiceWorker is not Worker expected function "function Worker() {
-    [native code]
-}" but got function "function EventTarget() {
-    [native code]
-}"
-PASS ServiceWorker interface object length 
-PASS ServiceWorker interface object name 
-FAIL ServiceWorker interface: existence and properties of interface prototype object assert_equals: prototype of ServiceWorker.prototype is not Worker.prototype expected object "[object WorkerPrototype]" but got object "[object EventTargetPrototype]"
-PASS ServiceWorker interface: existence and properties of interface prototype object's "constructor" property 
-PASS ServiceWorker interface: existence and properties of interface prototype object's @@unscopables property 
-FAIL ServiceWorker interface: attribute scope assert_true: The prototype object must have a property "scope" expected true got false
-FAIL ServiceWorker interface: attribute url assert_true: The prototype object must have a property "url" expected true got false
-PASS ServiceWorker interface: attribute state 
-PASS ServiceWorker interface: attribute onstatechange 
-FAIL ServiceWorker must be primary interface of throw new Error ('No object defined for the ServiceWorker interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-FAIL Stringification of throw new Error ('No object defined for the ServiceWorker interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-FAIL ServiceWorker interface: throw new Error ('No object defined for the ServiceWorker interface') must inherit property "scope" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-FAIL ServiceWorker interface: throw new Error ('No object defined for the ServiceWorker interface') must inherit property "url" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-FAIL ServiceWorker interface: throw new Error ('No object defined for the ServiceWorker interface') must inherit property "state" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-FAIL ServiceWorker interface: throw new Error ('No object defined for the ServiceWorker interface') must inherit property "onstatechange" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorker interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj.html
deleted file mode 100644 (file)
index 99c2cbe..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: ServiceWorker</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-obj">
-        <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()] // no-op constructor
-interface ServiceWorker : Worker {
-  readonly attribute DOMString scope;
-  readonly attribute DOMString url;
-  readonly attribute ServiceWorkerState state;
-
-  // event
-  attribute EventHandler onstatechange;
-};
-
-enum ServiceWorkerState {
-  "installing",
-  "installed",
-  "activating",
-  "activated",
-  "redundant"
-};
-</script>
-
-<!--
-The `ServiceWorker` interface represents the document-side view of a Service
-Worker. This object provides a no-op constructor. Callers should note that only
-`ServiceWorker` objects created by the user agent (see
-`navigator.serviceWorker.installing`, `navigator.serviceWorker.waiting`,
-`navigator.serviceWorker.active` and `navigator.serviceWorker.controller`) will
-provide meaningful functionality.
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface EventHandler {};
-        interface Worker {};
-    </script>
-
-    <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({
-            ServiceWorker: ["throw new Error ('No object defined for the ServiceWorker interface')"],
-            ServiceWorkerState: ["throw new Error ('No object defined for the ServiceWorkerState enum')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope-expected.txt
deleted file mode 100644 (file)
index 1101e19..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section scope so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope.html
deleted file mode 100644 (file)
index 8c75c60..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: scope</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-scope">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The `scope` of a `ServiceWorker` object reflects the [URL scope][1] of the
-associated Service Worker [registration][2]. The `scope` attribute must return
-the [serialization][3] of the URL representing the [URL scope][1] of the
-associated Service Worker [registration][2].
-
-For example, consider a document created by a navigation to
-`https://example.com/app.html` which [matches][4] via the following
-registration call which has been previously executed:
-// Script on the page https://example.com/app.html
-navigator.serviceWorker.register("/service_worker.js", { scope: "/*" });
-The value of `navigator.serviceWorker.controller.scope` will be
-`"https://example.com/*"`.
-
-
-
-[1]: #url-scope
-[2]: #registration
-[3]: http://url.spec.whatwg.org/#concept-url-serializer
-[4]: #on-fetch-request-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section scope so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url-expected.txt
deleted file mode 100644 (file)
index 87e9123..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section url so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url.html
deleted file mode 100644 (file)
index 5674df7..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: url</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-url">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The `url` attribute must return the [serialization][1] of the URL of the script
-of the Service Worker, identified by its [URL scope][2], that is associated
-with the [ServiceWorkerGlobalScope][3] object. The `url` attribute is always an
-[absolute URL][4] corresponding to the script file which the Service Worker
-evaluates.
-
-In the example in section 3.1.1, the value of
-`navigator.serviceWorker.controller.url` will be
-`"https://example.com/service_worker.js"`.
-
-
-
-[1]: http://url.spec.whatwg.org/#concept-url-serializer
-[2]: #url-scope
-[3]: #service-worker-global-scope-interface
-[4]: http://url.spec.whatwg.org/#concept-absolute-url
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section url so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state-expected.txt
deleted file mode 100644 (file)
index d9ecc61..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section state so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state.html
deleted file mode 100644 (file)
index 8e729ba..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: state</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-state">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The [ServiceWorker][1] object can be in several states. The `state` attribute
-must return the current state, which must be one of the following values
-defined in the [ServiceWorkerState][2] enumeration:
-
-`"installing"`:
-    The Service Worker represented by the [ServiceWorker][1] object has entered
-    and is running the steps in the [installation process][3]. During this
-    state, `e.waitUntil(p)` can be called inside the `oninstall` event handler
-    of the associcated [ServiceWorkerGloberScope][4] object to extend the life
-    of the [installing worker][5] until the passed [Promise][6] resolves
-    successfully. This is primarily used to ensure that the Service Worker is
-    not active until all of the core caches are populated.
-`"installed"`:
-    The Service Worker represented by the [ServiceWorker][1] object has
-    completed the steps in the [installation process][3]. The Service Worker in
-    this state is considered the [worker in waiting][7].
-`"activating"`:
-    The Service Worker represented by the [ServiceWorker][1] object has entered
-    and is running the steps in the [activation process][8]. During this state,
-    `e.waitUntil(p)` can be called inside the `onactivate` event handler of the
-    associated [ServiceWorkerGloberScope][9] object to extend the life of the
-    activating [active worker][10] until the passed [Promise][6] resolves
-    successfully. Note that no [functional events][11] are dispatched until the
-    state becomes `"activated"`.
-`"activated"`:
-    The Service Worker represented by the [ServiceWorker][1] object has
-    completed the steps in the [activation process][8]. The Service Worker in
-    this state is considered the [active worker][10] ready to [control][12] the
-    documents in matching scope upon subsequence [navigation][13].
-`"redundant"`:
-    A newly created Service Worker [registration][14] is replacing the current
-    [registration][14] of the Service Worker.
-
-
-
-[1]: #service-worker-interface
-[2]: #service-worker-state-enum
-[3]: #installation-process
-[4]: #service-worker-glober-scope-interface
-[5]: #installing-worker
-[6]: http://goo.gl/3TobQS
-[7]: #worker-in-waiting
-[8]: #activation-process
-[9]: #service-worker-global-scope-interface
-[10]: #active-worker
-[11]: #functional-events
-[12]: #document-control
-[13]: http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#navigate
-[14]: #registration
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section state so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change-expected.txt
deleted file mode 100644 (file)
index b526845..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section onstatechange so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change.html
deleted file mode 100644 (file)
index c87dce6..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: onstatechange</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-on-state-change">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`onstatechange` is the [event handler][1] that must be supported as attribute
-by the `[ServiceWorker][2]` object. A `statechange` event using the
-`[Event][3]` interface is dispatched on `[ServiceWorker][2]` object when the
-`state` attribute of the `ServiceWorker` object is changed.
-
-[1]: http://goo.gl/rBfiz0
-[2]: #service-worker-interface
-[3]: http://goo.gl/Mzv7Dv
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section onstatechange so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker-expected.txt
deleted file mode 100644 (file)
index 71dd115..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-
-Harness Error (FAIL), message = Invalid object member name RegistrationOptionList
-
-FAIL Partial interface Navigator: original interface defined assert_true: Original interface should be defined expected true got false
-PASS ServiceWorkerContainer interface: existence and properties of interface object 
-PASS ServiceWorkerContainer interface object length 
-PASS ServiceWorkerContainer interface object name 
-PASS ServiceWorkerContainer interface: existence and properties of interface prototype object 
-PASS ServiceWorkerContainer interface: existence and properties of interface prototype object's "constructor" property 
-PASS ServiceWorkerContainer interface: existence and properties of interface prototype object's @@unscopables property 
-PASS ServiceWorkerContainer interface: attribute ready 
-FAIL ServiceWorkerContainer interface: operation getAll() assert_own_property: interface prototype object missing non-static operation expected property "getAll" missing
-PASS ServiceWorkerContainer interface: operation register(DOMString, RegistrationOptionList) 
-FAIL ServiceWorkerContainer interface: operation unregister(DOMString) assert_own_property: interface prototype object missing non-static operation expected property "unregister" missing
-FAIL ServiceWorkerContainer interface: attribute onupdatefound assert_true: The prototype object must have a property "onupdatefound" expected true got false
-PASS ServiceWorkerContainer interface: attribute oncontrollerchange 
-FAIL ServiceWorkerContainer interface: attribute onreloadpage assert_true: The prototype object must have a property "onreloadpage" expected true got false
-FAIL ServiceWorkerContainer interface: attribute onerror assert_true: The prototype object must have a property "onerror" expected true got false
-FAIL ServiceWorkerContainer must be primary interface of throw new Error ('No object defined for the ServiceWorkerContainer interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL Stringification of throw new Error ('No object defined for the ServiceWorkerContainer interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must have own property "installing" assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must have own property "waiting" assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must have own property "active" assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must have own property "controller" assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "ready" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "getAll()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "register(DOMString, RegistrationOptionList)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: calling register(DOMString, RegistrationOptionList) on throw new Error ('No object defined for the ServiceWorkerContainer interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "unregister(DOMString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: calling unregister(DOMString) on throw new Error ('No object defined for the ServiceWorkerContainer interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "onupdatefound" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "oncontrollerchange" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "onreloadpage" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-FAIL ServiceWorkerContainer interface: throw new Error ('No object defined for the ServiceWorkerContainer interface') must inherit property "onerror" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerContainer interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker.html
deleted file mode 100644 (file)
index d5b5147..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-<!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 {};
-    </script>
-
-    <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>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing-expected.txt
deleted file mode 100644 (file)
index 6a4d8d2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section installing so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing.html
deleted file mode 100644 (file)
index 59e4f3d..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: installing</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-installing">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.installing` must return a [ServiceWorker][1] object
-representing the [installing worker][2] that is currently undergoing the
-installation process (from step 1 to step 7 of the [_Installation
-algorithm][3]) for the given [URL scope][4] in which the document may be
-[controlled][5] when the Service Worker becomes the [active worker][6].
-`navigator.serviceWorker.installing` returns `null` if no Service Worker
-[registration][7] is in the [installation process][8].
-
-[1]: #service-worker-interface
-[2]: #installing-worker
-[3]: #installation-algorithm
-[4]: #url-scope
-[5]: #document-control
-[6]: #active-worker
-[7]: #service-worker-registration-internal-interface
-[8]: #installation-process
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section installing so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange-expected.txt
deleted file mode 100644 (file)
index 18cbe63..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section oncontrollerchange so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange.html
deleted file mode 100644 (file)
index 4788601..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: oncontrollerchange</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-oncontrollerchange">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.oncontrollerchange` is the [event handler][1] that
-must be supported as attribute by the `[ServiceWorkerContainer][2]` object. A
-`controllerchange` event using the `[Event][3]` interface is dispatched on
-`[ServiceWorkerContainer][2]` object (See step 7 of the [_Activation
-algorithm][4]) when the associated Service Worker [registration][5] for the
-document enters the [activation process][6]. When the [activation process][6]
-is triggered by `replace()` method call within the event handler of the
-`install` event, `navigator.serviceWorker.controller` immediately reflects the
-[active worker][7] as the Service Worker that [controls][8] the document.
-
-[1]: http://goo.gl/rBfiz0
-[2]: #service-worker-container-interface
-[3]: http://goo.gl/Mzv7Dv
-[4]: #activation-algorithm
-[5]: #registration
-[6]: #activation-process
-[7]: #active-worker
-[8]: #document-control
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section oncontrollerchange so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage-expected.txt
deleted file mode 100644 (file)
index 6640e72..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section onreloadpage so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage.html
deleted file mode 100644 (file)
index e2207db..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: onreloadpage</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-onreloadpage">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.onreloadpage` is the [event handler][1] that must be
-supported as attribute by the `[ServiceWorkerContainer][2]` object. An event
-named `reloadpage` using the `[ReloadPageEvent][3]` interface is dispatched on
-`[ServiceWorkerContainer][2]` object when the page reload is triggered by the
-`[self.clients.reloadAll()][4]` method call from the [active worker][5],
-represented by its associated [ServiceWorkerGlobalScope][6] object, for the
-document.
-
-[1]: http://goo.gl/rBfiz0
-[2]: #service-worker-container-interface
-[3]: #reload-page-event-interface
-[4]: #reloadall-method
-[5]: #active-worker
-[6]: #service-worker-global-scope-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section onreloadpage so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror-expected.txt
deleted file mode 100644 (file)
index c74517d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section onerror so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror.html
deleted file mode 100644 (file)
index 313f0bd..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: onerror</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-onerror">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.onerror` is the [event handler][1] that must be
-supported as attribute by the `[ServiceWorkerContainer][2]` object. An event
-named `error` using the `[ErrorEvent][3]` interface is dispatched on
-`[ServiceWorkerContainer][2]` object for any error from the associated
-`[ServiceWorker][4]` objects.
-
-[1]: http://goo.gl/rBfiz0
-[2]: #service-worker-container-interface
-[3]: http://goo.gl/FKuWgu
-[4]: #service-worker-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section onerror so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting-expected.txt
deleted file mode 100644 (file)
index 45bce08..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section waiting so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting.html
deleted file mode 100644 (file)
index 663ce82..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: waiting</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-waiting">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.waiting` must return a [ServiceWorker][1] object
-representing the waiting Service Worker that is considered the [worker in
-waiting][2] for the document. `navigator.serviceWorker.waiting` returns `null`
-if there is no [worker in waiting][2] for the document.
-
-[1]: #service-worker-interface
-[2]: #worker-in-waiting
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section waiting so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active-expected.txt
deleted file mode 100644 (file)
index ebd1aba..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section active so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active.html
deleted file mode 100644 (file)
index f7406f5..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: active</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-active">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.active` must return a [ServiceWorker][1] object
-representing the [active worker][2] that is currently undergoing or completed
-the activation process (from step 4 to step 9 of the [_Activation
-algorithm][3]) for the given [URL scope][4] in which the document is controlled
-(or to be controlled). `navigator.serviceWorker.active` returns `null` if no
-Service Worker [registration][5] is in the [activation process][6].
-
-[1]: #service-worker-interface
-[2]: #active-worker
-[3]: #activation-algorithm
-[4]: #url-scope
-[5]: #service-worker-registration-internal-interface
-[6]: #activation-process
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section active so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller-expected.txt
deleted file mode 100644 (file)
index 970fbe9..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section controller so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller.html
deleted file mode 100644 (file)
index 1a26cce..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: controller</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-controller">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.controller` must return a [ServiceWorker][1] object
-representing the [active worker][2] that currently handles resource requests
-for the document. `navigator.serviceWorker.controller` returns `null` if the
-current document was not [created under a Service Worker][3] (See step 6-1 of
-[_OnFetchRequest][3] algorithm) or the request is a force refresh
-(shift+refresh).
-
-[1]: #service-worker-interface
-[2]: #active-worker
-[3]: #on-fetch-request-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section controller so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready-expected.txt
deleted file mode 100644 (file)
index 58f0b73..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section ready so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready.html
deleted file mode 100644 (file)
index 67a690d..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: ready</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-ready">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.ready` attribute must return the result of running
-these steps:
-
-1.  Let `promise` be a newly-created [promise][1].
-2.  Return `promise`.
-3.  Run the following steps asynchronously:
-    1.  Let `registration` be the result of running [_ScopeMatch
-        algorithm][2] with document's url as its argument.
-    2.  If `registration` is null, then:
-        1.  Wait for the document to have a matching [registration][3].
-    3.  If the [registration][3], represented by `registration`, for the
-        document has an [active worker][4], then:
-        1.  Resolve `promise` with the [ServiceWorker][5] object associated
-            with the [active worker][4].
-        2.  Abort these steps.
-    4.  If the [registration][3], represented by `registration`, for the
-        document has a [worker in waiting][6], then:
-        1.  Resolve `promise` with the [ServiceWorker][5] object associated
-            with the [worker in waiting][6].
-        2.  Abort these steps.
-    5.  Wait until the [registration][3], represented by `registration`,
-        for the document acquires a [worker in waiting][6] through a new
-        [installation process][7].
-    6.  Resolve `promise` with the [ServiceWorker][5] object associated
-        with the [worker in waiting][6].
-Note that `ready` attribute is desinged in a way that the returned [promise][1]
-will never reject. Instead, it waits until the [promise][1] resolves with a
-newly installed [worker in waiting][6]. Hence, the `state` of the acquired
-[`ServiceWorker`][8] object is either `installed`, `activating` or `activated`.
-
-
-
-[1]: http://goo.gl/3TobQS
-[2]: #scope-match-algorithm
-[3]: #registration
-[4]: #active-worker
-[5]: #service-worker-interface
-[6]: #worker-in-waiting
-[7]: #installation-process
-[8]: #service-worker
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section ready so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll-expected.txt
deleted file mode 100644 (file)
index 008c23e..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section getAll() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll.html
deleted file mode 100644 (file)
index 3c2afe9..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: getAll()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-getAll">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.getAll()` method must return a promise that resolves
-with the array of the ServiceWorker objects in `installing`, `installed`,
-`activating` and `activated` states.
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section getAll() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register-expected.txt
deleted file mode 100644 (file)
index 6ded38b..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section register() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register.html
deleted file mode 100644 (file)
index df469de..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: register()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-register">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.register(url, options)` method must run the
-[Registration algorithm][1] passing `url` and `options`.`scope` as the
-arguments.
-
-[1]: #registration-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section register() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister-expected.txt
deleted file mode 100644 (file)
index 581e5e6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section unregister() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister.html
deleted file mode 100644 (file)
index 6f1b43b..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: unregister()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-unregister">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.unregister(scope)` method must run the [Unregistration
-algorithm][1] passing `scope` as the argument.
-
-[1]: #unregistration-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section unregister() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound-expected.txt
deleted file mode 100644 (file)
index 1db9ccb..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section onupdatefound so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound.html
deleted file mode 100644 (file)
index 7babe7c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: onupdatefound</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#navigator-service-worker-onupdatefound">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`navigator.serviceWorker.onupdatefound` is the [event handler][1] that must be
-supported as attribute by the `[ServiceWorkerContainer][2]` object. An
-`updatefound` event using the `[Event][3]` interface is dispatched on
-`[ServiceWorkerContainer][2]` object (See step 4 of the [_Installation
-algorithm][4]) when the associated Service Worker [registration][5] for the
-document enters the [installation process][6] such that
-`navigator.serviceWorker.installing` becomes the new [installing worker][7].
-
-[1]: http://goo.gl/rBfiz0
-[2]: #service-worker-container-interface
-[3]: http://goo.gl/Mzv7Dv
-[4]: #installation-algorithm
-[5]: #registration
-[6]: #installation-process
-[7]: #installing-worker
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section onupdatefound so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope-expected.txt
deleted file mode 100644 (file)
index 03b06cd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-
-Harness Error (FAIL), message = TypeError: undefined is not an object (evaluating 'this.get_interface_object().prototype')
-
-FAIL ServiceWorkerGlobalScope interface: existence and properties of interface object assert_own_property: self does not have own property "ServiceWorkerGlobalScope" expected property "ServiceWorkerGlobalScope" missing
-FAIL ServiceWorkerGlobalScope interface object length assert_own_property: self does not have own property "ServiceWorkerGlobalScope" expected property "ServiceWorkerGlobalScope" missing
-FAIL ServiceWorkerGlobalScope interface object name assert_own_property: self does not have own property "ServiceWorkerGlobalScope" expected property "ServiceWorkerGlobalScope" missing
-FAIL ServiceWorkerGlobalScope interface: existence and properties of interface prototype object assert_own_property: self does not have own property "ServiceWorkerGlobalScope" expected property "ServiceWorkerGlobalScope" missing
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope.html
deleted file mode 100644 (file)
index c11feac..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: ServiceWorkerGlobalScope</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope">
-        <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">
-[Global]
-interface ServiceWorkerGlobalScope : WorkerGlobalScope {
-  readonly attribute CacheStorage caches;
-  // A container for a list of window objects, identifiable by ID, that
-  // correspond to windows (or workers) that are "controlled" by this SW
-  readonly attribute ServiceWorkerClients clients;
-  [Unforgeable] readonly attribute DOMString scope;
-
-  Promise<any> fetch((Request or ScalarValueString) request);
-
-  void update();
-  void unregister();
-
-  attribute EventHandler oninstall;
-  attribute EventHandler onactivate;
-  attribute EventHandler onfetch;
-  attribute EventHandler onbeforeevicted;
-  attribute EventHandler onevicted;
-
-  // The event.source of these MessageEvents are instances of Client
-  attribute EventHandler onmessage;
-
-  // close() method inherited from WorkerGlobalScope is not exposed.
-};
-</script>
-
-<!--
-The `ServiceWorkerGlobalScope` interface represents the global execution
-context of a Service Worker. `ServiceWorkerGlobalScope` object provides
-generic, event-driven, time-limited script execution contexts that run at an
-origin. Once successfully [registered][1], a Service Worker is started, kept
-alive and killed by their relationship to events, not documents. Any type of
-synchronous requests MUST NOT be initiated inside of a Service Worker.
-
-[1]: #navigator-service-worker-register
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface CacheStorage {};
-        interface ServiceWorkerClients {};
-        interface Request {};
-        interface ScalarValueString {};
-        interface EventHandler {};
-        interface WorkerGlobalScope {};
-    </script>
-
-    <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({
-            ServiceWorkerGlobalScope: ["throw new Error ('No object defined for the ServiceWorkerGlobalScope interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches-expected.txt
deleted file mode 100644 (file)
index 337bd35..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section caches so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches.html
deleted file mode 100644 (file)
index f1fce50..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: caches</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-caches">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`self.caches` must return the `[CacheStorage][1]` object that is the global
-asynchronous map object for the `[ServiceWorkerGlobalScope][2]` execution
-context containing the cache objects keyed by the name of the caches. Caches
-are always enumerable via `self.caches` in insertion order (per [ECMAScript 6
-Map objects][3].)
-
-[1]: #cache-storage-interface
-[2]: #service-worker-global-scope-interface
-[3]: http://goo.gl/gNnDPO
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section caches so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients-expected.txt
deleted file mode 100644 (file)
index f2660a2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section clients so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients.html
deleted file mode 100644 (file)
index cd5d283..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: clients</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-clients">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`self.clients` must return the `[ServiceWorkerClients][1]` object containing a
-list of client objects, identifiable by ID, that correspond to windows or
-workers that are [controlled][2] by this Service Worker.
-
-[1]: #service-worker-clients-interface
-[2]: #document-control
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section clients so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope-expected.txt
deleted file mode 100644 (file)
index 1101e19..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section scope so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope.html
deleted file mode 100644 (file)
index 7b6ce78..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: scope</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-scope">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The `scope` attribute of a [ServiceWorkerGlobalScope][1] object reflects the
-[URL scope][2] of the associated Service Worker [registration][3]. The `scope`
-attribute must return the [serialization][4] of the URL representing the [URL
-scope][2] of the associated Service Worker [registration][3].
-
-[1]: #service-worker-global-scope-interface
-[2]: #url-scope
-[3]: #registration
-[4]: http://url.spec.whatwg.org/#concept-url-serializer
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section scope so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch-expected.txt
deleted file mode 100644 (file)
index 04e8341..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section fetch(request) so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch.html
deleted file mode 100644 (file)
index 9834547..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: fetch(request)</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-fetch">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`self.fetch(request)` method must run these steps:
-
-1.  Let `request` be a [request][1] represented by `request`.
-2.  Set [`client`][2] of `request` to the [JavaScript global
-    environment][3] represented by `self` object.
-3.  Let `promise` be a newly-created [promise][4].
-4.  Return `promise.`
-5.  Run the following steps asynchronously:
-    1.  Let `response` be the result of running [fetch algorithm][5] with
-        `request` as its argument.
-    2.  If `response` is a [network error][6], then:
-        1.  Reject `promise` with a new [DOMException][7] whose name is
-            "[NetworkError][8]".
-    3.  Else,
-        1.  Resolve `promise` with a new [Response][9] object associated
-            with `response`.
-
-
-
-[1]: http://goo.gl/ucOuXl
-[2]: http://goo.gl/Oxj4xQ
-[3]: http://goo.gl/ifwwCC
-[4]: http://goo.gl/3TobQS
-[5]: http://goo.gl/fGMifs
-[6]: http://goo.gl/jprjjc
-[7]: http://goo.gl/A0U8qC
-[8]: http://goo.gl/lud5HB
-[9]: http://goo.gl/Deazjv
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section fetch(request) so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update-expected.txt
deleted file mode 100644 (file)
index 363963b..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section update() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update.html
deleted file mode 100644 (file)
index 26e255d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: update()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-update">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`update()` pings the server for an updated version of this script without
-consulting caches. `self.update()` method must run the [_SoftUpdate
-algorithm][1] passing its serviceWorkerRegistration object as the argument
-which is the result of running the [_GetRegistration algorithm][2] with
-`self.scope` as the argument. (This is conceptually the same operation that UA
-does maximum once per every 24 hours.)
-
-[1]: #soft-update-algorithm
-[2]: #get-registration-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section update() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister-expected.txt
deleted file mode 100644 (file)
index 581e5e6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section unregister() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister.html
deleted file mode 100644 (file)
index de1d64a..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: unregister()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-unregister">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`self.unregister()` method must run the [Unregistration algorithm][1]
-implicitly passing `self.scope` as the argument.
-
-[1]: #unregistration-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section unregister() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage-expected.txt
deleted file mode 100644 (file)
index da7648b..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section onmessage so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage.html
deleted file mode 100644 (file)
index b930439..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: onmessage</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-global-scope-onmessage">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`self.onmessage` is the [event handler][1] that must be supported as attribute
-by the `ServiceWorkerGlobalScope` object. `ServiceWorkerGlobalScope` objects
-act as if they had an implicit `[MessagePort][2]` associated with them. This
-port is part of a channel that is set up when the worker is created, but it is
-not exposed. This object must never be garbage collected before the
-`ServiceWorkerGlobalScope` object.
-
-All messages received by that port must immediately be retargeted at the
-`ServiceWorkerGlobalScope` object. That is, an event named `message` using the
-`[MessageEvent][3]` interface is dispatched on ServiceWorkerGlobalScope object.
-The `event.source` of these `[MessageEvent][3]`s are instances of `[Client][4]`.
-
-
-
-[1]: http://goo.gl/rBfiz0
-[2]: http://goo.gl/tHBrI6
-[3]: http://goo.gl/S5e0b6
-[4]: #client-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section onmessage so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client-expected.txt
deleted file mode 100644 (file)
index 9f74981..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-
-FAIL Client interface: existence and properties of interface object assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface object length assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface object name assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface: existence and properties of interface prototype object assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface: attribute id assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client interface: operation postMessage(any, DOMString, [object Object]) assert_own_property: self does not have own property "Client" expected property "Client" missing
-FAIL Client must be primary interface of throw new Error ('No object defined for the Client interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Client interface"
-FAIL Stringification of throw new Error ('No object defined for the Client interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Client interface"
-FAIL Client interface: throw new Error ('No object defined for the Client interface') must inherit property "id" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Client interface"
-FAIL Client interface: throw new Error ('No object defined for the Client interface') must inherit property "postMessage(any, DOMString, [object Object])" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Client interface"
-FAIL Client interface: calling postMessage(any, DOMString, [object Object]) on throw new Error ('No object defined for the Client interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Client interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client.html
deleted file mode 100644 (file)
index fda0e29..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Client</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#client">
-        <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()] // no-op constructor
-interface Client {
-  readonly attribute unsigned long id;
-  void postMessage(any message, DOMString targetOrigin,
-                   optional sequence<Transferable> transfer);
-};
-</script>
-
-<!--
-The `Client` interface represents the window or the worker (defined as client)
-that is [controlled][1] by the Service Worker. This object provides a no-op
-constructor. Callers should note that only `Client` objects created by the user
-agent (see [`this.clients.getServiced()`][2]) will provide meaningful
-functionality.
-
-The `id` of a `Client` identifies the specific client object from the list of
-client objects serviced by the Service Worker. The `postMessage(message,
-targetOrigin, transfer)` method of a `[Client][3]`, when called, causes a
-`[MessageEvent][4]` to be dispatched at the client object.
-
-
-
-[1]: #document-control
-[2]: #get-serviced-method
-[3]: #client-interface
-[4]: http://goo.gl/4SLWiH
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface Transferable {};
-    </script>
-
-    <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({
-            Client: ["throw new Error ('No object defined for the Client interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients-expected.txt
deleted file mode 100644 (file)
index 4c7f630..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-
-FAIL ServiceWorkerClients interface: existence and properties of interface object assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface object length assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface object name assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface: existence and properties of interface prototype object assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface: operation getServiced() assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients interface: operation reloadAll() assert_own_property: self does not have own property "ServiceWorkerClients" expected property "ServiceWorkerClients" missing
-FAIL ServiceWorkerClients must be primary interface of throw new Error ('No object defined for the ServiceWorkerClients interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerClients interface"
-FAIL Stringification of throw new Error ('No object defined for the ServiceWorkerClients interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerClients interface"
-FAIL ServiceWorkerClients interface: throw new Error ('No object defined for the ServiceWorkerClients interface') must inherit property "getServiced()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerClients interface"
-FAIL ServiceWorkerClients interface: throw new Error ('No object defined for the ServiceWorkerClients interface') must inherit property "reloadAll()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the ServiceWorkerClients interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients.html
deleted file mode 100644 (file)
index 475df19..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: ServiceWorkerClients</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#service-worker-clients">
-        <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">
-interface ServiceWorkerClients {
-  // A list of client objects, identifiable by ID, that correspond to windows
-  // (or workers) that are "controlled" by this SW
-  Promise<sequence<Client>?> getServiced();
-  Promise<any> reloadAll();
-};
-</script>
-
-<!--
-The `ServiceWorkerClients` interface represents a container for a list of
-`[Client][1]` objects.
-
-[1]: #client-interface
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface Client {};
-    </script>
-
-    <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({
-            ServiceWorkerClients: ["throw new Error ('No object defined for the ServiceWorkerClients interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method-expected.txt
deleted file mode 100644 (file)
index ffc41b0..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section getServiced() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method.html
deleted file mode 100644 (file)
index b3cd06f..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: getServiced()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#get-serviced-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The `getServiced()` method of a `ServiceWorkerClients`, when called, returns a
-[Promise][1] that will resolve with a list of `[Client][2]` objects that are
-[controlled][3] by this Service Worker.
-
-[1]: http://goo.gl/3TobQS
-[2]: #client-interface
-[3]: #document-control
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section getServiced() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method-expected.txt
deleted file mode 100644 (file)
index 9477d2c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section reloadAll() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method.html
deleted file mode 100644 (file)
index c5a9dd4..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: reloadAll()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#reloadall-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`reloadAll()` provides a mechanism for the worker to request synchronized
-re-fetch of all documents whose URLs match the registration's [URL scope][1].
-An event named `reloadpage` is dispatched on the `navigator.serviceWorker`
-object of each document. The in-document handlers may allow the event to
-continue, request an extension (via [`e.waitUntil()`][2]), or cancel the
-collective reload by calling [`e.preventDefault()`][3].
-
-[1]: #url-scope
-[2]: #wait-until-method
-[3]: http://goo.gl/2zH6ie
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section reloadAll() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects-expected.txt
deleted file mode 100644 (file)
index ced1425..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-FAIL Service Workers: Request Objects TypeError: null is not an object (evaluating 'document.getElementById("untested_idls").textContent')
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects.html
deleted file mode 100644 (file)
index 2f471f8..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Request Objects</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#request-objects">
-        <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(optional RequestInit init)]
-interface Request {
-  attribute unsigned long timeout;
-  attribute DOMString url;
-  attribute ByteString method;
-  readonly attribute DOMString origin;
-  readonly attribute Mode mode;
-  attribute boolean synchronous;
-  attribute boolean forcePreflight;
-  attribute boolean omitCredentials;
-  readonly attribute DOMString referrer;
-  readonly attribute HeaderMap headers; // alternative: sequence<Header> headers;
-  attribute any body;
-};
-
-dictionary RequestInit {
-  unsigned long timeout = 0;
-  DOMString url;
-  boolean synchronous = false;
-  boolean forcePreflight = false;
-  boolean omitCredentials = false;
-  ByteString method = "GET";
-  HeaderMap headers;
-  any body;
-};
-
-enum Mode {
-  "same origin",
-  "tainted cross-origin",
-  "CORS",
-  "CORS-with-forced-preflight"
-};
-
-[MapClass(DOMString, DOMString)]
-interface HeaderMap {
-};
-</script>
-
-
-
-
-    <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({
-            Request: ["throw new Error ('No object defined for the Request interface')"],
-            RequestInit: ["throw new Error ('No object defined for the RequestInit dictionary')"],
-            Mode: ["throw new Error ('No object defined for the Mode enum')"],
-            HeaderMap: ["throw new Error ('No object defined for the HeaderMap interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects-expected.txt
deleted file mode 100644 (file)
index 51db2c4..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-
-Harness Error (FAIL), message = Invalid object member name ResponseInit
-
-FAIL AbstractResponse interface: existence and properties of interface object assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse interface object length assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse interface object name assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse interface: existence and properties of interface prototype object assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-FAIL AbstractResponse must be primary interface of throw new Error ('No object defined for the AbstractResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the AbstractResponse interface"
-FAIL Stringification of throw new Error ('No object defined for the AbstractResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the AbstractResponse interface"
-FAIL OpaqueResponse interface: existence and properties of interface object assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface object length assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface object name assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: existence and properties of interface prototype object assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: attribute status assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: attribute statusText assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: attribute headers assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse interface: attribute url assert_own_property: self does not have own property "OpaqueResponse" expected property "OpaqueResponse" missing
-FAIL OpaqueResponse must be primary interface of throw new Error ('No object defined for the OpaqueResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL Stringification of throw new Error ('No object defined for the OpaqueResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL OpaqueResponse interface: throw new Error ('No object defined for the OpaqueResponse interface') must inherit property "status" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL OpaqueResponse interface: throw new Error ('No object defined for the OpaqueResponse interface') must inherit property "statusText" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL OpaqueResponse interface: throw new Error ('No object defined for the OpaqueResponse interface') must inherit property "headers" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL OpaqueResponse interface: throw new Error ('No object defined for the OpaqueResponse interface') must inherit property "url" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the OpaqueResponse interface"
-FAIL CORSResponse interface: existence and properties of interface object assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface object length assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface object name assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface: existence and properties of interface prototype object assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse interface: attribute headers assert_own_property: self does not have own property "CORSResponse" expected property "CORSResponse" missing
-FAIL CORSResponse must be primary interface of throw new Error ('No object defined for the CORSResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Stringification of throw new Error ('No object defined for the CORSResponse interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL CORSResponse interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "headers" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "status" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "statusText" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "headers" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "url" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: throw new Error ('No object defined for the CORSResponse interface') must inherit property "toBlob()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CORSResponse interface"
-FAIL Response interface: existence and properties of interface object assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-PASS Response interface object length 
-PASS Response interface object name 
-FAIL Response interface: existence and properties of interface prototype object assert_own_property: self does not have own property "AbstractResponse" expected property "AbstractResponse" missing
-PASS Response interface: existence and properties of interface prototype object's "constructor" property 
-PASS Response interface: existence and properties of interface prototype object's @@unscopables property 
-FAIL Response interface: attribute status assert_equals: setter must be function for PutForwards, Replaceable, or non-readonly attributes expected "function" but got "undefined"
-FAIL Response interface: attribute statusText assert_equals: setter must be function for PutForwards, Replaceable, or non-readonly attributes expected "function" but got "undefined"
-PASS Response interface: attribute headers 
-FAIL Response interface: attribute url assert_equals: setter must be function for PutForwards, Replaceable, or non-readonly attributes expected "function" but got "undefined"
-FAIL Response interface: operation toBlob() assert_own_property: interface prototype object missing non-static operation expected property "toBlob" missing
-FAIL Response must be primary interface of throw new Error ('No object defined for the Response interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Stringification of throw new Error ('No object defined for the Response interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Response interface: throw new Error ('No object defined for the Response interface') must inherit property "status" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Response interface: throw new Error ('No object defined for the Response interface') must inherit property "statusText" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Response interface: throw new Error ('No object defined for the Response interface') must inherit property "headers" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Response interface: throw new Error ('No object defined for the Response interface') must inherit property "url" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-FAIL Response interface: throw new Error ('No object defined for the Response interface') must inherit property "toBlob()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Response interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects.html
deleted file mode 100644 (file)
index 445982f..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Response Objects</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#response-objects">
-        <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>
-
-<!--
-`Response` objects model HTTP responses.
--->
-<script type=text/plain id="idl_0">
-[Constructor]
-interface AbstractResponse {
-};
-
-interface OpaqueResponse : AbstractResponse {
-  readonly attribute unsigned short status;
-  readonly attribute ByteString statusText;
-  // Returns a filtered list of headers. See prose for details.
-  readonly attribute HeaderMap headers;
-  // No setter for headers
-  readonly attribute DOMString url;
-};
-
-interface CORSResponse : Response {
-  readonly attribute HeaderMap headers;
-};
-
-[Constructor(optional ResponseInit responseInitDict)]
-interface Response : AbstractResponse {
-  attribute unsigned short status;
-  attribute ByteString statusText;
-  readonly attribute HeaderMap headers;
-  attribute DOMString url;
-  Promise<Blob> toBlob();
-};
-
-dictionary ResponseInit {
-  unsigned short status = 200;
-  ByteString statusText = "OK";
-  HeaderMap headers;
-};
-</script>
-
-
-
-    <script type=text/plain id="untested_idls">
-        interface HeaderMap {};
-        interface Blob {};
-    </script>
-
-    <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({
-            AbstractResponse: ["throw new Error ('No object defined for the AbstractResponse interface')"],
-            OpaqueResponse: ["throw new Error ('No object defined for the OpaqueResponse interface')"],
-            CORSResponse: ["throw new Error ('No object defined for the CORSResponse interface')"],
-            Response: ["throw new Error ('No object defined for the Response interface')"],
-            ResponseInit: ["throw new Error ('No object defined for the ResponseInit dictionary')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response-expected.txt
deleted file mode 100644 (file)
index 832c7e3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section Response so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response.html
deleted file mode 100644 (file)
index fbc72f3..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Response</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#response">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`Response` objects are mutable and constructable. They model HTTP responses.
-The `fetch()` API returns this type for same-origin responses.
-
-It may be possible to set the `Location` header of a `Response` object to
-someplace not in the current origin but this is not a security issue.
-Cross-origin response bodies are opaque to script, and since only same-origin
-documents will encounter these responses, the only systems the Service Worker
-can "lie to" are same-origin (and therefore safe from the perspective of other
-origins).
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section Response so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response-expected.txt
deleted file mode 100644 (file)
index 5fabdd7..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section OpaqueResponse so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response.html
deleted file mode 100644 (file)
index a91306f..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: OpaqueResponse</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#opaque-response">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`OpaqueResponse` objects are immutable but constructable. The `fetch()` API
-returns this type for cross-origin responses.
-
-Their role is to encapsulate the security properties of the web platform. As
-such, their `body` attribute will always be `undefined` and the list of
-readable `headers` is heavily filtered.
-
-`OpaqueResponse` objects may be forwarded on to rendering documents in exactly
-the same way as mutable `Response` objects.
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section OpaqueResponse so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects-expected.txt
deleted file mode 100644 (file)
index ab9a505..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section Caches so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects.html
deleted file mode 100644 (file)
index befd67c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Caches</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-objects">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-To allow authors to fully manage their content caches for offline use, the
-`[ServiceWorkerGlobalScope][1]` execution context provides the caching methods
-largely conforming to [ECMAScript 6 Map objects][2] with additional convenience
-methods. A domain can have multiple, named `[Cache][3]` objects, whose contents
-are entirely under the control of scripts. Caches are not shared across
-domains, and they are completely isolated from the browser's HTTP cache.
-
-[1]: #service-worker-global-scope-interface
-[2]: http://goo.gl/gNnDPO
-[3]: #cache-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section Caches so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes-expected.txt
deleted file mode 100644 (file)
index aa13b40..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section Understanding Cache Lifetimes so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes.html
deleted file mode 100644 (file)
index f6c9ecb..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Understanding Cache Lifetimes</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-lifetimes">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-The `[Cache][1]` instances are not part of the browser's HTTP cache. The
-`[Cache][1]` objects are exactly what authors have to manage themselves. The
-`[Cache][1]` objects do not get updated unless authors explicitly request them
-to be. The `[Cache][1]` objects do not expire unless authors delete the
-entries. The `[Cache][1]` objects do not disappear just because the Service
-Worker script is updated. That is, caches are not updated automatically.
-Updates must be manually managed. This implies that authors should version
-their caches by name and make sure to use the caches only from the version of
-the ServiceWorker that can safely operate on.
-
-[1]: #cache-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section Understanding Cache Lifetimes so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache-expected.txt
deleted file mode 100644 (file)
index a61649b..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-
-PASS Cache interface: existence and properties of interface object 
-PASS Cache interface object length 
-PASS Cache interface object name 
-PASS Cache interface: existence and properties of interface prototype object 
-PASS Cache interface: existence and properties of interface prototype object's "constructor" property 
-PASS Cache interface: existence and properties of interface prototype object's @@unscopables property 
-PASS Cache interface: operation match(RequestInfo, CacheQueryOptions) 
-PASS Cache interface: operation matchAll(RequestInfo, CacheQueryOptions) 
-PASS Cache interface: operation add(RequestInfo) 
-PASS Cache interface: operation addAll([object Object]) 
-PASS Cache interface: operation put(RequestInfo, Response) 
-PASS Cache interface: operation delete(RequestInfo, CacheQueryOptions) 
-PASS Cache interface: operation keys(RequestInfo, CacheQueryOptions) 
-FAIL Cache must be primary interface of throw new Error ('No object defined for the Cache interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Stringification of throw new Error ('No object defined for the Cache interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "match(RequestInfo, CacheQueryOptions)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling match(RequestInfo, CacheQueryOptions) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "matchAll(RequestInfo, CacheQueryOptions)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling matchAll(RequestInfo, CacheQueryOptions) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "add(RequestInfo)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling add(RequestInfo) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "addAll([object Object])" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling addAll([object Object]) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "put(RequestInfo, Response)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling put(RequestInfo, Response) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "delete(RequestInfo, CacheQueryOptions)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling delete(RequestInfo, CacheQueryOptions) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: throw new Error ('No object defined for the Cache interface') must inherit property "keys(RequestInfo, CacheQueryOptions)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-FAIL Cache interface: calling keys(RequestInfo, CacheQueryOptions) on throw new Error ('No object defined for the Cache interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the Cache interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache.html
deleted file mode 100644 (file)
index 9270481..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Cache</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cache">
-        <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">
-[Exposed=(Window,Worker)]
-interface Cache {
-  Promise<Response> match(RequestInfo request, optional CacheQueryOptions options);
-  Promise<sequence<Response>> matchAll(optional RequestInfo request, optional CacheQueryOptions options);
-  Promise<void> add(RequestInfo request);
-  Promise<void> addAll(sequence<RequestInfo> requests);
-  Promise<void> put(RequestInfo request, Response response);
-  Promise<boolean> delete(RequestInfo request, optional CacheQueryOptions options);
-  Promise<sequence<Request>> keys(optional RequestInfo request, optional CacheQueryOptions options);
-};
-
-dictionary CacheQueryOptions {
-  boolean ignoreSearch = false;
-  boolean ignoreMethod = false;
-  boolean ignoreVary = false;
-  DOMString cacheName;
-};
-
-dictionary CacheBatchOperation {
-  DOMString type;
-  Request request;
-  Response response;
-  CacheQueryOptions options;
-};
-</script>
-
-
-
-    <script type=text/plain id="untested_idls">
-        interface AbstractResponse {};
-        interface Request {};
-        interface ScalarValueString {};
-    </script>
-
-    <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({
-            Cache: ["throw new Error ('No object defined for the Cache interface')"],
-            QueryParams: ["throw new Error ('No object defined for the QueryParams dictionary')"],
-            CacheIterationCallback: ["throw new Error ('No object defined for the CacheIterationCallback callback')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage-expected.txt
deleted file mode 100644 (file)
index 9f23b8e..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-
-Harness Error (FAIL), message = Invalid object member name CacheStorageIterationCallback
-
-PASS CacheStorage interface: existence and properties of interface object 
-FAIL CacheStorage interface object length assert_equals: wrong value for CacheStorage.length expected 1 but got 0
-PASS CacheStorage interface object name 
-PASS CacheStorage interface: existence and properties of interface prototype object 
-PASS CacheStorage interface: existence and properties of interface prototype object's "constructor" property 
-PASS CacheStorage interface: existence and properties of interface prototype object's @@unscopables property 
-PASS CacheStorage interface: operation match(ScalarValueString, DOMString) 
-FAIL CacheStorage interface: operation get(DOMString) assert_own_property: interface prototype object missing non-static operation expected property "get" missing
-PASS CacheStorage interface: operation has(DOMString) 
-FAIL CacheStorage interface: operation set(DOMString, Cache) assert_own_property: interface prototype object missing non-static operation expected property "set" missing
-FAIL CacheStorage interface: operation clear() assert_own_property: interface prototype object missing non-static operation expected property "clear" missing
-PASS CacheStorage interface: operation delete(DOMString) 
-FAIL CacheStorage interface: operation forEach(CacheStorageIterationCallback, object) assert_own_property: interface prototype object missing non-static operation expected property "forEach" missing
-FAIL CacheStorage interface: operation entries() assert_own_property: interface prototype object missing non-static operation expected property "entries" missing
-PASS CacheStorage interface: operation keys() 
-FAIL CacheStorage interface: operation values() assert_own_property: interface prototype object missing non-static operation expected property "values" missing
-FAIL CacheStorage interface: operation size() assert_own_property: interface prototype object missing non-static operation expected property "size" missing
-FAIL CacheStorage must be primary interface of throw new Error ('No object defined for the CacheStorage interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL Stringification of throw new Error ('No object defined for the CacheStorage interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "match(ScalarValueString, DOMString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling match(ScalarValueString, DOMString) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "get(DOMString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling get(DOMString) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "has(DOMString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling has(DOMString) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "set(DOMString, Cache)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling set(DOMString, Cache) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "clear()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "delete(DOMString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling delete(DOMString) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "forEach(CacheStorageIterationCallback, object)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: calling forEach(CacheStorageIterationCallback, object) on throw new Error ('No object defined for the CacheStorage interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "entries()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "keys()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "values()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-FAIL CacheStorage interface: throw new Error ('No object defined for the CacheStorage interface') must inherit property "size()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the CacheStorage interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage.html
deleted file mode 100644 (file)
index 29666d8..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: CacheStorage</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-storage">
-        <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(sequence<any> iterable)]
-interface CacheStorage {
-  Promise<any> match(ScalarValueString url, optional DOMString cacheName);
-  Promise<Cache> get(DOMString key);
-  Promise<boolean> has(DOMString key);
-  Promise<any> set(DOMString key, Cache val);
-  Promise<any> clear();
-  Promise<any> delete(DOMString key);
-  void forEach(CacheStorageIterationCallback callback, optional object thisArg);
-  Promise<sequence<any>> entries();
-  Promise<sequence<DOMString>> keys();
-  Promise<sequence<Cache>> values();
-  Promise<unsigned long> size();
-};
-
-callback CacheStorageIterationCallback = void (Cache value, DOMString key, CacheStorage map);
-</script>
-
-<!--
-**Note**:[CacheStorage][1]interface is designed to largely conform
-to[ECMAScript 6 Map objects][2]but entirely async, and with additional
-convenience methods.
-
-[1]: #cache-storage-interface
-[2]: http://goo.gl/gNnDPO
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface ScalarValueString {};
-        interface Cache {};
-    </script>
-
-    <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({
-            CacheStorage: ["throw new Error ('No object defined for the CacheStorage interface')"],
-            CacheStorageIterationCallback: ["throw new Error ('No object defined for the CacheStorageIterationCallback callback')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event-expected.txt
deleted file mode 100644 (file)
index ee457c4..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-
-FAIL InstallPhaseEvent interface: existence and properties of interface object assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface object length assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface object name assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent interface: operation waitUntil([object Object]) assert_own_property: self does not have own property "InstallPhaseEvent" expected property "InstallPhaseEvent" missing
-FAIL InstallPhaseEvent must be primary interface of throw new Error ('No object defined for the InstallPhaseEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallPhaseEvent interface"
-FAIL Stringification of throw new Error ('No object defined for the InstallPhaseEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallPhaseEvent interface"
-FAIL InstallPhaseEvent interface: throw new Error ('No object defined for the InstallPhaseEvent interface') must inherit property "waitUntil([object Object])" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallPhaseEvent interface"
-FAIL InstallPhaseEvent interface: calling waitUntil([object Object]) on throw new Error ('No object defined for the InstallPhaseEvent interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallPhaseEvent interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event.html
deleted file mode 100644 (file)
index 8b7ab81..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: InstallPhaseEvent</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#install-phase-event">
-        <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">
-interface InstallPhaseEvent : Event {
-  Promise<any> waitUntil(Promise<any> f);
-};
-</script>
-
-<!--
-Service Workers have two [Lifecycle events][1], `[install][2]` and
-`[activate][3]`. Service Workers use the `[InstallPhaseEvent][4]` interface for
-`[activate][3]` event and the `[InstallEvent][5]` interface, which inherits
-from the `[InstallPhaseEvent][4]` interface, for `[install][2]` event.
-
-[1]: #lifecycle-events
-[2]: #install-event
-[3]: #activate-event
-[4]: #install-phase-event-interface
-[5]: #install-event-interface
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface Event {};
-    </script>
-
-    <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({
-            InstallPhaseEvent: ["throw new Error ('No object defined for the InstallPhaseEvent interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method-expected.txt
deleted file mode 100644 (file)
index 6857b57..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section event.waitUntil(f) so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method.html
deleted file mode 100644 (file)
index 318318b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: event.waitUntil(f)</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#wait-until-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`event.waitUntil(f)` method, when called in `oninstall` or `onactivate`,
-extends the lifetime of the event. When called in `oninstall`, it delays
-treating the installing worker until the passed [Promise][1] resolves
-successfully. This is primarily used to ensure that a `ServiceWorker` is not
-active until all of the core caches it depends on are populated. When called in
-`onactivate`, it delays treating the activating worker until the passed
-[Promise][1] resolves successfully. This is primarily used to ensure that any
-[Functional events][2] are not dispatched to the `ServiceWorker` until it
-upgrades database schemas and deletes the outdated cache entries.
-
-[1]: http://goo.gl/3TobQS
-[2]: #functional-events
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section event.waitUntil(f) so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event-expected.txt
deleted file mode 100644 (file)
index e176016..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section install Event so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event.html
deleted file mode 100644 (file)
index 77702ed..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: install Event</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#install-event">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-An event named `[install][1]` using the `[InstallEvent][2]` interface is
-dispatched on `ServiceWorkerGlobalScope` object when the state of the
-associated `ServiceWorker` changes its value to `installing`. (See step 3 of
-[_Installation algorithm][3])
-
-[1]: #install-event
-[2]: #install-event-interface
-[3]: #installation-algorithm
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section install Event so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section-expected.txt
deleted file mode 100644 (file)
index 49afc68..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-
-FAIL InstallEvent interface: existence and properties of interface object assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface object length assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface object name assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface: attribute activeWorker assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent interface: operation replace() assert_own_property: self does not have own property "InstallEvent" expected property "InstallEvent" missing
-FAIL InstallEvent must be primary interface of throw new Error ('No object defined for the InstallEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallEvent interface"
-FAIL Stringification of throw new Error ('No object defined for the InstallEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallEvent interface"
-FAIL InstallEvent interface: throw new Error ('No object defined for the InstallEvent interface') must inherit property "activeWorker" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallEvent interface"
-FAIL InstallEvent interface: throw new Error ('No object defined for the InstallEvent interface') must inherit property "replace()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the InstallEvent interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section.html
deleted file mode 100644 (file)
index d9b47e1..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: InstallEvent</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#install-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">
-interface InstallEvent : InstallPhaseEvent {
-  readonly attribute ServiceWorker? activeWorker;
-  void replace();
-};
-</script>
-
-<!--
-Service Workers use the `[InstallEvent][1]` interface for `[install][2]` event.
-
-[1]: #install-event-interface
-[2]: #install-event
--->
-
-
-    <script type=text/plain id="untested_idls">
-        interface ServiceWorker {};
-        interface InstallPhaseEvent {};
-    </script>
-
-    <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({
-            InstallEvent: ["throw new Error ('No object defined for the InstallEvent interface')"]
-        });
-        idl_array.test();
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method-expected.txt
deleted file mode 100644 (file)
index 70e56dd..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section event.replace() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method.html
deleted file mode 100644 (file)
index 6981d30..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: event.replace()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#replace-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`replace()` interacts with `waitUntil` method in the following way:
-
--   Successful installation can be delayed by `waitUntil`, perhaps by
-    subsequent event handlers.
--   Replacement only happens upon successful installation
--   Therefore, replacement of the [active worker][1] (if any) is not
-    immediate, however it may occur as soon as the end of the current turn.
-
-
-
-[1]: #navigator-service-worker-active
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section event.replace() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event-expected.txt
deleted file mode 100644 (file)
index 3bf3f0d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section activate Event so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event.html
deleted file mode 100644 (file)
index 2a0162e..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: activate Event</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#activate-event">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-An event named `[activate][1]` using the `[InstallPhaseEvent][2]` interface is
-dispatched on `ServiceWorkerGlobalScope` object when the state of the
-associated `ServiceWorker` changes its value to `activating`. (See step 6 of
-[_Activation algorithm][3])
-
-Service Workers use the `[InstallPhaseEvent][4]` interface for `[activate][1]`
-event.
-
-
-
-[1]: #activate-event
-[2]: #install-phase-event
-[3]: #activation-algorithm
-[4]: #install-phase-event-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section activate Event so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section-expected.txt
deleted file mode 100644 (file)
index 011880f..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-
-Harness Error (FAIL), message = Invalid object member name Context
-
-FAIL FetchEvent interface: existence and properties of interface object assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface object length assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface object name assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: existence and properties of interface prototype object assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: existence and properties of interface prototype object's @@unscopables property assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: attribute request assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: attribute client assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: attribute context assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: attribute isReload assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: operation respondWith([object Object]) assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: operation forwardTo(ScalarValueString) assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent interface: operation default() assert_own_property: self does not have own property "FetchEvent" expected property "FetchEvent" missing
-FAIL FetchEvent must be primary interface of throw new Error ('No object defined for the FetchEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL Stringification of throw new Error ('No object defined for the FetchEvent interface') assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "request" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "client" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "context" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "isReload" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "respondWith([object Object])" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: calling respondWith([object Object]) on throw new Error ('No object defined for the FetchEvent interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "forwardTo(ScalarValueString)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: calling forwardTo(ScalarValueString) on throw new Error ('No object defined for the FetchEvent interface') with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-FAIL FetchEvent interface: throw new Error ('No object defined for the FetchEvent interface') must inherit property "default()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "Error: No object defined for the FetchEvent interface"
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section.html
deleted file mode 100644 (file)
index ace7196..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: FetchEvent</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#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"
-};
-</script>
-
-<!--
-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 {};
-    </script>
-
-    <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>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method-expected.txt
deleted file mode 100644 (file)
index 9f460c6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section event.respondWith(r) so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method.html
deleted file mode 100644 (file)
index 416b8ef..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: event.respondWith(r)</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#respond-with-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`event.respondWith(r)` method must run the steps, from step 10 to step 15,
-defined in the [_OnFetchRequest algorithm][1].
-
-The `r` argument must resolve with a [AbstractResponse][2], else a
-[NetworkError][3] is thrown. If the request is a top-level navigation and the
-return value is a [OpaqueResponse][4] (an opaque response body), a
-[NetworkError][3] is thrown. The final URL of all successful (non
-network-error) responses is the [requested][5] URL. Renderer-side security
-checks about tainting for cross-origin content are tied to the transparency (or
-opacity) of the [Response][6] body, not URLs.
-
-
-
-[1]: #on-fetch-request-algorithm
-[2]: #abstract-response-interface
-[3]: http://w3c.github.io/dom/#networkerror
-[4]: #opaque-response-interface
-[5]: #request-objects
-[6]: #response-interface
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section event.respondWith(r) so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method-expected.txt
deleted file mode 100644 (file)
index 1c7728f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section event.default() so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method.html
deleted file mode 100644 (file)
index deff7ac..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: event.default()</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#default-method">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-`event.default()` method must run these steps:
-
-1.  Let `promise` be a newly-created [promise][1].
-2.  Return `promise.`
-3.  Run the following steps asynchronously:
-    1.  Let `request` be `event`'s `request`.
-    2.  Set `request`'s [skip service worker flag][2].
-    3.  Let `response` be the result of running [fetch algorithm][3] with
-        `request` as its argument.
-    4.  If `response` is a [network error][4], then:
-        1.  Reject `promise` with a new [DOMException][5] whose name is
-            "[NetworkError][6]".
-    5.  Else,
-        1.  Resolve `promise` with a new [Response][7] object associated
-            with `response`.
-
-
-
-[1]: http://goo.gl/3TobQS
-[2]: http://goo.gl/gP7IWW
-[3]: http://goo.gl/fGMifs
-[4]: http://goo.gl/jprjjc
-[5]: http://goo.gl/A0U8qC
-[6]: http://goo.gl/lud5HB
-[7]: http://goo.gl/Deazjv
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section event.default() so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute-expected.txt
deleted file mode 100644 (file)
index f43f970..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section event.isReload so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute.html
deleted file mode 100644 (file)
index fffe5d5..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: event.isReload</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#is-reload-attribute">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-Returns true if `event` was dispatched with the user's intention for the page
-reload, and false otherwise. Pressing the refresh button should be considered a
-reload while clicking a link and pressing the back button should not. The
-behavior of the `Ctrl+l enter` is left to the implementations of the user
-agents.
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section event.isReload so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity-expected.txt
deleted file mode 100644 (file)
index 5d6e1df..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section Origin Relativity so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity.html
deleted file mode 100644 (file)
index 469ce29..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Origin Relativity</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#origin-relativity">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-One of the advanced concerns that major applications would encounter is whether
-they can be hosted from a CDN. By definition, these are servers in other
-places, often on other domains. Therefore, Service Workers cannot be hosted on
-CDNs. But they can include resources via [importScripts()][1]. The reason for
-this restriction is that Service Workers create the opportunity for a bad actor
-to turn a bad day into a bad eternity.
-
-[1]: http://goo.gl/Owcfs2
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section Origin Relativity so far.");
-    </script>
-
-    </body>
-</html>
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources-expected.txt
deleted file mode 100644 (file)
index 1ac71d5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-PASS There are no tests for section Cross-Origin Resources &amp; CORS so far. 
-
diff --git a/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources.html b/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources.html
deleted file mode 100644 (file)
index 42c685b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html>
-<html>
-<title>Service Workers: Cross-Origin Resources &amp; CORS</title>
-    <head>
-        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cross-origin-resources">
-        <script src="/resources/testharness.js"></script>
-        <script src="/resources/testharnessreport.js"></script>
-
-    </head>
-    <body>
-
-<!--
-
-Applications tend to cache items that come from a CDN or other domain. It is
-possible to request many of them directly using <script>, <img>, <video> and
-<link> elements. It would be hugely limiting if this sort of runtime
-collaboration broke when offline. Similarly, it is possible to XHR many sorts
-of off-domain resources when appropriate CORS headers are set.
-
-ServiceWorkers enable this by allowing `Cache`s to fetch and cache off-origin
-items. Some restrictions apply, however. First, unlike same-origin resources
-which are managed in the `Cache` as `[Promise][1]`s for `Response` instances,
-the objects stored are `[Promise][1]`s for `OpaqueResponse` instances.
-`OpaqueResponse` provides a much less expressive API than `Response`; the
-bodies and headers cannot be read or set, nor many of the other aspects of
-their content inspected. They can be passed to `respondWith()` and
-`forwardTo()` in the same manner as `Response`s, but cannot be meaningfully
-created programmatically. These limitations are necessary to preserve the
-security invariants of the platform. Allowing `Cache`s to store them allows
-applications to avoid re-architecting in most cases.
-
-
-
-[1]: http://goo.gl/3TobQS
-
--->
-
-
-
-    <script>
-        test(function() {
-            // not_implemented();
-        }, "There are no tests for section Cross-Origin Resources &amp; CORS so far.");
-    </script>
-
-    </body>
-</html>
-
index 4c06bb3..509dbd6 100644 (file)
@@ -15,54 +15,3 @@ None
 ------------------------------------------------------------------------
 List of files:
 /LayoutTests/imported/w3c/web-platform-tests/service-workers/META.yml
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/specgen.json
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1-service-worker-obj.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.1-service-worker-scope.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.2-service-worker-url.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.3-service-worker-state.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2-navigator-service-worker.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1-service-worker-global-scope.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.2-client.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3-service-worker-clients.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.1-get-serviced-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.3.2-reloadall-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.4-request-objects.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5-response-objects.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.2-response.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.5.4-opaque-response.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6-cache-objects.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.2-cache.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.6.3-cache-storage.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1-install-phase-event.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2-install-event.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.1-install-event-section.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.2.2-replace-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.3-activate-event.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.3-default-method.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.1-origin-relativity.html
-/LayoutTests/imported/w3c/web-platform-tests/service-workers/stub-5.2-cross-origin-resources.html
index d6826d2..472150d 100644 (file)
     "imported/w3c/web-platform-tests/service-workers/service-worker/navigation-redirect.https.html": [
         "slow"
     ],
+    "imported/w3c/web-platform-tests/service-workers/service-worker/referrer-toplevel-script-fetch.https.html": [
+        "slow"
+    ],
     "imported/w3c/web-platform-tests/service-workers/service-worker/register-closed-window.https.html": [
         "slow"
     ],