You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2019/11/11 15:01:17 UTC

[tomcat] 01/03: Convert TestExpireFilter to use the built-in getUrl() methods

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit c5a962eaba0ad274e205a2481854b6b3356ca998
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon Nov 11 10:29:01 2019 +0000

    Convert TestExpireFilter to use the built-in getUrl() methods
    
    This is to support future changes to the tests for related to bug 63909
---
 .../apache/catalina/filters/TestExpiresFilter.java | 30 +++++++++++++++-------
 1 file changed, 21 insertions(+), 9 deletions(-)

diff --git a/test/org/apache/catalina/filters/TestExpiresFilter.java b/test/org/apache/catalina/filters/TestExpiresFilter.java
index b37ca43..d6a2429 100644
--- a/test/org/apache/catalina/filters/TestExpiresFilter.java
+++ b/test/org/apache/catalina/filters/TestExpiresFilter.java
@@ -19,9 +19,10 @@ package org.apache.catalina.filters;
 
 import java.io.IOException;
 import java.net.HttpURLConnection;
-import java.net.URL;
 import java.util.Calendar;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.Map.Entry;
 import java.util.StringTokenizer;
 import java.util.TimeZone;
@@ -41,6 +42,7 @@ import org.apache.catalina.filters.ExpiresFilter.ExpiresConfiguration;
 import org.apache.catalina.filters.ExpiresFilter.StartingPoint;
 import org.apache.catalina.startup.Tomcat;
 import org.apache.catalina.startup.TomcatBaseTest;
+import org.apache.tomcat.util.buf.ByteChunk;
 import org.apache.tomcat.util.descriptor.web.FilterDef;
 import org.apache.tomcat.util.descriptor.web.FilterMap;
 
@@ -408,16 +410,15 @@ public class TestExpiresFilter extends TomcatBaseTest {
             long timeBeforeInMillis = System.currentTimeMillis();
 
             // TEST
-            HttpURLConnection httpURLConnection = (HttpURLConnection) new URL(
-                    "http://localhost:" + tomcat.getConnector().getLocalPort() +
-                            "/test").openConnection();
+            ByteChunk bc = new ByteChunk();
+            Map<String,List<String>> responseHeaders = new HashMap<>();
+            int rc = getUrl("http://localhost:" + getPort() + "/test", bc, responseHeaders);
 
             // VALIDATE
-            Assert.assertEquals(expectedResponseStatusCode,
-                    httpURLConnection.getResponseCode());
+            Assert.assertEquals(expectedResponseStatusCode, rc);
 
             StringBuilder msg = new StringBuilder();
-            for (Entry<String, List<String>> field : httpURLConnection.getHeaderFields().entrySet()) {
+            for (Entry<String, List<String>> field : responseHeaders.entrySet()) {
                 for (String value : field.getValue()) {
                     msg.append((field.getKey() == null ? "" : field.getKey() +
                             ": ") +
@@ -428,7 +429,12 @@ public class TestExpiresFilter extends TomcatBaseTest {
 
             Integer actualMaxAgeInSeconds;
 
-            String cacheControlHeader = httpURLConnection.getHeaderField("Cache-Control");
+            String cacheControlHeader = null;
+            List<String> cacheControlHeaders = responseHeaders.get("Cache-Control");
+            if (cacheControlHeaders != null && cacheControlHeaders.size() == 1) {
+                cacheControlHeader = cacheControlHeaders.get(0);
+            }
+
             if (cacheControlHeader == null) {
                 actualMaxAgeInSeconds = null;
             } else {
@@ -459,13 +465,19 @@ public class TestExpiresFilter extends TomcatBaseTest {
 
             Assert.assertNotNull(actualMaxAgeInSeconds);
 
+            String contentType = null;
+            List<String> contentTypeHeaders = responseHeaders.get("Content-Type");
+            if (contentTypeHeaders != null && contentTypeHeaders.size() == 1) {
+                contentType = contentTypeHeaders.get(0);
+            }
+
             int deltaInSeconds = Math.abs(actualMaxAgeInSeconds.intValue() -
                     expectedMaxAgeInSeconds.intValue());
             Assert.assertTrue("actualMaxAgeInSeconds: " +
                     actualMaxAgeInSeconds + ", expectedMaxAgeInSeconds: " +
                     expectedMaxAgeInSeconds + ", request time: " +
                     timeBeforeInMillis + " for content type " +
-                    httpURLConnection.getContentType(), deltaInSeconds < 3);
+                    contentType, deltaInSeconds < 3);
 
         } finally {
             tomcat.stop();


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org