Use testRunner instead of layoutTestController in fast/doctypes, dom, dynamic, encodi...
[WebKit-https.git] / LayoutTests / fast / dom / HTMLDocument / object-by-name-or-id.html
1 <body>
2
3 <p>This tests when object elements are accessible by name or id directly as properties of the
4 document object. IE allows this only if the object has not child nodes other than param and
5 whitespace anonymous text. A PASS result means that behavior matches IE. WebKit&rsquo;s results for comments differ.
6 </p>
7
8 <hr>
9
10 <script>
11 if (window.testRunner)
12     window.testRunner.dumpAsText();
13 </script>
14
15 <div style="visibility: hidden; width: 0px; height: 0px;">
16 <object name="object1" width="0" height="0"></object>
17 <object name="object2" width="0" height="0"><param name="p" value="v"></object>
18 <object name="object5" width="0" height="0"><param name="p" value="v">    </object>
19 <object name="object9" width="0" height="0"><param name="p" value="v"><!-- --></object>
20 <object name="object11" width="0" height="0"><param name="p" value="v"><!-- comment --></object>
21 <object name="object6" width="0" height="0"><param name="p" value="v">text</object>
22 <object name="object13" width="0" height="0"><param name="p" value="v"><img width="0" height="0"></object>
23 <object id="object3" width="0" height="0"></object>
24 <object id="object4" width="0" height="0"><param name="p" value="v"></object>
25 <object id="object8" width="0" height="0"><param name="p" value="v">    </object>
26 <object id="object10" width="0" height="0"><param name="p" value="v"><!-- --></object>
27 <object id="object12" width="0" height="0"><param name="p" value="v"><!-- comment --></object>
28 <object id="object7" width="0" height="0"><param name="p" value="v">text</object>
29 <object id="object14" width="0" height="0"><param name="p" value="v"><img width="0" height="0"></object>
30 </div>
31
32 <pre id="results">
33 Results:<br>
34 </pre>
35
36 <script>
37 function print(x)
38 {
39    document.getElementById("results").innerHTML += x;
40 }
41
42 function testProperty(description, propName, IE) {
43     print(description);
44     print(":");
45     var propVal = document[propName];
46
47     print(!propVal == IE ? " FAIL" : " PASS");
48     print("<br>");
49 }
50
51 print("By name:<br>");
52 testProperty("no children", "object1", true);
53 testProperty("param", "object2", true);
54 testProperty("param and whitespace", "object5", true);
55 testProperty("param and empty comment", "object9", false);
56 testProperty("param and non-empty comment", "object11", false);
57 testProperty("param and text", "object6", false);
58 testProperty("param and img", "object13", false);
59 print("<br>By id:<br>");
60 testProperty("no children", "object3", true);
61 testProperty("param", "object4", true);
62 testProperty("param and whitespace", "object8", true);
63 testProperty("param and empty comment", "object10", false);
64 testProperty("param and non-empty comment", "object12", false);
65 testProperty("param and text", "object7", false);
66 testProperty("param and img", "object14", false);
67
68 </script>
69 </body>