SEC-213: Allow custom redirects based on "redirect" parameter in AbstractProcessingFilter. successfulAuthentication()

http://jira.springframework.org/browse/SEC-213
This commit is contained in:
Luke Taylor
2008-02-28 11:03:05 +00:00
parent 439b0be58e
commit e6e1f2586f
3 changed files with 66 additions and 5 deletions

View File

@@ -571,6 +571,29 @@ public class AbstractProcessingFilterTests extends TestCase {
assertEquals("/error", response.getForwardedUrl());
}
/**
* SEC-213
*/
public void testTargetUrlParameterIsUsedIfPresent() throws Exception {
MockHttpServletRequest request = createMockRequest();
request.setParameter("targetUrl", "/target");
MockFilterConfig config = new MockFilterConfig(null, null);
MockFilterChain chain = new MockFilterChain(true);
MockHttpServletResponse response = new MockHttpServletResponse();
MockAbstractProcessingFilter filter = new MockAbstractProcessingFilter(true);
TargetUrlResolverImpl targetUrlResolver = new TargetUrlResolverImpl();
targetUrlResolver.setTargetUrlParameter("targetUrl");
filter.setTargetUrlResolver(targetUrlResolver);
filter.setDefaultTargetUrl("http://monkeymachine.co.uk/");
filter.setAuthenticationFailureUrl("/error");
executeFilterInContainerSimulator(config, filter, request, response, chain);
assertEquals("/mycontext/target", response.getRedirectedUrl());
}
//~ Inner Classes ==================================================================================================