<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="resources/testharness-helpers.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/test-helpers.sub.js"></script>
<script>
function wait_for_install_event(worker) {
return new Promise(function(resolve) {
worker.addEventListener('statechange', function(event) {
if (worker.state == 'installed')
resolve(true);
else if (worker.state == 'redundant')
resolve(false);
});
});
}
promise_test(function(t) {
var script = 'resources/install-event-type-worker.js';
var scope = 'resources/install-event-type';
return service_worker_unregister_and_register(t, script, scope)
.then(function(registration) {
return wait_for_install_event(registration.installing);
})
.then(function(did_install) {
assert_true(did_install, 'The worker was installed');
})
}, 'install event type');
</script>