tor-browser

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

test_bug366946.html (2464B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=366946
      5 -->
      6 <head>
      7  <title>Test for Bug 366946</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>
     12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=366946">Mozilla Bug 366946</a>
     13 <p id="display"></p>
     14 <div id="content" style="display: none">
     15  <div id="1"></div>
     16  <div id="2"></div>
     17  <div id="3"></div>
     18 </div>
     19 <pre id="test">
     20 <script class="testbody" type="text/javascript">
     21  /** Test for Bug 366946 */
     22  SimpleTest.waitForExplicitFinish();
     23 
     24  addLoadEvent(function() {
     25    var doc1 = document;
     26 
     27    // Set up a new document.
     28    var doc2 = document.implementation.createDocument('', '', null);
     29 
     30    // Copy some nodes into doc2
     31    var node1 = doc2.importNode(doc1.getElementById('1'), false);
     32    var node2 = doc2.importNode(doc1.getElementById('1'), false);
     33    node1.appendChild(node2);
     34    doc2.appendChild(node1);
     35 
     36    // Create two ranges in doc1 to compare.
     37    var range1 = doc1.createRange();
     38    range1.setStart(doc1.getElementById('1'), 0);
     39    range1.setEnd(doc1.getElementById('2'), 0);
     40    
     41    var range2 = doc1.createRange();
     42    range2.setStart(doc1.getElementById('2'), 0);
     43    range2.setEnd(doc1.getElementById('3'), 0);
     44 
     45    // Create a range in doc2.
     46    var range3 = doc2.createRange();
     47    range3.setStart(node1, 0);
     48    range3.setEnd(node2, 0);
     49 
     50    // Compare range1 and range2: Should return 1.
     51    try {
     52      var result1 = range2.compareBoundaryPoints(Range.START_TO_START, range1);
     53    }
     54    catch (ex) {
     55    }
     56    ok(result1 ===  1, "range1 and range2 are compared correctly.");
     57 
     58    // Compare range1 and range3: Should throw DOMException WRONG_DOCUMENT_ERR.
     59    try {
     60      var result2 = range3.compareBoundaryPoints(Range.START_TO_START, range1);
     61    }
     62    catch (ex) {
     63      var error = ex.name;
     64      var errorCode = ex.code;
     65    }
     66 
     67    ok(error == "WrongDocumentError",
     68      "The WrongDocumentError exception thrown when comparing ranges from " +
     69      "different documents ");
     70    ok(errorCode == DOMException.WRONG_DOCUMENT_ERR,
     71      "The exception thrown when comparing ranges from different documents " +
     72      "has the code DOMException.WRONG_DOCUMENT_ERR");
     73    ok(result2 === undefined, "range1 and range3 couldn't be compared as expected.");
     74    SimpleTest.finish();
     75  });
     76 </script>
     77 </pre>
     78 </body>
     79 </html>