Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

// META: script=/common/get-host-info.sub.js
// META: script=/service-workers/service-worker/resources/test-helpers.sub.js
'use strict'
promise_test(async test => {
const script = 'service_workers/sw.js';
const scope = 'service_workers' + location.pathname;
const serviceWorkerRegistration =
await service_worker_unregister_and_register(test, script, scope);
assert_equals(
serviceWorkerRegistration.active, null,
'There must not be an activated worker');
await promise_rejects_dom(
test, 'InvalidStateError',
serviceWorkerRegistration.periodicSync.register(
'test_tag'),
'register() must reject on pending and installing workers');
}, 'Periodic Background Sync requires an activated Service Worker');
promise_test(async test => {
const script = 'service_workers/sw.js';
const scope = 'service_workers' + location.pathname;
const serviceWorkerRegistration =
await service_worker_unregister_and_register(test, script, scope);
assert_equals(
serviceWorkerRegistration.active, null,
'There must not be an activated worker');
await serviceWorkerRegistration.periodicSync.unregister('test_tag');
}, 'Periodic Background Sync unregister silently succeeds when Service Worker is unactivated');