tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

DOMParser-parseFromString-encoding.html (1335B)


      1 <!doctype html>
      2 <title>DOMParser encoding test</title>
      3 <meta charset="windows-1252"> <!-- intentional to make sure the results are UTF-8 anyway -->
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 
      7 <script>
      8 "use strict";
      9 
     10 function assertEncoding(doc) {
     11  assert_equals(doc.charset, "UTF-8", "document.charset");
     12  assert_equals(doc.characterSet, "UTF-8", "document.characterSet");
     13  assert_equals(doc.inputEncoding, "UTF-8", "document.characterSet");
     14 }
     15 
     16 setup(() => {
     17  assert_equals(document.characterSet, "windows-1252", "the meta charset must be in effect, making the main document windows-1252");
     18 });
     19 
     20 test(() => {
     21  const parser = new DOMParser();
     22  const doc = parser.parseFromString("", "text/html");
     23 
     24  assertEncoding(doc);
     25 }, "HTML: empty");
     26 
     27 test(() => {
     28  const parser = new DOMParser();
     29  const doc = parser.parseFromString("", "text/xml");
     30 
     31  assertEncoding(doc);
     32 }, "XML: empty");
     33 
     34 test(() => {
     35  const parser = new DOMParser();
     36  const doc = parser.parseFromString(`<meta charset="latin2">`, "text/html");
     37 
     38  assertEncoding(doc);
     39 }, "HTML: meta charset");
     40 
     41 test(() => {
     42  const parser = new DOMParser();
     43  const doc = parser.parseFromString(`<?xml version="1.0" encoding="latin2"?><x/>`, "text/xml");
     44 
     45  assertEncoding(doc);
     46 }, "XML: XML declaration");
     47 </script>