36 lines
1.3 KiB
JavaScript
36 lines
1.3 KiB
JavaScript
// 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');
|