summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/background-sync
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/background-sync
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/background-sync')
-rw-r--r--testing/web-platform/tests/background-sync/META.yml3
-rw-r--r--testing/web-platform/tests/background-sync/idlharness.https.any.js23
-rw-r--r--testing/web-platform/tests/background-sync/service_workers/sw.js16
3 files changed, 42 insertions, 0 deletions
diff --git a/testing/web-platform/tests/background-sync/META.yml b/testing/web-platform/tests/background-sync/META.yml
new file mode 100644
index 0000000000..9569c076aa
--- /dev/null
+++ b/testing/web-platform/tests/background-sync/META.yml
@@ -0,0 +1,3 @@
+spec: https://wicg.github.io/background-sync/spec/
+suggested_reviewers:
+ - beverloo
diff --git a/testing/web-platform/tests/background-sync/idlharness.https.any.js b/testing/web-platform/tests/background-sync/idlharness.https.any.js
new file mode 100644
index 0000000000..29fb87b826
--- /dev/null
+++ b/testing/web-platform/tests/background-sync/idlharness.https.any.js
@@ -0,0 +1,23 @@
+// META: script=/resources/WebIDLParser.js
+// META: script=/resources/idlharness.js
+// META: timeout=long
+
+'use strict';
+
+// https://wicg.github.io/background-sync/spec/
+
+idl_test(
+ ['background-sync'],
+ ['service-workers', 'html', 'dom'],
+ idlArray => {
+ const isServiceWorker = location.pathname.includes('.serviceworker.');
+ if (isServiceWorker) {
+ idlArray.add_objects({
+ ServiceWorkerGlobalScope: ['self', 'onsync'],
+ ServiceWorkerRegistration: ['registration'],
+ SyncManager: ['registration.sync'],
+ SyncEvent: ['new SyncEvent("tag", "lastChance")'],
+ });
+ }
+}
+);
diff --git a/testing/web-platform/tests/background-sync/service_workers/sw.js b/testing/web-platform/tests/background-sync/service_workers/sw.js
new file mode 100644
index 0000000000..c8515ba496
--- /dev/null
+++ b/testing/web-platform/tests/background-sync/service_workers/sw.js
@@ -0,0 +1,16 @@
+// The source to post setup and completion results to.
+let source = null;
+
+function sendMessageToDocument(msg) {
+ source.postMessage(msg);
+}
+
+// Notify the document that the SW is registered and ready.
+self.addEventListener('message', event => {
+ source = event.source;
+ sendMessageToDocument('ready');
+});
+
+self.addEventListener('sync', event => {
+ sendMessageToDocument('sync event received!');
+});