test_utf16_files.html (1993B)
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> 19 20 runTest(); 21 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 } 50 51 </script> 52 </body> 53 </html>