editor/libeditor/html/crashtests/448329-3.html

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 <!DOCTYPE HTML>
     2 <html><head>
     3     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
     4     <title>Testcase #3 for bug 448329</title>
     5 </head>
     6 <body>
     8 <iframe id="frame448329"></iframe>
    10 <script>
    12 function test448329(id,cmd,val) {
    14   var elm = document.getElementById(id);
    15   var doc = elm.contentDocument;
    16   doc.designMode = "On";
    18   // Work around getSelection depending on a presshell but not flushing to get
    19   // one.
    20   doc.body.offsetWidth;
    21   var s = doc.defaultView.getSelection();
    23   // Test document node
    24   if (s.rangeCount > 0)
    25     s.removeAllRanges();
    26   var range = doc.createRange();
    27   range.setStart(doc, 0);
    28   range.setEnd(doc, 0);
    29   s.addRange(range);
    30   doc.execCommand(cmd,false,val);
    32   // Test HTML node
    33   if (s.rangeCount > 0)
    34     s.removeAllRanges();
    35   range = doc.createRange();
    36   range.setStart(doc.documentElement, 0);
    37   range.setEnd(doc.documentElement, 0);
    38   s.addRange(range);
    39   doc.execCommand(cmd,false,val);
    41   // Test BODY node
    42   if (s.rangeCount > 0)
    43     s.removeAllRanges();
    44   range = doc.createRange();
    45   var body = doc.documentElement.childNodes[1];
    46   range.setStart(body, 0);
    47   range.setEnd(body, 0);
    48   s.addRange(range);
    49   doc.execCommand(cmd,false,val);
    51   var text = doc.createTextNode("Hello Kitty");
    52   body.insertBefore(text, null)
    54   // Test TEXT node
    55   if (s.rangeCount > 0)
    56     s.removeAllRanges();
    57   range = doc.createRange();
    58   range.setStart(text, 0);
    59   range.setEnd(text, 1);
    60   s.addRange(range);
    61   doc.execCommand(cmd,false,val);
    63   // Test BODY[0,0] + TEXT node
    64   if (s.rangeCount > 0)
    65     s.removeAllRanges();
    66   range = doc.createRange();
    67   range.setStart(body, 0);
    68   range.setEnd(body, 0);
    69   s.addRange(range);
    70   range = doc.createRange();
    71   range.setStart(text, 0);
    72   range.setEnd(text, 1);
    73   s.addRange(range);
    74   doc.execCommand(cmd,false,val);
    76   // Test BODY[0,1] + TEXT node
    77   if (s.rangeCount > 0)
    78     s.removeAllRanges();
    79   range = doc.createRange();
    80   range.setStart(body, 0);
    81   range.setEnd(body, 1);
    82   s.addRange(range);
    83   range = doc.createRange();
    84   range.setStart(text, 0);
    85   range.setEnd(text, 1);
    86   s.addRange(range);
    87   doc.execCommand(cmd,false,val);
    89   // Test BODY[0,1] + TEXT node without a parent
    90   if (s.rangeCount > 0)
    91     s.removeAllRanges();
    92   range = doc.createRange();
    93   range.setStart(body, 0);
    94   range.setEnd(body, 1);
    95   s.addRange(range);
    96   range = doc.createRange();
    97   text = doc.createTextNode("Hello Kitty"); // not in doc
    98   range.setStart(text, 0);
    99   range.setEnd(text, 1);
   100   s.addRange(range);
   101   doc.execCommand(cmd,false,val);
   103 }
   105 test448329("frame448329", "backcolor", "green")
   106 test448329("frame448329", "hilitecolor", "green")
   108 </script>
   111 </body>
   112 </html>

mercurial