1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66

content / test / data / device_sensors / device_sensors_null_test_with_alert.html [blame]

<html>
  <head>
    <title>Device Motion/Orientation all-null event test with alert</title>
  </head>
  <body>
    <div id="status">FAIL</div>
  </body>
  <script type="text/javascript">
    passedOrientation = false;
    passedMotion = false;

    function checkOrientationEvent(event) {
      return event.alpha == null &&
             event.beta == null &&
             event.gamma == null;
    }

    function checkMotionEvent(event) {
      return event.acceleration.x == null &&
             event.acceleration.y == null &&
             event.acceleration.z == null &&
             event.accelerationIncludingGravity.x == null &&
             event.accelerationIncludingGravity.y == null &&
             event.accelerationIncludingGravity.z == null &&
             event.rotationRate.alpha == null &&
             event.rotationRate.beta == null &&
             event.rotationRate.gamma == null;
    }

    function onOrientation(event) {
      window.removeEventListener('deviceorientation', onOrientation);
      checkOrientationEvent(event) ? passOrientation() : fail();
    }

    function onMotion(event) {
      window.removeEventListener('devicemotion', onMotion);
      checkMotionEvent(event) ? passMotion() : fail();
    }

    function passOrientation() {
      passedOrientation = true;
      if (passedMotion) pass();
    }

    function passMotion() {
      passedMotion = true;
      if (passedOrientation) pass();
    }

    function pass() {
      document.getElementById('status').innerHTML = 'PASS';
      document.location = '#pass';
    }

    function fail() {
      document.location = '#fail';
    }

    window.addEventListener('deviceorientation', onOrientation);
    window.addEventListener('devicemotion', onMotion);

    // Raise a modal alert dialog to test that the one-off null-events
    // still propagate to window after the alert is dismissed.
    alert("suspend active DOM objects");
  </script>
</html>