parser/htmlparser/tests/mochitest/test_compatmode.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 <head>
     4     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     5     <title>Mochitest for DOCTYPE parsing</title>
     7   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     8   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     9 </head>
    10 <body>
    11 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=363883">Mozilla Bug 363883</a>
    13 <p id="display"></p>
    14 <div id="content" style="display: none">
    16 </div>
    18 <pre id="test">
    19 <script class="testbody" type="text/javascript">
    21 var doctypes = [
    22 /* from bug 363883 */
    23 'BackCompat' , '<!DOCTYPE>',
    24 'BackCompat' , '<!DOCTYPEz>',
    25 'BackCompat' , '<! DOCTYPE>',
    26 'BackCompat' , '<!zDOCTYPE>',
    27 'CSS1Compat' , '<!DOCTYPEHTML>',
    28 'BackCompat' , '<!DOCTYPEz HTML>',
    29 'CSS1Compat' , '<!DOCTYPE HTML>',
    30 'BackCompat' , '<!zDOCTYPE HTML>',
    31 'BackCompat' , '<!DOCTYPE HTMLz>',
    32 'BackCompat' , '<!DOCTYPE zHTML>',
    33 'BackCompat' , '<!DOCTYPE XHTML>',
    34 'BackCompat' , '<!DOCTYPE zzHTML>',
    35 'BackCompat' , '<!DOCTYPEzHTML>',
    36 'BackCompat' , '<!DOCTYPEzzHTML>',
    37 'BackCompat' , '<!DOCTYPE "bla">',
    38 'BackCompat' , '<!DOCTYPE HTML "bla">',
    39 'BackCompat' , '<!DOCTYPE HTML "html">',
    40 'BackCompat' , '<!DOCTYPE PUBLIC>',
    41 'BackCompat' , '<!DOCTYPE PUBLIC "bla">',
    42 'BackCompat' , '<!DOCTYPE PUBLIC "html">',
    43 'CSS1Compat' , '<!DOCTYPE HTML PUBLIC "bla">',
    44 'BackCompat' , '<!DOCTYPE HTML PUBLIC "html">',
    45 'BackCompat' , '<!DOCTYPEz HTML PUBLIC "html">',
    46 'BackCompat' , '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//en">',
    47 'BackCompat' , '<!DOCTYPEz HTML PUBLIC "-//IETF//DTD HTML 3.2//en">',
    48 'BackCompat' , '<!DOCTYPE HTMLz PUBLIC "DTD HTML 3.2">',
    49 'BackCompat' , '<!DOCTYPE "DTD HTML 3.2">',
    50 /* end from bug 363883 */
    51 // from bug 502600
    52 'BackCompat' , '<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">',
    53 ];
    55 function test(mode,i){
    56   is(mode,doctypes[i],doctypes[i+1]);
    57   if (i == doctypes.length - 2) {
    58     SimpleTest.finish();
    59   }
    60 }
    62 ////
    63 // Insert a hidden iframe into the document, with the src 
    64 // containing the test doctype.  The iframe's onload
    65 // function is set to call the test's verification step.
    66 //
    67 function insert_iframe(doctype,expected) {
    68   var elm = document.createElement('iframe');
    69   elm.setAttribute('src', 'data:text/html,' + doctype +
    70     '<html><body onload="parent.test(document.compatMode,'+i+')"></body>');
    71   elm.setAttribute('style', 'display:none');
    72   document.getElementsByTagName('body')[0].appendChild(elm);
    73 }
    75 ////
    76 // Iterate over the tests
    77 //
    78 function doTest() {
    79   for (i=0; i < doctypes.length; i+=2) {
    80     insert_iframe(doctypes[i+1],doctypes[i]);
    81   }
    82 }
    84 ////
    85 // Run the compatbility mode tests.
    86 //
    87 SimpleTest.waitForExplicitFinish();
    88 doTest();
    90 </script>
    91 </pre>
    92 </body>
    93 </html>

mercurial