| <html> |
| <head> |
| <title>DeviceMotion only some sensors are available test</title> |
| <script type="text/javascript"> |
| let expectedInterval = Math.floor(1000 / 60); |
| let kRadiansToDegrees = 180 / Math.PI; |
| function checkMotionEvent(event) { |
| return event.acceleration.x == 1 && |
| event.acceleration.y == 2 && |
| event.acceleration.z == 3 && |
| event.accelerationIncludingGravity.x == null && |
| event.accelerationIncludingGravity.y == null && |
| event.accelerationIncludingGravity.z == null && |
| event.rotationRate.alpha == 7 * kRadiansToDegrees && |
| event.rotationRate.beta == 8 * kRadiansToDegrees && |
| event.rotationRate.gamma == 9 * kRadiansToDegrees && |
| event.interval == expectedInterval; |
| } |
| |
| function onMotion(event) { |
| if (checkMotionEvent(event)) { |
| window.removeEventListener('devicemotion', onMotion); |
| pass(); |
| } else { |
| console.log("event.acceleration.x is: " + event.acceleration.x); |
| console.log("event.acceleration.y is: " + event.acceleration.y); |
| console.log("event.acceleration.z is: " + event.acceleration.z); |
| console.log("event.accelerationIncludingGravity.x is: " + event.accelerationIncludingGravity.x); |
| console.log("event.accelerationIncludingGravity.y is: " + event.accelerationIncludingGravity.y); |
| console.log("event.accelerationIncludingGravity.z is: " + event.accelerationIncludingGravity.z); |
| console.log("event.rotationRate.alpha is: " + event.rotationRate.alpha); |
| console.log("event.rotationRate.beta is: " + event.rotationRate.beta); |
| console.log("event.rotationRate.gamma is: " + event.rotationRate.gamma); |
| console.log("event.interval is: " + event.interval); |
| fail(); |
| } |
| } |
| |
| function pass() { |
| document.getElementById('status').innerHTML = 'PASS'; |
| document.location = '#pass'; |
| } |
| |
| function fail() { |
| document.location = '#fail'; |
| } |
| </script> |
| </head> |
| <body onLoad="window.addEventListener('devicemotion', onMotion)"> |
| <div id="status">FAIL</div> |
| </body> |
| </html> |