1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package net.sourceforge.jwebunit.tests;
20
21 import static net.sourceforge.jwebunit.junit.JWebUnit.assertButtonPresent;
22 import static net.sourceforge.jwebunit.junit.JWebUnit.assertTextFieldEquals;
23 import static net.sourceforge.jwebunit.junit.JWebUnit.assertTextNotPresent;
24 import static net.sourceforge.jwebunit.junit.JWebUnit.assertTextPresent;
25 import static net.sourceforge.jwebunit.junit.JWebUnit.assertTitleEquals;
26 import static net.sourceforge.jwebunit.junit.JWebUnit.beginAt;
27 import static net.sourceforge.jwebunit.junit.JWebUnit.clickButton;
28 import static net.sourceforge.jwebunit.junit.JWebUnit.clickLink;
29 import static net.sourceforge.jwebunit.junit.JWebUnit.clickLinkWithText;
30 import static net.sourceforge.jwebunit.junit.JWebUnit.gotoWindow;
31 import static net.sourceforge.jwebunit.junit.JWebUnit.reset;
32 import static net.sourceforge.jwebunit.junit.JWebUnit.selectOption;
33 import static net.sourceforge.jwebunit.junit.JWebUnit.setBaseUrl;
34 import static net.sourceforge.jwebunit.junit.JWebUnit.setScriptingEnabled;
35 import static net.sourceforge.jwebunit.junit.JWebUnit.setWorkingForm;
36 import static net.sourceforge.jwebunit.junit.JWebUnit.submit;
37
38 import org.junit.Test;
39
40
41
42
43
44
45
46 public class JavaScriptEventsTest extends JWebUnitAPITestCase {
47
48 public void setUp() throws Exception {
49 super.setUp();
50 setBaseUrl(HOST_PATH + "/JavaScriptEventsTest");
51 }
52
53 @Test public void testFormOnSubmit() {
54 beginAt("FormOnSubmit.html");
55 submit();
56 gotoWindow("child");
57 assertTextPresent("on=[submit]");
58 }
59
60 @Test public void testFormOnReset() {
61 beginAt("FormOnSubmit.html");
62 reset();
63 gotoWindow("child");
64 assertTextPresent("on=[reset]");
65 }
66
67 @Test public void testButtonOnClick() {
68 beginAt("FormOnSubmit.html");
69 assertButtonPresent("b1");
70 clickButton("b1");
71 gotoWindow("child");
72 assertTextPresent("on=[click]");
73 }
74
75
76 @Test public void testJavaScriptInFile() {
77 beginAt("index.html");
78 assertTitleEquals("Startpage");
79 clickButton("next");
80 assertTextPresent("Here is the text we expect");
81 }
82
83 @Test
84 public void testLinkAssertsWorkJavascriptDisabled() {
85 setScriptingEnabled(false);
86 beginAt("index.html");
87 clickLink("linkNext");
88 assertTitleEquals("Startpage");
89 assertTextNotPresent("Here is the text we expect");
90 closeBrowser();
91
92 beginAt("index.html");
93 clickButton("next");
94 assertTitleEquals("Startpage");
95 assertTextNotPresent("Here is the text we expect");
96 closeBrowser();
97
98 setScriptingEnabled(true);
99
100 beginAt("index.html");
101 clickLink("linkNext");
102
103 assertTitleEquals("Next page");
104 }
105
106 @Test public void testLinkClickSetsWindowLocation()
107 {
108 beginAt("index.html");
109 assertTitleEquals("Startpage");
110 clickLinkWithText("Next");
111 assertTitleEquals("Next page");
112 }
113
114 @Test public void testOnChangeSetsWindowLocation() throws Exception {
115 beginAt("onchange.html");
116 assertTitleEquals("The Title");
117 selectOption("testSelect", "Value2");
118 assertTitleEquals("Submitted parameters");
119 assertTextPresent("testSelect=[V2]");
120 }
121
122 @Test public void testGreenLink() {
123 beginAt("index.html");
124 assertTextFieldEquals("color", "blue");
125 clickLink("SetColorGreen");
126 assertTextFieldEquals("color", "green");
127 }
128
129 @Test public void testFormOnSubmitSetTarget() {
130 beginAt("FormOnSubmitSetTarget.html");
131 setWorkingForm("formID");
132 submit("go");
133 }
134 }