001: /*
002: * $Id: AppsTest.java 471754 2006-11-06 14:55:09Z husted $
003: *
004: * Licensed to the Apache Software Foundation (ASF) under one
005: * or more contributor license agreements. See the NOTICE file
006: * distributed with this work for additional information
007: * regarding copyright ownership. The ASF licenses this file
008: * to you under the Apache License, Version 2.0 (the
009: * "License"); you may not use this file except in compliance
010: * with the License. You may obtain a copy of the License at
011: *
012: * http://www.apache.org/licenses/LICENSE-2.0
013: *
014: * Unless required by applicable law or agreed to in writing,
015: * software distributed under the License is distributed on an
016: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
017: * KIND, either express or implied. See the License for the
018: * specific language governing permissions and limitations
019: * under the License.
020: */
021: package org.apache.struts.apps;
022:
023: import java.net.URL;
024:
025: import com.gargoylesoftware.htmlunit.html.HtmlPage;
026: import com.gargoylesoftware.htmlunit.WebClient;
027:
028: import junit.framework.Test;
029: import junit.framework.TestCase;
030: import junit.framework.TestSuite;
031:
032: /**
033: * Verify that each of the example apps starts and (at least)
034: * displays its default page.
035: */
036: public class AppsTest extends TestCase {
037:
038: private String version;
039: private String port;
040:
041: /**
042: * Create the test case
043: *
044: * @param testName name of the test case
045: */
046: public AppsTest(String testName) {
047: super (testName);
048: }
049:
050: public void setUp() throws Exception {
051: super .setUp();
052: version = System.getProperty("version");
053: port = System.getProperty("cargo.servlet.port");
054: }
055:
056: /**
057: * @return the suite of tests being tested
058: */
059: public static Test suite() {
060: TestSuite suite = new TestSuite(AppsTest.class);
061: return new Tomcat5xTestSetup(suite);
062: }
063:
064: /**
065: * Verify that the Struts Blank app has started
066: */
067: public void testStrutsBlank() throws Exception {
068: WebClient webClient = new WebClient();
069: URL url = new URL("http://localhost:" + port + "/struts-blank-"
070: + version);
071: HtmlPage page = (HtmlPage) webClient.getPage(url);
072:
073: assertEquals("Struts Blank Application", page.getTitleText());
074: }
075:
076: /**
077: * Verify that the Struts Cookbook app has started
078: */
079: public void testStrutsCookbook() throws Exception {
080: WebClient webClient = new WebClient();
081: URL url = new URL("http://localhost:" + port
082: + "/struts-cookbook-" + version);
083: HtmlPage page = (HtmlPage) webClient.getPage(url);
084:
085: assertEquals("Struts Cookbook", page.getTitleText());
086: }
087:
088: /**
089: * Verify that the view source function is working
090: * in the Struts Cookbook app.
091: */
092: public void testStrutsCookbookViewSource() throws Exception {
093: WebClient webClient = new WebClient();
094: URL url = new URL("http://localhost:" + port
095: + "/struts-cookbook-" + version + "/source.jsp"
096: + "?src=/WEB-INF/src/java/examples/SuccessAction.java");
097: HtmlPage page = (HtmlPage) webClient.getPage(url);
098:
099: assertEquals("View Source", page.getTitleText());
100: }
101:
102: /**
103: * Verify that the Struts Examples app has started
104: */
105: public void testStrutsExamples() throws Exception {
106: WebClient webClient = new WebClient();
107: URL url = new URL("http://localhost:" + port
108: + "/struts-examples-" + version);
109: HtmlPage page = (HtmlPage) webClient.getPage(url);
110:
111: assertEquals("Struts Examples", page.getTitleText());
112: }
113:
114: /**
115: * Verify that the Struts Faces Example 1 app has started
116: */
117: public void testStrutsFacesExample1() throws Exception {
118: WebClient webClient = new WebClient();
119: URL url = new URL("http://localhost:" + port
120: + "/struts-faces-example1-" + version);
121: HtmlPage page = (HtmlPage) webClient.getPage(url);
122:
123: assertEquals("MailReader Demonstration Application", page
124: .getTitleText());
125: }
126:
127: /**
128: * Verify that the Struts Faces Example 2 app has started
129: */
130: public void testStrutsFacesExample2() throws Exception {
131: WebClient webClient = new WebClient();
132: URL url = new URL("http://localhost:" + port
133: + "/struts-faces-example2-" + version);
134: HtmlPage page = (HtmlPage) webClient.getPage(url);
135:
136: assertEquals("Struts+Tiles+Faces Example Application", page
137: .getTitleText());
138: }
139:
140: /**
141: * Verify that the Struts Mailreader app has started
142: */
143: public void testStrutsMailreader() throws Exception {
144: WebClient webClient = new WebClient();
145: URL url = new URL("http://localhost:" + port
146: + "/struts-mailreader-" + version);
147: HtmlPage page = (HtmlPage) webClient.getPage(url);
148:
149: assertEquals("MailReader Demonstration Application", page
150: .getTitleText());
151: }
152:
153: /**
154: * Verify that the Struts Scripting Mailreader app has started
155: */
156: public void testStrutsScriptingMailreader() throws Exception {
157: WebClient webClient = new WebClient();
158: URL url = new URL("http://localhost:" + port
159: + "/struts-scripting-mailreader-" + version);
160: HtmlPage page = (HtmlPage) webClient.getPage(url);
161:
162: assertEquals("MailReader Demonstration Application", page
163: .getTitleText());
164: }
165:
166: /**
167: * Verify that the Struts EL Exercise Taglib app has started
168: */
169: public void testStrutsELExcerciseTaglib() throws Exception {
170: WebClient webClient = new WebClient();
171: URL url = new URL("http://localhost:" + port
172: + "/struts-el-example-" + version);
173: HtmlPage page = (HtmlPage) webClient.getPage(url);
174:
175: assertEquals("Struts-EL Test Application", page.getTitleText());
176: }
177:
178: }
|