Serenity Operating System
1describe("Element", () => {
2 loadLocalPage("/res/html/misc/innertext_textcontent.html");
3
4 afterInitialPageLoad(page => {
5 test("Element.innerText", () => {
6 var p = page.document.getElementsByTagName("p")[0];
7 expect(p.innerText).toBe("This is a very small test page :^)");
8
9 // FIXME: Call this on p once that's supported.
10 var b = page.document.getElementsByTagName("b")[0];
11 b.innerText = "foo";
12 expect(b.innerText).toBe("foo");
13 expect(p.innerText).toBe("This is a foo test page :^)");
14
15 p.innerText = "bar";
16 expect(p.innerText).toBe("bar");
17
18 var p = page.document.getElementById("source");
19 // FIXME: The leading and trailing two spaces each are wrong.
20 // FIXME: The text should be affected by the text-transform:uppercase.
21 expect(p.innerText).toBe(` Take a look at
22how this text
23is interpreted below. `);
24 });
25
26 test("Element.namespaceURI basics", () => {
27 const htmlNamespace = "http://www.w3.org/1999/xhtml";
28 const p = page.document.getElementsByTagName("p")[0];
29 expect(p.namespaceURI).toBe(htmlNamespace);
30
31 // createElement always sets the namespace to the HTML namespace in HTML page.documents.
32 const svgElement = page.document.createElement("svg");
33 expect(svgElement.namespaceURI).toBe(htmlNamespace);
34
35 const svgNamespace = "http://www.w3.org/2000/svg";
36 p.innerHTML = "<svg></svg>";
37 const domSVGElement = p.getElementsByTagName("svg")[0];
38 expect(domSVGElement.namespaceURI).toBe(svgNamespace);
39 });
40 });
41 waitForPageToLoad();
42});