tor-browser

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

test_bug408231.html (6757B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=408231
      5 -->
      6 <head>
      7  <title>Test for Bug 408231</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 style="font-family: serif">
     12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=408231">Mozilla Bug 408231</a>
     13 <p id="display"></p>
     14 <div id="content" style="display: none">
     15 
     16 </div>
     17 <pre id="test">
     18 <script class="testbody" type="text/javascript">
     19 
     20 /** Test for Bug 408231 */
     21 
     22    var commandEnabledResults = [
     23      ["copy", "false"],
     24      ["createlink", "true"],
     25      ["cut", "false"],
     26      ["delete", "true"],
     27      ["fontname", "true"],
     28      ["fontsize", "true"],
     29      ["formatblock", "true"],
     30      ["hilitecolor", "true"],
     31      ["indent", "true"],
     32      ["inserthorizontalrule", "true"],
     33      ["inserthtml", "true"],
     34      ["insertimage", "true"],
     35      ["insertorderedlist", "true"],
     36      ["insertunorderedlist", "true"],
     37      ["insertparagraph", "true"],
     38      ["italic", "true"],
     39      ["justifycenter", "true"],
     40      ["justifyfull", "true"],
     41      ["justifyleft", "true"],
     42      ["justifyright", "true"],
     43      ["outdent", "true"],
     44      ["paste", "false"],
     45      ["redo", "false"],
     46      ["removeformat", "true"],
     47      ["selectall", "true"],
     48      ["strikethrough", "true"],
     49      ["styleWithCSS", "true"],
     50      ["subscript", "true"],
     51      ["superscript", "true"],
     52      ["underline", "true"],
     53      ["undo", "false"],
     54      ["unlink", "true"],
     55      ["not-a-command", "false"],
     56    ];
     57 
     58    var commandIndetermResults = [
     59      ["copy", "false"],
     60      ["createlink", "false"],
     61      ["cut", "false"],
     62      ["delete", "false"],
     63      ["fontname", "false"],
     64      ["fontsize", "false"],
     65      ["formatblock", "false"],
     66      ["hilitecolor", "false"],
     67      ["indent", "false"],
     68      ["inserthorizontalrule", "false"],
     69      ["inserthtml", "false"],
     70      ["insertimage", "false"],
     71      ["insertorderedlist", "false"],
     72      ["insertunorderedlist", "false"],
     73      ["insertparagraph", "false"],
     74      ["italic", "false"],
     75      ["justifycenter", "false"],
     76      ["justifyfull", "false"],
     77      ["justifyleft", "false"],
     78      ["justifyright", "false"],
     79      ["outdent", "false"],
     80      // ["paste", "false"],
     81      ["redo", "false"],
     82      ["removeformat", "false"],
     83      ["selectall", "false"],
     84      ["strikethrough", "false"],
     85      ["styleWithCSS", "false"],
     86      ["subscript", "false"],
     87      ["superscript", "false"],
     88      ["underline", "false"],
     89      ["undo", "false"],
     90      ["unlink", "false"],
     91      ["not-a-command", "false"],
     92    ];
     93 
     94    var commandStateResults = [
     95      ["copy", "false"],
     96      ["createlink", "false"],
     97      ["cut", "false"],
     98      ["delete", "false"],
     99      ["fontname", "false"],
    100      ["fontsize", "false"],
    101      ["formatblock", "false"],
    102      ["hilitecolor", "false"],
    103      ["indent", "false"],
    104      ["inserthorizontalrule", "false"],
    105      ["inserthtml", "false"],
    106      ["insertimage", "false"],
    107      ["insertorderedlist", "false"],
    108      ["insertunorderedlist", "false"],
    109      ["insertparagraph", "false"],
    110      ["italic", "false"],
    111      ["justifycenter", "false"],
    112      ["justifyfull", "false"],
    113      ["justifyleft", "true"],
    114      ["justifyright", "false"],
    115      ["outdent", "false"],
    116      // ["paste", "false"],
    117      ["redo", "false"],
    118      ["removeformat", "false"],
    119      ["selectall", "false"],
    120      ["strikethrough", "false"],
    121      ["styleWithCSS", "false"],
    122      ["subscript", "false"],
    123      ["superscript", "false"],
    124      ["underline", "false"],
    125      ["undo", "false"],
    126      ["unlink", "false"],
    127      ["not-a-command", "false"],
    128    ];
    129 
    130    var commandValueResults = [
    131      ["copy", ""],
    132      ["createlink", ""],
    133      ["cut", ""],
    134      ["delete", ""],
    135      ["fontname", "serif"],
    136      ["fontsize", ""],
    137      ["formatblock", ""],
    138      ["hilitecolor", "rgba(0, 0, 0, 0)"],
    139      ["indent", ""],
    140      ["inserthorizontalrule", ""],
    141      ["inserthtml", ""],
    142      ["insertimage", ""],
    143      ["insertorderedlist", ""],
    144      ["insertunorderedlist", ""],
    145      ["insertparagraph", ""],
    146      ["italic", ""],
    147      ["justifycenter", "left"],
    148      ["justifyfull", "left"],
    149      ["justifyleft", "left"],
    150      ["justifyright", "left"],
    151      ["outdent", ""],
    152      // ["paste", ""],
    153      ["redo", ""],
    154      ["removeformat", ""],
    155      ["selectall", ""],
    156      ["strikethrough", ""],
    157      ["styleWithCSS", ""],
    158      ["subscript", ""],
    159      ["superscript", ""],
    160      ["underline", ""],
    161      ["undo", ""],
    162      ["unlink", ""],
    163      ["not-a-command", ""],
    164    ];
    165 
    166 
    167    function callQueryCommandEnabled(cmdName) {
    168      var result;
    169      try {
    170        result = "" + document.queryCommandEnabled(cmdName);
    171      } catch (error) {
    172        result = "name" in error ? error.name : "exception";
    173      }
    174      return result;
    175    }
    176 
    177    function callQueryCommandIndeterm(cmdName) {
    178      var result;
    179      try {
    180        result = "" + document.queryCommandIndeterm(cmdName);
    181      } catch (error) {
    182        result = "name" in error ? error.name : "exception";
    183      }
    184      return result;
    185    }
    186 
    187    function callQueryCommandState(cmdName) {
    188      var result;
    189      try {
    190        result = "" + document.queryCommandState(cmdName);
    191      } catch (error) {
    192        result = "name" in error ? error.name : "exception";
    193      }
    194      return result;
    195    }
    196 
    197    function callQueryCommandValue(cmdName) {
    198      var result;
    199      try {
    200        result = "" + document.queryCommandValue(cmdName);
    201      } catch (error) {
    202        result = "name" in error ? error.name : "exception";
    203      }
    204      return result;
    205    }
    206 
    207    function testQueryCommand(expectedResults, fun, funName) {
    208      for (let i = 0; i < expectedResults.length; i++) {
    209        var commandName = expectedResults[i][0];
    210        var expectedResult = expectedResults[i][1];
    211        var result = fun(commandName);
    212        ok(result == expectedResult, funName + "(" + commandName + ") result=" + result + " expected=" + expectedResult);
    213      }
    214    }
    215 
    216    function runTests() {
    217      document.designMode = "on";
    218      window.getSelection().collapse(document.body, 0);
    219      testQueryCommand(commandEnabledResults, callQueryCommandEnabled, "queryCommandEnabled");
    220      testQueryCommand(commandIndetermResults, callQueryCommandIndeterm, "queryCommandIndeterm");
    221      testQueryCommand(commandStateResults, callQueryCommandState, "queryCommandState");
    222      testQueryCommand(commandValueResults, callQueryCommandValue, "queryCommandValue");
    223      document.designMode = "off";
    224      SimpleTest.finish();
    225    }
    226 
    227    window.onload = runTests;
    228    SimpleTest.waitForExplicitFinish();
    229 
    230 </script>
    231 </pre>
    232 </body>
    233 </html>