1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.platform.dom.traversal;
16
17 import org.htmlunit.WebDriverTestCase;
18 import org.htmlunit.html.HtmlHead;
19 import org.htmlunit.html.HtmlPage;
20 import org.htmlunit.junit.BrowserRunner;
21 import org.junit.Test;
22 import org.junit.runner.RunWith;
23 import org.openqa.selenium.WebDriver;
24 import org.openqa.selenium.htmlunit.HtmlUnitDriver;
25 import org.w3c.dom.Node;
26 import org.w3c.dom.traversal.NodeFilter;
27 import org.w3c.dom.traversal.TreeWalker;
28
29
30
31
32
33
34
35 @RunWith(BrowserRunner.class)
36 public final class DomTreeWalkerTest extends WebDriverTestCase {
37
38
39
40
41 @Test
42 public void firstChild() throws Exception {
43 final String html = DOCTYPE_HTML
44 + "<html><head><script>\n"
45 + "function test() {\n"
46 + "}\n"
47 + "</script></head>\n"
48 + "<body onload='test()'>\n"
49 + " <form name='f1'>\n"
50 + " <input>\n"
51 + " <INPUT>\n"
52 + " </form>\n"
53 + "</body></html>";
54
55 final WebDriver driver = loadPage2(html);
56 if (driver instanceof HtmlUnitDriver) {
57 final HtmlPage page = (HtmlPage) getEnclosedPage();
58 final TreeWalker walker = new DomTreeWalker(page.getDocumentElement(), NodeFilter.SHOW_ALL, null, true);
59 final Node node = walker.firstChild();
60 assertTrue(node.getClass().getName(), node instanceof HtmlHead);
61 }
62 }
63 }