content/base/test/test_bug922681.html

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 <!DOCTYPE HTML>
michael@0 2 <html>
michael@0 3 <!--
michael@0 4 https://bugzilla.mozilla.org/show_bug.cgi?id=922681
michael@0 5 -->
michael@0 6 <head>
michael@0 7 <meta charset="utf-8">
michael@0 8 <title>Test for Bug 922681</title>
michael@0 9 <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
michael@0 10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
michael@0 11 <script type="application/javascript">
michael@0 12 function testInnerHTMLParserInsertionMode() {
michael@0 13
michael@0 14 function testInnerHTML(el, input, output) {
michael@0 15 el.innerHTML = input;
michael@0 16 is(el.innerHTML, output, el.tagName.toLowerCase() + ': "' + input + '"');
michael@0 17 }
michael@0 18
michael@0 19 var c;
michael@0 20
michael@0 21 c = document.createElement("html");
michael@0 22 testInnerHTML(c, "", "<head></head><body></body>");
michael@0 23 testInnerHTML(c, "xyz", "<head></head><body>xyz</body>");
michael@0 24 testInnerHTML(c, "<input>", "<head></head><body><input></body>");
michael@0 25
michael@0 26 c = document.createElement("colgroup");
michael@0 27 testInnerHTML(c, "abcdef", "");
michael@0 28 testInnerHTML(c, "", "");
michael@0 29 testInnerHTML(c, "\n", "\n");
michael@0 30 testInnerHTML(c, "<col>", "<col>");
michael@0 31
michael@0 32 c = document.createElement("select");
michael@0 33 testInnerHTML(c, "123", "123");
michael@0 34 testInnerHTML(c, "<input>", "");
michael@0 35 testInnerHTML(c, "\0", "");
michael@0 36 testInnerHTML(c, "<col>", "");
michael@0 37 testInnerHTML(c, "<option>", "<option></option>");
michael@0 38
michael@0 39 c = document.createElement("head");
michael@0 40 testInnerHTML(c, "123", "123");
michael@0 41 testInnerHTML(c, "\n", "\n");
michael@0 42
michael@0 43 c = document.createElement("frameset");
michael@0 44 testInnerHTML(c, "456", "");
michael@0 45 testInnerHTML(c, "\n", "\n");
michael@0 46 testInnerHTML(c, "<input>", "");
michael@0 47 testInnerHTML(c, "\0", "");
michael@0 48
michael@0 49 c = document.createElement("table");
michael@0 50 testInnerHTML(c, "abc", "abc");
michael@0 51 testInnerHTML(c, "<td>", "<tbody><tr><td></td></tr></tbody>");
michael@0 52 testInnerHTML(c, "</body>", "");
michael@0 53 testInnerHTML(c, "<input>", "<input>");
michael@0 54
michael@0 55 c = document.createElement("tr");
michael@0 56 testInnerHTML(c, "xyz", "xyz");
michael@0 57 testInnerHTML(c, "<td>", "<td></td>");
michael@0 58 testInnerHTML(c, "</body>", "");
michael@0 59 testInnerHTML(c, "<table>", "");
michael@0 60
michael@0 61 c = document.createElement("td");
michael@0 62 testInnerHTML(c, "789", "789");
michael@0 63 testInnerHTML(c, "\0", "");
michael@0 64 testInnerHTML(c, "<td>", "");
michael@0 65
michael@0 66 c = document.createElement("th");
michael@0 67 testInnerHTML(c, "789", "789");
michael@0 68 testInnerHTML(c, "\0", "");
michael@0 69 testInnerHTML(c, "</tr>", "");
michael@0 70
michael@0 71 c = document.createElement("caption");
michael@0 72 testInnerHTML(c, "xyz", "xyz");
michael@0 73 testInnerHTML(c, "\0", "");
michael@0 74 testInnerHTML(c, "<td>", "");
michael@0 75 testInnerHTML(c, "<dd>", "<dd></dd>");
michael@0 76 testInnerHTML(c, "<body>", "");
michael@0 77
michael@0 78 function testTableBody(tag) {
michael@0 79 var c = document.createElement(tag);
michael@0 80 testInnerHTML(c, "abc", "abc");
michael@0 81 testInnerHTML(c, "<td>", "<tr><td></td></tr>");
michael@0 82 testInnerHTML(c, "</body>", "");
michael@0 83 testInnerHTML(c, "<input>", "<input>");
michael@0 84 }
michael@0 85 testTableBody("thead");
michael@0 86 testTableBody("tbody");
michael@0 87 testTableBody("tfoot");
michael@0 88
michael@0 89 c = document.createElement("template");
michael@0 90 testInnerHTML(c, "abc", "abc");
michael@0 91 testInnerHTML(c, "<td>", "<td></td>");
michael@0 92 testInnerHTML(c, "</template>", "");
michael@0 93 testInnerHTML(c, "<input>", "<input>");
michael@0 94
michael@0 95 c = document.createElement("div");
michael@0 96 testInnerHTML(c, "abc", "abc");
michael@0 97 testInnerHTML(c, "<td>", "");
michael@0 98 testInnerHTML(c, "</body>", "");
michael@0 99 testInnerHTML(c, "<input>", "<input>");
michael@0 100
michael@0 101 SimpleTest.finish();
michael@0 102 }
michael@0 103
michael@0 104 addLoadEvent(testInnerHTMLParserInsertionMode);
michael@0 105 SimpleTest.waitForExplicitFinish();
michael@0 106 </script>
michael@0 107 </head>
michael@0 108 <body>
michael@0 109 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=922681">Mozilla Bug 922681</a>
michael@0 110 <pre id="test">
michael@0 111 </pre>
michael@0 112 </body>
michael@0 113 </html>

mercurial