tor-browser

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

test_createHTMLDocument.html (2290B)


      1 <!DOCTYPE html>
      2 <title>createHTMLDocument</title>
      3 <script src="/tests/SimpleTest/SimpleTest.js"></script>
      4 <link rel="stylesheet" href="/tests/SimpleTest/test.css" />
      5 <link rel="author" title="Ms2ger" href="mailto:ms2ger@gmail.com">
      6 <link rel="help" href="http://www.whatwg.org/html5/#creating-documents">
      7 <link rel="help" href="http://www.whatwg.org/html5/#document.title">
      8 <link rel="help" href="http://www.whatwg.org/html5/#dom-document-readystate">
      9 <body>
     10 <script>
     11 function isElement(element, localName) {
     12  is(element.localName, localName);
     13  is(element.namespaceURI, "http://www.w3.org/1999/xhtml");
     14  is(element.tagName, localName.toUpperCase());
     15  is(element.nodeName, localName.toUpperCase());
     16  is(element.prefix, null);
     17 }
     18 function checkDoc(title, expectedtitle, normalizedtitle) {
     19  var doc = document.implementation.createHTMLDocument(title);
     20  is(doc.readyState, "complete");
     21  is(doc.compatMode, "CSS1Compat");
     22  // Opera doesn't have a doctype: DSK-311092
     23  ok(doc.doctype, "Need a doctype");
     24  is(doc.doctype.name, "html");
     25  is(doc.doctype.publicId, "");
     26  is(doc.doctype.systemId, "");
     27  isElement(doc.documentElement, "html");
     28  isElement(doc.documentElement.firstChild, "head");
     29  if (title !== undefined) {
     30    is(doc.documentElement.firstChild.childNodes.length, 1);
     31    isElement(doc.documentElement.firstChild.firstChild, "title");
     32    // Doesn't always work out in WebKit.
     33    ok(doc.documentElement.firstChild.firstChild.firstChild, "Need a text node.");
     34    is(doc.documentElement.firstChild.firstChild.firstChild.data, expectedtitle);
     35  } else {
     36    is(doc.documentElement.firstChild.childNodes.length, 0);
     37  }
     38  isElement(doc.documentElement.lastChild, "body");
     39  is(doc.documentElement.lastChild.childNodes.length, 0);
     40  is(doc.title, normalizedtitle);
     41  doc.body.innerHTML = "foo";
     42  is(doc.body.innerHTML, "foo", "innerHTML should work in HTML data documents!");
     43 }
     44 checkDoc("", "", "");
     45 checkDoc(null, "null", "null");
     46 checkDoc(undefined, "", "");
     47 checkDoc("foo  bar baz", "foo  bar baz", "foo bar baz");
     48 checkDoc("foo\t\tbar baz", "foo\t\tbar baz", "foo bar baz");
     49 checkDoc("foo\n\nbar baz", "foo\n\nbar baz", "foo bar baz");
     50 checkDoc("foo\f\fbar baz", "foo\f\fbar baz", "foo bar baz");
     51 checkDoc("foo\r\rbar baz", "foo\r\rbar baz", "foo bar baz");
     52 </script>