blob: 84065ad999077710e2e08f258a1c3854c1f81ce2 [file] [log] [blame]
<!DOCTYPE html>
<title>Tests that all geofencing methods exposed on a service worker registration always reject if no geofencing service is available.</title>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script src="../serviceworker/resources/test-helpers.js"></script>
<script>
var sw_url = 'resources/emptyworker.js';
var sw_scope = 'resources/service-worker-scope' + window.location.pathname;
testRunner.setGeofencingMockProvider(false);
promise_test(function(test) {
return promise_rejects(
test,
'AbortError',
service_worker_unregister_and_register(test, sw_url, sw_scope + '/register')
.then(function(r) {
return r.geofencing.registerRegion(
new CircularGeofencingRegion({latitude: 37.421999,
longitude: -122.084015}));
}),
'registerRegion should fail with an AbortError');
}, 'registerRegion should fail');
promise_test(function(test) {
return promise_rejects(
test,
'AbortError',
service_worker_unregister_and_register(test, sw_url, sw_scope + '/unregister')
.then(function(r) {
return r.geofencing.unregisterRegion('');
}),
'unregisterRegion should fail with an AbortError');
}, 'unregisterRegion should fail');
promise_test(function(test) {
return promise_rejects(
test,
'AbortError',
service_worker_unregister_and_register(test, sw_url, sw_scope + '/getregions')
.then(function(r) {
return r.geofencing.getRegisteredRegions();
}),
'getRegisteredRegions should fail with an AbortError');
}, 'getRegisteredRegions should fail');
</script>