content/base/test/test_bug366946.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>
     3 <!--
     4 https://bugzilla.mozilla.org/show_bug.cgi?id=366946
     5 -->
     6 <head>
     7   <title>Test for Bug 366946</title>
     8   <script type="text/javascript" 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();
    24   addLoadEvent(function() {
    25     var doc1 = document;
    27     // Set up a new document.
    28     var doc2 = document.implementation.createDocument('', '', null);
    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);
    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);
    41     var range2 = doc1.createRange();
    42     range2.setStart(doc1.getElementById('2'), 0);
    43     range2.setEnd(doc1.getElementById('3'), 0);
    45     // Create a range in doc2.
    46     var range3 = doc2.createRange();
    47     range3.setStart(node1, 0);
    48     range3.setEnd(node2, 0);
    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.");
    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     }
    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>

mercurial