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.junit.jupiter.api.Test;
21 import org.openqa.selenium.WebDriver;
22 import org.openqa.selenium.htmlunit.HtmlUnitDriver;
23 import org.w3c.dom.Node;
24 import org.w3c.dom.traversal.NodeFilter;
25 import org.w3c.dom.traversal.TreeWalker;
26
27
28
29
30
31
32
33 public final class DomTreeWalkerTest extends WebDriverTestCase {
34
35
36
37
38 @Test
39 public void firstChild() throws Exception {
40 final String html = DOCTYPE_HTML
41 + "<html><head><script>\n"
42 + "function test() {\n"
43 + "}\n"
44 + "</script></head>\n"
45 + "<body onload='test()'>\n"
46 + " <form name='f1'>\n"
47 + " <input>\n"
48 + " <INPUT>\n"
49 + " </form>\n"
50 + "</body></html>";
51
52 final WebDriver driver = loadPage2(html);
53 if (driver instanceof HtmlUnitDriver) {
54 final HtmlPage page = (HtmlPage) getEnclosedPage();
55 final TreeWalker walker = new DomTreeWalker(page.getDocumentElement(), NodeFilter.SHOW_ALL, null, true);
56 final Node node = walker.firstChild();
57 assertTrue(node.getClass().getName(), node instanceof HtmlHead);
58 }
59 }
60 }