tor-browser

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

test_bug1269155.html (4070B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=1269155
      5 -->
      6 <head>
      7  <title>Test for Bug 1269155</title>
      8  <script type="text/javascript" src="head.js"></script>
      9  <script src="/tests/SimpleTest/SimpleTest.js"></script>
     10  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     11 </head>
     12 <body>
     13 <a target="_blank"
     14  href="https://bugzilla.mozilla.org/show_bug.cgi?id=1269155">Mozilla Bug 1269155</a>
     15 <p id="display"></p>
     16 
     17 <pre id="test">
     18 <script class="testbody" type="text/javascript">
     19 
     20 /** Test for Bug 1269155 */
     21 SimpleTest.waitForExplicitFinish();
     22 
     23 var content = '<div id="content" style="display: none"> </div>';
     24 createIframe(content)
     25  .then((aDocument) => {
     26    var host = aDocument.querySelector('#content');
     27    var root = host.attachShadow({mode: "open"});
     28 
     29    var header1 = aDocument.createElement('h1');
     30    header1.textContent = 'Shadow Header1';
     31 
     32    var paragraph1 = aDocument.createElement('p');
     33    paragraph1.textContent = 'shadow text paragraph1';
     34 
     35    root.appendChild(header1);
     36    root.appendChild(paragraph1);
     37 
     38    var root2 = paragraph1.attachShadow({mode: "open"});
     39    var header2 = aDocument.createElement('h2');
     40    header2.textContent = 'Shadow Header2';
     41 
     42    var paragraph2 = aDocument.createElement('p');
     43    paragraph2.textContent = 'shadow text paragraph2';
     44    root2.appendChild(header2);
     45    root2.appendChild(paragraph2);
     46 
     47 
     48    var frag = aDocument.createDocumentFragment();
     49    var paragraph3 = aDocument.createElement('p');
     50    paragraph3.textContent = 'fragment paragraph3';
     51    frag.appendChild(paragraph3);
     52 
     53    var root3 = paragraph3.attachShadow({mode: "open"});
     54    var header4 = aDocument.createElement('h2');
     55    header4.textContent = 'Shadow Header3';
     56 
     57    var paragraph4 = aDocument.createElement('p');
     58    paragraph4.textContent = 'shadow text paragraph4';
     59 
     60    root3.appendChild(header4);
     61    root3.appendChild(paragraph4);
     62 
     63    //shadow dom without compose
     64    is(root.getRootNode(), root, "root.getRootNode() should be root.");
     65    is(root2.getRootNode(), root2, "root2.getRootNode() should be root.");
     66    is(root3.getRootNode(), root3, "root3.getRootNode() should be root.");
     67    is(header1.getRootNode(), root, "header1.getRootNode() should be root.");
     68    is(header2.getRootNode(), root2, "header1.getRootNode() should be root2.");
     69    is(header4.getRootNode(), root3, "header1.getRootNode() should be root3.");
     70    //shadow dom with compose
     71    is(root.getRootNode({ composed: true }), aDocument, "root.getRootNode() with composed flag should be document.");
     72    is(root2.getRootNode({ composed: true }), aDocument, "root2.getRootNode() with composed flag should be document.");
     73    is(root3.getRootNode({ composed: true }), frag, "root3.getRootNode() with composed flag should be frag.");
     74    is(header1.getRootNode({ composed: true }) , aDocument, "header1.getRootNode() with composed flag should be document.");
     75    is(header2.getRootNode({ composed: true }) , aDocument, "header2.getRootNode() with composed flag should be document.");
     76    is(header4.getRootNode({ composed: true }) , frag, "head4.getRootNode() with composed flag should be frag.");
     77    //dom without compose
     78    is(host.getRootNode(), aDocument, "host.getRootNode() should be document.");
     79    is(header1.getRootNode(), root, "header1.getRootNode() should be root.");
     80    is(paragraph1.getRootNode(), root, "paragraph1.getRootNode() should be root.");
     81    is(frag.getRootNode(), frag, "frag.getRootNode() should be frag.");
     82    //dom with compose
     83    is(host.getRootNode({ composed: true }) , aDocument, "host.getRootNode() with composed flag should be document.");
     84    is(header1.getRootNode({ composed: true }) , aDocument, "header1.getRootNode() with composed flag should be document.");
     85    is(paragraph1.getRootNode({ composed: true }) , aDocument, "paragraph1.getRootNode() with composed flag should be document.");
     86    is(frag.getRootNode({ composed: true }) , frag, "frag.getRootNode() with composed flag should be frag.");
     87 
     88    SimpleTest.finish();
     89  });
     90 </script>
     91 </pre>
     92 </body>
     93 </html>