xhr.html (1837B)
1 <!doctype html> 2 <meta charset="windows-1253"> 3 <title>meta charset in XHR</title> 4 <script src=/resources/testharness.js></script> 5 <script src=/resources/testharnessreport.js></script> 6 7 <script> 8 setup({explicit_done:true}); 9 window.onload = function() { 10 runNextTest(); 11 }; 12 13 let files = [ 14 "after-1kb.html", 15 "after-bogus-after-1kb.html", 16 "after-bogus.html", 17 "after-head-after-1kb-crlf.html", 18 "after-head-after-1kb.html", 19 "after-head-in-1kb-crlf.html", 20 "after-head-in-1kb.html", 21 "baseline.html", 22 "document-write.html", 23 "in-comment.html", 24 "in-noscript-after-template-after-1kb.html", 25 "in-object.html", 26 "in-script.html", 27 "in-style.html", 28 "in-svg.html", 29 "in-svg-in-cdata.html", 30 "in-template-after-1kb.html", 31 "in-template.html", 32 "in-title.html", 33 "ncr.html", 34 "non-ascii-in-comment-before.html", 35 "non-ascii-in-title-before.html", 36 ]; 37 38 function handler() { 39 const prefix = "Test: "; 40 let doc = this.response; 41 test(function() { 42 let link = doc.getElementsByTagName("link")[0]; 43 let match = (link.rel == "match"); 44 let content = doc.documentElement.textContent; 45 let index = content.indexOf(prefix); 46 let c = content.substring(index + prefix.length, index + prefix.length + 1); 47 if (match) { 48 assert_equals(doc.characterSet, "windows-1251", 'Check characterSet'); 49 assert_equals(c, "\u0436", 'Check character'); 50 } else { 51 assert_equals(doc.characterSet, "UTF-8", 'Check characterSet'); 52 assert_equals(c, "\uFFFD", 'Check character'); 53 } 54 }, "Check " + this.thesrc); 55 runNextTest(); 56 } 57 58 function runNextTest() { 59 let file = files.shift(); 60 if (!file) { 61 done(); 62 return; 63 } 64 let xhr = new XMLHttpRequest(); 65 xhr.responseType = "document"; 66 xhr.onload = handler; 67 xhr.thesrc = file; // expando 68 xhr.open("GET", file); 69 xhr.send(); 70 } 71 72 </script>