dom/encoding/test/test_utf16_files.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

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4   <meta charset=utf-8>
     5   <title>Test loading various utf-16 files (little or big endian, with or without BOM)</title>
     6   <script type="text/javascript" src="/resources/testharness.js"></script>
     7   <script type="text/javascript" src="/resources/testharnessreport.js"></script>
     8   <link rel="stylesheet" href="file_utf16_be_bom.css">
     9   <link rel="stylesheet" href="file_utf16_le_bom.css">
    10   <script type="text/javascript" src="file_utf16_be_bom.js"></script>
    11   <script type="text/javascript" src="file_utf16_le_bom.js"></script>
    12 </head>
    13 <body>
    14 <div id="log"></div>
    15 <iframe name="ifr1" src="file_utf16_be_bom.xhtml"></iframe>
    16 <iframe name="ifr2" src="file_utf16_le_bom.xhtml"></iframe>
    17 <iframe name="ifr3" src="file_utf16_le_nobom.xhtml"></iframe>
    18 <script>
    20 runTest();
    22 function runTest() {
    23   test(function() {
    24     assert_equals(document.styleSheets[0].cssRules[0].selectorText, ".css1", ".css1 should exist.");
    25     assert_equals(document.styleSheets[1].cssRules[0].selectorText, ".css2", ".css2 should exist.");
    26   }, "Test loading utf-16 css files");
    27   test(function() {
    28     assert_equals(js1, "Unicåde", "js1 should be defined.");
    29     assert_equals(js2, "Unicåde", "js2 should be defined.");
    30   }, "Test loading utf-16 javascript files");
    31   var tests = [
    32     {ifr: ifr1, fails: false, name: "Test loading utf-16, big endian, with BOM"},
    33     {ifr: ifr2, fails: false, name: "Test loading utf-16, little endian, with BOM"},
    34     {ifr: ifr3, fails: true, name: "Test loading utf-16le xml fails"},
    35   ];
    36   tests.forEach(function(test) {
    37     var t = async_test(test.name);
    38     var fails = test.fails;
    39     var ifr = test.ifr;
    40     ifr.onload = ifr.onerror = function() {
    41       t.step(fails ? function() {
    42         assert_equals(ifr.document.body, null, ifr.name + " should NOT load.");
    43       } : function() {
    44         assert_true(ifr.document.body instanceof ifr.HTMLBodyElement, ifr.name + " should load.");
    45       });
    46       t.done();
    47     };
    48   });
    49 }
    51 </script>
    52 </body>
    53 </html>

mercurial