tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_bug662678.html (6508B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=662678
      5 -->
      6 <head>
      7  <title>Test for Bug 662678</title>
      8  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      9  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
     10 </head>
     11 <body>
     12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=662678">Mozilla Bug 662678</a>
     13 <p id="display"></p>
     14 <div id="content" style="display: none">
     15  
     16 </div>
     17 <pre id="test">
     18 <script type="application/javascript">
     19 
     20 /** Test for Bug 662678 */
     21 SimpleTest.waitForExplicitFinish();
     22 
     23 var checkMotion = function(event) {
     24  window.removeEventListener("devicemotion", checkMotion, true);
     25 
     26  is(event.acceleration.x, 1.5, "acceleration.x");
     27  is(event.acceleration.y, 2.5, "acceleration.y");
     28  is(event.acceleration.z, 3.5, "acceleration.z");
     29  is(event.accelerationIncludingGravity.x, 4.5, "accelerationIncludingGravity.x");
     30  is(event.accelerationIncludingGravity.y, 5.5, "accelerationIncludingGravity.y");
     31  is(event.accelerationIncludingGravity.z, 6.5, "accelerationIncludingGravity.z");
     32  is(event.rotationRate.alpha, 7.5, "rotationRate.alpha");
     33  is(event.rotationRate.beta, 8.5, "rotationRate.beta");
     34  is(event.rotationRate.gamma, 9.5, "rotationRate.gamma");
     35  is(event.interval, 0.5, "interval");
     36 
     37  var e = document.createEvent("DeviceMotionEvent");
     38  e.initDeviceMotionEvent('devicemotion', true, true,
     39                          null, null, null, null);
     40  is(e.acceleration.x, null, "acceleration.x");
     41  is(e.acceleration.y, null, "acceleration.y");
     42  is(e.acceleration.z, null, "acceleration.z");
     43  is(e.accelerationIncludingGravity.x, null, "accelerationIncludingGravity.x");
     44  is(e.accelerationIncludingGravity.y, null, "accelerationIncludingGravity.y");
     45  is(e.accelerationIncludingGravity.z, null, "accelerationIncludingGravity.z");
     46  is(e.rotationRate.alpha, null, "rotationRate.alpha");
     47  is(e.rotationRate.beta, null, "rotationRate.beta");
     48  is(e.rotationRate.gamma, null, "rotationRate.gamma");
     49  is(e.interval, null, "interval");
     50 
     51  e.initDeviceMotionEvent('devicemotion', true, true,
     52                          {}, {}, {}, 0);
     53  is(e.acceleration.x, null, "acceleration.x");
     54  is(e.acceleration.y, null, "acceleration.y");
     55  is(e.acceleration.z, null, "acceleration.z");
     56  is(e.accelerationIncludingGravity.x, null, "accelerationIncludingGravity.x");
     57  is(e.accelerationIncludingGravity.y, null, "accelerationIncludingGravity.y");
     58  is(e.accelerationIncludingGravity.z, null, "accelerationIncludingGravity.z");
     59  is(e.rotationRate.alpha, null, "rotationRate.alpha");
     60  is(e.rotationRate.beta, null, "rotationRate.beta");
     61  is(e.rotationRate.gamma, null, "rotationRate.gamma");
     62  is(e.interval, 0, "interval");
     63 
     64  window.addEventListener("devicemotion", checkMotionCtor, true);
     65 
     66  event = new DeviceMotionEvent('devicemotion', {
     67    bubbles: true, cancelable: true,
     68    acceleration: {x:1.5,y:2.5,z:3.5},
     69    accelerationIncludingGravity: {x:4.5,y:5.5,z:6.5},
     70    rotationRate: {alpha:7.5,beta:8.5,gamma:9.5},
     71    interval: 0.5
     72  });
     73  window.dispatchEvent(event);
     74 };
     75 
     76 var checkMotionCtor = function(event) {
     77  window.removeEventListener("devicemotion", checkMotionCtor, true);
     78 
     79  is(event.acceleration.x, 1.5, "acceleration.x");
     80  is(event.acceleration.y, 2.5, "acceleration.y");
     81  is(event.acceleration.z, 3.5, "acceleration.z");
     82  is(event.accelerationIncludingGravity.x, 4.5, "accelerationIncludingGravity.x");
     83  is(event.accelerationIncludingGravity.y, 5.5, "accelerationIncludingGravity.y");
     84  is(event.accelerationIncludingGravity.z, 6.5, "accelerationIncludingGravity.z");
     85  is(event.rotationRate.alpha, 7.5, "rotationRate.alpha");
     86  is(event.rotationRate.beta, 8.5, "rotationRate.beta");
     87  is(event.rotationRate.gamma, 9.5, "rotationRate.gamma");
     88  is(event.interval, 0.5, "interval");
     89 
     90  var e = new DeviceMotionEvent('devicemotion');
     91  is(e.acceleration.x, null, "acceleration.x");
     92  is(e.acceleration.y, null, "acceleration.y");
     93  is(e.acceleration.z, null, "acceleration.z");
     94  is(e.accelerationIncludingGravity.x, null, "accelerationIncludingGravity.x");
     95  is(e.accelerationIncludingGravity.y, null, "accelerationIncludingGravity.y");
     96  is(e.accelerationIncludingGravity.z, null, "accelerationIncludingGravity.z");
     97  is(e.rotationRate.alpha, null, "rotationRate.alpha");
     98  is(e.rotationRate.beta, null, "rotationRate.beta");
     99  is(e.rotationRate.gamma, null, "rotationRate.gamma");
    100  is(e.interval, null, "interval");
    101 
    102  e = new DeviceMotionEvent('devicemotion', {
    103    bubbles: true, cancelable: true,
    104    acceleration: null, accelerationIncludingGravity: null,
    105    rotationRate: null, interval: null
    106  });
    107  is(e.acceleration.x, null, "acceleration.x");
    108  is(e.acceleration.y, null, "acceleration.y");
    109  is(e.acceleration.z, null, "acceleration.z");
    110  is(e.accelerationIncludingGravity.x, null, "accelerationIncludingGravity.x");
    111  is(e.accelerationIncludingGravity.y, null, "accelerationIncludingGravity.y");
    112  is(e.accelerationIncludingGravity.z, null, "accelerationIncludingGravity.z");
    113  is(e.rotationRate.alpha, null, "rotationRate.alpha");
    114  is(e.rotationRate.beta, null, "rotationRate.beta");
    115  is(e.rotationRate.gamma, null, "rotationRate.gamma");
    116  is(e.interval, null, "interval");
    117 
    118  e = new DeviceMotionEvent('devicemotion', {
    119    bubbles: true, cancelable: true,
    120    acceleration: {}, accelerationIncludingGravity: {},
    121    rotationRate: {}, interval: 0
    122  });
    123  is(e.acceleration.x, null, "acceleration.x");
    124  is(e.acceleration.y, null, "acceleration.y");
    125  is(e.acceleration.z, null, "acceleration.z");
    126  is(e.accelerationIncludingGravity.x, null, "accelerationIncludingGravity.x");
    127  is(e.accelerationIncludingGravity.y, null, "accelerationIncludingGravity.y");
    128  is(e.accelerationIncludingGravity.z, null, "accelerationIncludingGravity.z");
    129  is(e.rotationRate.alpha, null, "rotationRate.alpha");
    130  is(e.rotationRate.beta, null, "rotationRate.beta");
    131  is(e.rotationRate.gamma, null, "rotationRate.gamma");
    132  is(e.interval, 0, "interval");
    133 
    134  SimpleTest.finish();
    135 };
    136 
    137 window.addEventListener("devicemotion", checkMotion, true);
    138 
    139 var event = DeviceMotionEvent;
    140 ok(!!event, "Should have seen DeviceMotionEvent!");
    141 
    142 event = document.createEvent("DeviceMotionEvent");
    143 event.initDeviceMotionEvent('devicemotion', true, true, 
    144                            {x:1.5,y:2.5,z:3.5},
    145                            {x:4.5,y:5.5,z:6.5},
    146                            {alpha:7.5,beta:8.5,gamma:9.5},
    147                            0.5);
    148 window.dispatchEvent(event);
    149 
    150 </script>
    151 </pre>
    152 </body>
    153 </html>