This is an automated email from the ASF dual-hosted git repository.
remm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new de0cc4cf36 Add simple directory listing test
de0cc4cf36 is described below
commit de0cc4cf36fbb1b7a1a8a51aa1ca41d69642c78d
Author: remm <[email protected]>
AuthorDate: Wed Nov 20 21:55:30 2024 +0100
Add simple directory listing test
---
.../catalina/servlets/TestDefaultServlet.java | 40 ++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/test/org/apache/catalina/servlets/TestDefaultServlet.java
b/test/org/apache/catalina/servlets/TestDefaultServlet.java
index 9842509782..891aabb21a 100644
--- a/test/org/apache/catalina/servlets/TestDefaultServlet.java
+++ b/test/org/apache/catalina/servlets/TestDefaultServlet.java
@@ -680,4 +680,44 @@ public class TestDefaultServlet extends TomcatBaseTest {
Assert.assertEquals(0, out.getLength());
Assert.assertNull(resHeaders.get("Content-Length"));
}
+
+ @Test
+ public void testDirectoryListing() throws Exception {
+ Tomcat tomcat = getTomcatInstance();
+
+ File appDir = new File("test/webapp");
+ Context ctxt = tomcat.addContext("", appDir.getAbsolutePath());
+
+ Wrapper defaultServlet = Tomcat.addServlet(ctxt, "default", new
DefaultServlet());
+ defaultServlet.addInitParameter("listings", "true");
+ defaultServlet.addInitParameter("sortListings", "true");
+ defaultServlet.addInitParameter("sortDirectoriesFirst", "true");
+
+ ctxt.addServletMappingDecoded("/", "default");
+
+ tomcat.start();
+
+ TestCompressedClient client = new TestCompressedClient(getPort());
+
+ client.setRequest(new String[] { "GET / HTTP/1.1" +
SimpleHttpClient.CRLF +
+ "Host: localhost:" + getPort() + SimpleHttpClient.CRLF +
+ "Accept-Language: fr-FR, fr, en" + SimpleHttpClient.CRLF +
+ "Connection: Close" + SimpleHttpClient.CRLF +
+ SimpleHttpClient.CRLF });
+ client.connect();
+ client.processRequest(true);
+ Assert.assertEquals(HttpServletResponse.SC_OK, client.getStatusCode());
+ Assert.assertTrue(client.getResponseBody().contains("Taille"));
+ Assert.assertTrue(client.getResponseBody().contains("<tt>bug43nnn/"));
+
+ client.setRequest(new String[] { "GET /bug43nnn/ HTTP/1.1" +
SimpleHttpClient.CRLF +
+ "Host: localhost:" + getPort() + SimpleHttpClient.CRLF +
+ "Accept-Language: fr-FR, fr, en" + SimpleHttpClient.CRLF +
+ "Connection: Close" + SimpleHttpClient.CRLF +
+ SimpleHttpClient.CRLF });
+ client.connect();
+ client.processRequest(true);
+ Assert.assertEquals(HttpServletResponse.SC_OK, client.getStatusCode());
+
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]