tor-browser

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

test_bug366944.html (1682B)


      1 <!doctype html>
      2 <!--
      3 https://bugzilla.mozilla.org/show_bug.cgi?id=366944
      4 -->
      5 <title>Test for Bug 366944</title>
      6 <script src="/tests/SimpleTest/SimpleTest.js"></script>
      7 <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
      8 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=366944">Mozilla Bug 366944</a>
      9 <script>
     10 
     11 /** Test for Bug 366944 */
     12 var testNodes = [document, document.doctype, document.createDocumentFragment()];
     13 for (var i = 0; i < testNodes.length; i++) {
     14  var range = document.createRange();
     15  // If a non-Text node is partially contained, we expect to throw for that
     16  // first
     17  range.setStart(document.head, 0);
     18  range.setEnd(document.body, 0);
     19  var threw = false;
     20  var desc = " (surrounding a range with partially-contained Element "
     21    + "with " + (i == 0 ? "document" : i == 1 ? "doctype" : "docfrag") + ")";
     22  try {
     23    range.surroundContents(testNodes[i]);
     24  } catch(e) {
     25    threw = true;
     26    is(Object.getPrototypeOf(e), DOMException.prototype,
     27       "Must throw DOMException" + desc);
     28    is(e.name, "InvalidStateError", "Must throw InvalidStateError" + desc);
     29  }
     30  ok(threw, "Must throw" + desc);
     31 
     32  range.setStart(document.body, 0);
     33  range.setEnd(document.body, 1);
     34  threw = false;
     35  desc = " (surrounding a regular range "
     36    + "with " + (i == 0 ? "document" : i == 1 ? "doctype" : "docfrag") + ")";
     37  try {
     38    range.surroundContents(testNodes[i]);
     39  } catch(e) {
     40    threw = true;
     41    is(Object.getPrototypeOf(e), DOMException.prototype,
     42       "Must throw DOMException" + desc);
     43    is(e.name, "InvalidNodeTypeError",
     44       "Must throw InvalidNodeTypeError" + desc);
     45  }
     46  ok(threw, "Must throw" + desc);
     47 }
     48 
     49 </script>