blob: fcb8f6d83c7e0e4b3a0b97ed29ca5add248d091e [file] [log] [blame]
<!DOCTYPE html>
<script src="test-helpers.sub.js"></script>
<script>
window.addEventListener('message', event => {
navigator.serviceWorker.getRegistration(event.data.options.scope)
.then(r => {
if (r) return r.unregister();
})
.then(() => navigator.serviceWorker.register(event.data.worker,
event.data.options))
.then(r => new Promise(resolve => {
window.addEventListener('unload', () => r.unregister());
var worker = r.installing;
worker.addEventListener('statechange', () => {
if (worker.state === 'activated') resolve();
});
}))
.then(() => event.source.postMessage('success', '*'))
.catch((e) => event.source.postMessage('failure:' + e, '*'));
});
</script>