diff options
Diffstat (limited to 'apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java')
-rw-r--r-- | apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java | 41 |
1 files changed, 35 insertions, 6 deletions
diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java index 858701f67e..6221c1d694 100644 --- a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java +++ b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java @@ -25,19 +25,21 @@ import java.io.File; import java.io.IOException; import java.net.URI; +import javax.servlet.jsp.JspException; + import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.toolchain.test.FS; +import org.eclipse.jetty.toolchain.test.JAR; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.toolchain.test.SimpleRequest; -import org.eclipse.jetty.webapp.WebAppContext; import org.eclipse.jetty.webapp.Configuration; +import org.eclipse.jetty.webapp.WebAppContext; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; -@Ignore public class JstlTest { private static Server server; @@ -54,6 +56,14 @@ public class JstlTest // Setup WebAppContext File testWebAppDir = MavenTestingUtils.getProjectDir("src/test/webapp"); + + // Prepare WebApp libs + File libDir = new File(testWebAppDir, "WEB-INF/lib"); + FS.ensureDirExists(libDir); + File testTagLibDir = MavenTestingUtils.getProjectDir("src/test/taglibjar"); + JAR.create(testTagLibDir,new File(libDir, "testtaglib.jar")); + + // Configure WebAppContext Configuration.ClassList classlist = Configuration.ClassList .setServerDefault(server); @@ -61,7 +71,6 @@ public class JstlTest classlist.addBefore( "org.eclipse.jetty.webapp.JettyWebXmlConfiguration", "org.eclipse.jetty.annotations.AnnotationConfiguration"); - WebAppContext context = new WebAppContext(); context.setContextPath("/"); @@ -99,8 +108,28 @@ public class JstlTest assertThat("Response should be JSP processed", resp, not(containsString("<c:url"))); assertThat("Response", resp, containsString("[c:url value] = /ref.jsp;jsessionid=")); assertThat("Response", resp, containsString("[c:url param] = ref.jsp;key=value;jsessionid=")); - - System.err.println("Response:"); - System.err.println(resp); + } + + @Test + public void testCatchBasic() throws IOException + { + SimpleRequest req = new SimpleRequest(baseUri); + String resp = req.getString("/catch-basic.jsp"); + assertThat("Response should be JSP processed", resp, not(containsString("<c:catch"))); + assertThat("Response", resp, containsString("[c:catch] exception : " + JspException.class.getName())); + assertThat("Response", resp, containsString("[c:catch] exception.message : In <parseNumber>")); + } + + @Test + @Ignore + public void testCatchTaglib() throws IOException + { + SimpleRequest req = new SimpleRequest(baseUri); + String resp = req.getString("/catch-taglib.jsp"); + System.out.println("resp = " + resp); + assertThat("Response should be JSP processed", resp, not(containsString("<c:catch"))); + assertThat("Response should be JSP processed", resp, not(containsString("<jtest:errortest"))); + assertThat("Response", resp, containsString("[jtest:errorhandler] exception : ")); + assertThat("Response", resp, containsString("[jtest:errorhandler] exception.message : ")); } } |