376373: GzipFilter now does not ignore _excludePath + fix for ignored _excludeAgentPatterns if _excludeAgent is set

Change-Id: Ie9940141f9b92b267f4b405ef4ec3ab5dee43be5
This commit is contained in:
Thomas Becker 2012-04-11 14:47:28 +02:00
parent 543d2a18ca
commit 08573701ef
2 changed files with 42 additions and 43 deletions

View File

@ -303,7 +303,7 @@ public class GzipFilter extends UserAgentFilter
}
/**
* Checks to see if the UserAgent is excluded
* Checks to see if the userAgent is excluded
*
* @param ua
* the user agent
@ -336,9 +336,9 @@ public class GzipFilter extends UserAgentFilter
}
/**
* Checks to see if the Path is excluded
* Checks to see if the path is excluded
*
* @param ua
* @param requestURI
* the request uri
* @return boolean true if excluded
*/

View File

@ -31,11 +31,10 @@ public class GzipFilterDefaultTest
public static Collection<String[]> data()
{
String[][] data = new String[][]
{
{ GzipFilter.GZIP },
{ GzipFilter.DEFLATE }
};
{
{ GzipFilter.GZIP },
{ GzipFilter.DEFLATE } };
return Arrays.asList(data);
}
@ -166,88 +165,88 @@ public class GzipFilterDefaultTest
@Test
public void testUserAgentExclusion() throws Exception
{
GzipTester tester = new GzipTester(testingdir, compressionType);
GzipTester tester = new GzipTester(testingdir,compressionType);
FilterHolder holder = tester.setContentServlet(DefaultServlet.class);
holder.setInitParameter("excludedAgents", "foo");
holder.setInitParameter("excludedAgents","foo");
tester.setUserAgent("foo");
int filesize = CompressedResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
tester.prepareServerFile("file.txt",filesize);
try
{
tester.start();
tester.assertIsResponseNotGzipCompressed("file.txt", filesize, HttpStatus.OK_200);
}
tester.assertIsResponseNotGzipCompressed("file.txt",filesize,HttpStatus.OK_200);
}
finally
{
tester.stop();
}
}
@Test
public void testUserAgentExclusionByExcludedAgentPatterns() throws Exception
{
GzipTester tester = new GzipTester(testingdir);
GzipTester tester = new GzipTester(testingdir,compressionType);
FilterHolder holder = tester.setContentServlet(DefaultServlet.class);
holder.setInitParameter("excludedAgents", "bar");
holder.setInitParameter("excludeAgentPatterns", "fo.*");
holder.setInitParameter("excludedAgents","bar");
holder.setInitParameter("excludeAgentPatterns","fo.*");
tester.setUserAgent("foo");
int filesize = GzipResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
int filesize = CompressedResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
tester.prepareServerFile("file.txt",filesize);
try
{
tester.start();
tester.assertIsResponseNotGzipCompressed("file.txt", filesize, HttpStatus.OK_200);
}
tester.assertIsResponseNotGzipCompressed("file.txt",filesize,HttpStatus.OK_200);
}
finally
{
tester.stop();
}
}
@Test
public void testExcludePaths() throws Exception
{
GzipTester tester = new GzipTester(testingdir);
GzipTester tester = new GzipTester(testingdir,compressionType);
FilterHolder holder = tester.setContentServlet(DefaultServlet.class);
holder.setInitParameter("excludePaths", "/context/");
int filesize = GzipResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
holder.setInitParameter("excludePaths","/context/");
int filesize = CompressedResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
tester.prepareServerFile("file.txt",filesize);
try
{
tester.start();
tester.assertIsResponseNotGzipCompressed("file.txt", filesize, HttpStatus.OK_200);
}
tester.assertIsResponseNotGzipCompressed("file.txt",filesize,HttpStatus.OK_200);
}
finally
{
tester.stop();
}
}
@Test
public void testExcludePathPatterns() throws Exception
{
GzipTester tester = new GzipTester(testingdir);
GzipTester tester = new GzipTester(testingdir,compressionType);
FilterHolder holder = tester.setContentServlet(DefaultServlet.class);
holder.setInitParameter("excludePathPatterns", "/cont.*");
int filesize = GzipResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
holder.setInitParameter("excludePathPatterns","/cont.*");
int filesize = CompressedResponseWrapper.DEFAULT_BUFFER_SIZE * 4;
tester.prepareServerFile("file.txt",filesize);
try
{
tester.start();
tester.assertIsResponseNotGzipCompressed("file.txt", filesize, HttpStatus.OK_200);
}
tester.assertIsResponseNotGzipCompressed("file.txt",filesize,HttpStatus.OK_200);
}
finally
{
tester.stop();