tor-browser

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

test_bug557087-5.html (2507B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=557087
      5 -->
      6 <head>
      7  <title>Test for Bug 557087</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=557087">Mozilla Bug 557087</a>
     13 <p id="display"></p>
     14 <div id="content">
     15  <iframe name='t'></iframe>
     16  <form target='t' action="dummy_page.html">
     17    <fieldset disabled>
     18      <fieldset>
     19        <input name='i' value='i'>
     20        <textarea name='t'>t</textarea>
     21        <select name='s'><option>s</option></select>
     22      </fieldset>
     23    </fieldset>
     24  </form>
     25 </div>
     26 <pre id="test">
     27 <script type="application/javascript">
     28 
     29 /** Test for Bug 557087 */
     30 
     31 SimpleTest.waitForExplicitFinish();
     32 addLoadEvent(runTest);
     33 
     34 const BASE_URI = `${location.origin}/tests/dom/html/test/dummy_page.html`;
     35 var testResults = [
     36  BASE_URI + "?",
     37  BASE_URI + "?",
     38  BASE_URI + "?i=i&t=t&s=s",
     39  BASE_URI + "?i=i&t=t&s=s",
     40 ];
     41 var gTestCount = 0;
     42 
     43 var form = document.forms[0];
     44 var iframe = document.getElementsByTagName('iframe')[0];
     45 var fieldsets = document.getElementsByTagName('fieldset');
     46 
     47 function runTest()
     48 {
     49  iframe.addEventListener("load", function() {
     50    is(iframe.contentWindow.location.href, testResults[gTestCount],
     51       testResults[gTestCount] + " should have been loaded");
     52 
     53    switch (++gTestCount) {
     54      case 1:
     55        fieldsets[1].disabled = true;
     56        fieldsets[0].disabled = false;
     57        form.submit();
     58        SimpleTest.executeSoon(function() {
     59          form.submit()
     60        });
     61        break;
     62      case 2:
     63        fieldsets[0].disabled = false;
     64        fieldsets[1].disabled = false;
     65        SimpleTest.executeSoon(function() {
     66          form.submit()
     67        });
     68        break;
     69      case 3:
     70        // Elements inside the first legend of a disabled fieldset are submittable.
     71        fieldsets[0].disabled = true;
     72        fieldsets[1].disabled = true;
     73        var legend = document.createElement("legend");
     74        fieldsets[0].appendChild(legend);
     75        while (fieldsets[1].firstChild) {
     76          legend.appendChild(fieldsets[1].firstChild);
     77        }
     78        SimpleTest.executeSoon(function() {
     79          form.submit()
     80        });
     81        break;
     82      default:
     83        iframe.removeEventListener("load", arguments.callee);
     84        SimpleTest.executeSoon(SimpleTest.finish);
     85    }
     86  });
     87 
     88  form.submit();
     89 }
     90 
     91 </script>
     92 </pre>
     93 </body>
     94 </html>