tor-browser

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

test_no_dnd.html (2046B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <title>Test for Blink FileSystem API - no DND == no webkitEntries</title>
      5  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      6  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
      7 </head>
      8 
      9 <body>
     10 <script type="application/javascript">
     11 var fileEntry;
     12 var directoryEntry;
     13 var script;
     14 var entries;
     15 
     16 function setup_tests() {
     17  SpecialPowers.pushPrefEnv({"set": [["dom.webkitBlink.dirPicker.enabled", true],
     18                                     ["dom.filesystem.pathcheck.disabled", true],
     19                                     ["dom.webkitBlink.filesystem.enabled", true]]}, next);
     20 }
     21 
     22 function populate_entries() {
     23  entries = document.createElement("input");
     24  entries.setAttribute("type", "file");
     25  document.body.appendChild(entries);
     26 
     27  var url = SimpleTest.getTestFileURL("script_entries.js");
     28  script = SpecialPowers.loadChromeScript(url);
     29 
     30  function onOpened(message) {
     31    for (var i = 0 ; i < message.data.length; ++i) {
     32      if (message.data[i] instanceof File) {
     33        SpecialPowers.wrap(entries).mozSetFileArray([message.data[i]]);
     34        next();
     35      }
     36    }
     37  }
     38 
     39  script.addMessageListener("entries.opened", onOpened);
     40  script.sendAsyncMessage("entries.open");
     41 }
     42 
     43 function test_entries() {
     44  ok("webkitEntries" in entries, "HTMLInputElement.webkitEntries");
     45  is(entries.webkitEntries.length, 0, "HTMLInputElement.webkitEntries.length == 0");
     46  is(entries.files.length, 1, "HTMLInputElement.files is still populated");
     47 
     48  next();
     49 }
     50 
     51 function cleanUpTestingFiles() {
     52  script.addMessageListener("entries.deleted", function onDeleted() {
     53    script.removeMessageListener("entries.deleted");
     54    script.destroy();
     55    next();
     56  });
     57 
     58  script.sendAsyncMessage("entries.delete");
     59 }
     60 
     61 var tests = [
     62  setup_tests,
     63  populate_entries,
     64 
     65  test_entries,
     66 
     67  cleanUpTestingFiles,
     68 ];
     69 
     70 function next() {
     71  if (!tests.length) {
     72    SimpleTest.finish();
     73    return;
     74  }
     75 
     76  var test = tests.shift();
     77  test();
     78 }
     79 
     80 SimpleTest.waitForExplicitFinish();
     81 next();
     82 </script>
     83 </body>
     84 </html>