mirror of
https://github.com/servo/servo.git
synced 2025-06-30 12:03:38 +01:00
34 lines
1.3 KiB
HTML
34 lines
1.3 KiB
HTML
<!DOCTYPE HTML>
|
|
<meta charset='utf-8'>
|
|
<title>User asked to deny/remember, then asked to revoke, then reload. The permission dialogue should reappear</title>
|
|
<link rel='help' href='http://www.w3.org/TR/geolocation-API/#get-current-position'>
|
|
|
|
<p>Clear all Geolocation permissions before running this test. If prompted for permission, please deny.</p>
|
|
|
|
<div id='log'></div>
|
|
|
|
<script>
|
|
// Rewrite http://dev.w3.org/geo/api/test-suite/t.html?00142
|
|
var onSuccess, nextStep, isUsingPreemptivePermission = false;
|
|
|
|
onSuccess = function() {
|
|
document.getElementById('log').innerHTML = 'FAIL: a success callback was invoked unexpectedly.';
|
|
};
|
|
|
|
nextStep = function(err) {
|
|
if ((err.code === err.PERMISSION_DENIED) ||
|
|
(!isUsingPreemptivePermission && err.code === err.POSITION_UNAVAILABLE)) {
|
|
document.querySelector('p').innerHTML =
|
|
'Now revoke permissions for this origin (where applicable) and reload the page. Tests passes if there is a permission prompt again and no FAIL.';
|
|
} else {
|
|
document.getElementById('log').innerHTML =
|
|
'FAIL: an error callback was invoked with unexpected error code: ' + err.code + ', error message: ' + err.message;
|
|
}
|
|
};
|
|
|
|
try {
|
|
navigator.geolocation.getCurrentPosition(onSuccess, nextStep);
|
|
} catch (e) {
|
|
document.getElementById('log').innerHTML = 'FAIL: an exception was thrown unexpectedly: ' + e.message;
|
|
}
|
|
</script>
|