1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.javascript;
16
17 import org.htmlunit.SimpleWebTestCase;
18 import org.htmlunit.html.HtmlPage;
19 import org.htmlunit.junit.BrowserRunner;
20 import org.htmlunit.junit.annotation.Alerts;
21 import org.junit.Test;
22 import org.junit.runner.RunWith;
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 @RunWith(BrowserRunner.class)
39 public class HtmlUnitScriptableTest extends SimpleWebTestCase {
40
41
42
43
44 @Test
45 @Alerts("past focus")
46 public void callInheritedFunction() throws Exception {
47 final String html = DOCTYPE_HTML
48 + "<html><head><title>foo</title><script>\n"
49 + "function doTest() {\n"
50 + " document.form1.textfield1.focus();\n"
51 + " alert('past focus');\n"
52 + "}\n"
53 + "</script></head><body onload='doTest()'>\n"
54 + "<p>hello world</p>\n"
55 + "<form name='form1'>\n"
56 + " <input type='text' name='textfield1' id='textfield1' value='foo'/>\n"
57 + "</form>\n"
58 + "</body></html>";
59
60 final HtmlPage page = loadPageWithAlerts(html);
61 assertEquals("foo", page.getTitleText());
62 assertSame("focus not changed to textfield1",
63 page.getFormByName("form1").getInputByName("textfield1"),
64 page.getFocusedElement());
65 }
66 }