blob: 4d2896356b994b3c50d53dc4e59ff18338da5eeb [file] [log] [blame]
<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
async_test(function(t) {
var script = 'no-such-worker';
navigator.serviceWorker.register(script, { scope: script })
.then(function() {
assert_unreached('register() should fail');
}, function(e) {
assert_throws(
'SecurityError', function() { throw e; },
'register() on local file should fail');
assert_equals(
e.message,
'Failed to register a ServiceWorker: The URL protocol of the ' +
'current origin (\'file://\') is not supported.',
'register() should fail due to unsupported URL protocol');
t.done();
})
.catch(t.step_func(function(e) {
assert_unreached(e);
t.done();
}));
}, 'Calling register() on local file');
async_test(function(t) {
navigator.serviceWorker.getRegistration()
.then(function() {
assert_unreached('getRegistration() should fail')
}, function(e) {
assert_throws(
'SecurityError', function() { throw e; },
'getRegistration() on local file should fail');
assert_equals(
e.message,
'Failed to get a ServiceWorkerRegistration: The URL protocol of ' +
'the current origin (\'file://\') is not supported.',
'getRegistration() should fail due to unsupported URL protocol');
t.done();
})
.catch(t.step_func(function(e) {
assert_unreached(e);
t.done();
}));
}, 'Calling getRegistration() on local file');
</script>