1 package com.atlassian.core.filters;
2
3 import junit.framework.TestCase;
4
5 import javax.servlet.Filter;
6 import javax.servlet.FilterChain;
7 import javax.servlet.ServletRequest;
8 import javax.servlet.ServletResponse;
9 import javax.servlet.http.HttpServletResponse;
10
11 public class TestAbstractEncodingFilterContentLocationHandling extends TestCase
12 {
13 private ServletStubs.Request request;
14 private ServletStubs.Response response;
15 private Filter encodingFilter;
16
17 protected void setUp() throws Exception
18 {
19 super.setUp();
20 request = ServletStubs.getRequestInstance();
21 response = ServletStubs.getResponseInstance();
22 encodingFilter = new StubEncodingFilter();
23 }
24
25 public void testContentLocationHeaderCannotBeSet() throws Exception
26 {
27 encodingFilter.doFilter(request, response, new FilterChain() {
28 public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse)
29 {
30 ((HttpServletResponse) servletResponse).setHeader("Content-Location", "/context");
31 }
32 });
33
34 assertNull("content location should not be set", response.getHeader("Content-Location"));
35 }
36
37 public void testContentLocationHeaderCannotBeAdded() throws Exception
38 {
39 encodingFilter.doFilter(request, response, new FilterChain() {
40 public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse)
41 {
42 ((HttpServletResponse) servletResponse).addHeader("Content-Location", "/context");
43 }
44 });
45
46 assertNull("content location should not be set", response.getHeader("Content-Location"));
47 }
48 }