You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2024/10/22 09:53:16 UTC
(tomcat) branch main updated: Add a bit more of XML validation
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 6e442ffc35 Add a bit more of XML validation
6e442ffc35 is described below
commit 6e442ffc35e58944945e926d56998778c45fb71c
Author: remm <re...@apache.org>
AuthorDate: Tue Oct 22 11:52:50 2024 +0200
Add a bit more of XML validation
---
test/org/apache/catalina/servlets/TestWebdavServlet.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/test/org/apache/catalina/servlets/TestWebdavServlet.java b/test/org/apache/catalina/servlets/TestWebdavServlet.java
index 99f4e9bd13..a55f1fb208 100644
--- a/test/org/apache/catalina/servlets/TestWebdavServlet.java
+++ b/test/org/apache/catalina/servlets/TestWebdavServlet.java
@@ -296,6 +296,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
client.processRequest(true);
Assert.assertEquals(WebdavStatus.SC_MULTI_STATUS, client.getStatusCode());
Assert.assertTrue(client.getResponseBody().contains("<T:othercustomprop"));
+ validateXml(client.getResponseBody());
client.setRequest(new String[] { "PROPFIND /file1.txt HTTP/1.1" + SimpleHttpClient.CRLF +
"Host: localhost:" + getPort() + SimpleHttpClient.CRLF +
@@ -339,6 +340,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
Assert.assertTrue(client.getResponseBody().contains("<D:getcontenttype>"));
Assert.assertFalse(client.getResponseBody().contains("<D:getlastmodified>"));
Assert.assertTrue(client.getResponseBody().contains("<myvalue xmlns=\"http://tomcat.apache.org/testsuite\">"));
+ validateXml(client.getResponseBody());
}
@@ -650,6 +652,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
client.processRequest(true);
Assert.assertEquals(WebdavStatus.SC_MULTI_STATUS, client.getStatusCode());
Assert.assertFalse(client.getResponseBody().contains("/myfolder"));
+ validateXml(client.getResponseBody());
}
@@ -813,6 +816,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
}
}
Assert.assertNotNull(lockToken3);
+ validateXml(client.getResponseBody());
client.setRequest(new String[] { "PROPFIND / HTTP/1.1" + SimpleHttpClient.CRLF +
"Host: localhost:" + getPort() + SimpleHttpClient.CRLF +
@@ -826,6 +830,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
String timeoutValue = client.getResponseBody().substring(client.getResponseBody().indexOf("Second-"));
timeoutValue = timeoutValue.substring("Second-".length(), timeoutValue.indexOf('<'));
Assert.assertTrue(Integer.valueOf(timeoutValue).intValue() > 100000);
+ validateXml(client.getResponseBody());
client.setRequest(new String[] { "PUT /myfolder/myfolder2/myfolder4/myfolder5/file4.txt HTTP/1.1" + SimpleHttpClient.CRLF +
"Host: localhost:" + getPort() + SimpleHttpClient.CRLF +
@@ -920,6 +925,7 @@ public class TestWebdavServlet extends TomcatBaseTest {
Assert.assertEquals(WebdavStatus.SC_MULTI_STATUS, client.getStatusCode());
// Verify all the shared locks are cleared
Assert.assertFalse(client.getResponseBody().contains("opaquelocktoken:"));
+ validateXml(client.getResponseBody());
}
@@ -1029,6 +1035,10 @@ public class TestWebdavServlet extends TomcatBaseTest {
}
+ private void validateXml(String xmlContent) throws Exception {
+ SAXParserFactory.newInstance().newSAXParser().getXMLReader().parse(new InputSource(new StringReader(xmlContent)));
+ }
+
private static final class Client extends SimpleHttpClient {
@Override
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org