blob: f11ac2fd5836520009d96cae1f5fa0b837fab1d4 [file] [log] [blame]
<!DOCTYPE html>
<html>
<body>
<script src="/js-test-resources/js-test.js"></script>
<script>
description("Tests that trying to set an event listener for deviceorientation and deviceorientation does not log an error in secure contexts.");
jsTestIsAsync = true;
if (window.testRunner) {
if (testRunner.setShouldAllowDeviceOrientationAndMotionAccess)
testRunner.setShouldAllowDeviceOrientationAndMotionAccess(true);
}
// localhost is secure by default.
let lastConsoleMessage = null;
internals.setConsoleMessageListener((message) => {
lastConsoleMessage = message;
});
function runDeviceMotionTest()
{
debug("");
if (!window.DeviceMotionEvent) {
console.log("Device Motion API is not supported");
finishJSTest();
return;
}
debug("* Requesting device motion access...");
internals.withUserGesture(() => {
DeviceMotionEvent.requestPermission().then((_result) => {
result = _result;
shouldBeEqualToString("result", "granted");
lastConsoleMessage = null;
debug("* Registering device motion listener");
addEventListener("devicemotion", function() { });
internals.postTask(() => {
shouldBeNull("lastConsoleMessage");
finishJSTest();
});
});
});
}
function runDeviceOrientationTest()
{
if (!window.DeviceOrientationEvent) {
console.log("Device Orientation API is not supported");
runDeviceMotionTest();
return;
}
debug("* Requesting device orientation access...");
internals.withUserGesture(() => {
DeviceOrientationEvent.requestPermission().then((_result) => {
result = _result;
shouldBeEqualToString("result", "granted");
lastConsoleMessage = null;
debug("* Registering device orientation listener");
addEventListener("deviceorientation", function() { });
internals.postTask(() => {
shouldBeNull("lastConsoleMessage");
runDeviceMotionTest();
});
});
});
}
onload = runDeviceOrientationTest;
</script>
</body>
</html>