tor-browser

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

actionsWithKeyPressed.html (1502B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>TestDriver actions: actions with key pressed</title>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script src="/resources/testdriver.js"></script>
      7 <script src="/resources/testdriver-actions.js"></script>
      8 <script src="/resources/testdriver-vendor.js"></script>
      9 
     10 <style>
     11 div#test1, div#test2 {
     12  position: fixed;
     13  top: 0;
     14  left: 0;
     15  width: 100px;
     16  height: 100px;
     17  background-color: blue;
     18 }
     19 
     20 div#test2 {
     21  position: fixed;
     22  top: 100px;
     23  left: 0;
     24  width: 100px;
     25  height: 100px;
     26  background-color: green;
     27 }
     28 </style>
     29 
     30 <div id="test1">
     31 </div>
     32 
     33 <div id="test2">
     34 </div>
     35 
     36 <script>
     37 let keys = [];
     38 
     39 promise_test(async t => {
     40  let test1 = document.getElementById("test1");
     41  let test2 = document.getElementById("test2");
     42  document.getElementById("test1").addEventListener("click",
     43    e => {keys.push(e.getModifierState("Shift"))});
     44  document.getElementById("test2").addEventListener("click",
     45    e => {keys.push(e.getModifierState("Shift"))});
     46 
     47  let actions = new test_driver.Actions()
     48    .keyDown("\uE008")
     49    .addTick()
     50    .pointerMove(0, 0, {origin: test1})
     51    .pointerDown()
     52    .pointerUp()
     53    .pointerMove(0, 0, {origin: test2})
     54    .pointerDown()
     55    .pointerUp()
     56    .addTick()
     57    .keyUp("\uE008")
     58    .addTick()
     59    .pointerMove(0, 0, {origin: test1})
     60    .pointerDown()
     61    .pointerUp();
     62 
     63  await actions.send();
     64  assert_array_equals(keys, [true, true, false]);
     65 });
     66 </script>