private void assertFilterInvoked(String requestUri, String pattern) throws Exception { request.setRequestURI(request.getContextPath() + requestUri); filter = new PatternMappingFilterProxy(delegate, pattern); filter.doFilter(request, response, filterChain); assertThat(delegate.request, equalTo((ServletRequest) request)); assertThat(delegate.response, equalTo((ServletResponse) response)); assertThat(delegate.chain, equalTo((FilterChain) filterChain)); delegate = new MockFilter(); }
private void assertFilterNotInvoked(String requestUri, String pattern) throws Exception { request.setRequestURI(request.getContextPath() + requestUri); filter = new PatternMappingFilterProxy(delegate, pattern); filter.doFilter(request, response, filterChain); assertThat(delegate.request, equalTo((ServletRequest) null)); assertThat(delegate.response, equalTo((ServletResponse) null)); assertThat(delegate.chain, equalTo((FilterChain) null)); assertThat(filterChain.getRequest(), equalTo((ServletRequest) request)); assertThat(filterChain.getResponse(), equalTo((ServletResponse) response)); filterChain = new MockFilterChain(); }
private MockHttpServletRequest websocketHttpRequest(String mapping) { MockHttpServletRequest request = sockjsHttpRequest(mapping); request.setRequestURI(mapping); return request; }
@Test public void getRequestURLWithNullRequestUri() { request.setRequestURI(null); StringBuffer requestURL = request.getRequestURL(); assertEquals("http://localhost", requestURL.toString()); }
@Test public void mvcMatcherPathVariables() throws Exception { loadConfig(MvcMatcherPathVariablesConfig.class); this.request.setRequestURI("/user/user"); this.springSecurityFilterChain.doFilter(this.request, this.response, this.chain); assertThat(this.response.getStatus()).isEqualTo(HttpServletResponse.SC_OK); this.setup(); this.request.setRequestURI("/user/deny"); this.springSecurityFilterChain.doFilter(this.request, this.response, this.chain); assertThat(this.response.getStatus()) .isEqualTo(HttpServletResponse.SC_UNAUTHORIZED); }
@Override public MockHttpServletRequest postProcessRequest(MockHttpServletRequest request) { request.setServerPort(8080); request.setRequestURI(fullPath); request.setServerName(host); return request; } })
@Test public void doFilterWhenAuthorizationResponseUrlDoesNotMatchAuthorizationRequestRedirectUriThenNotProcessed() throws Exception { String requestUri = "/callback/client-1"; MockHttpServletRequest request = new MockHttpServletRequest("GET", requestUri); request.setServletPath(requestUri); request.addParameter(OAuth2ParameterNames.CODE, "code"); request.addParameter(OAuth2ParameterNames.STATE, "state"); HttpServletResponse response = mock(HttpServletResponse.class); FilterChain filterChain = mock(FilterChain.class); this.setUpAuthorizationRequest(request, response, this.registration1); request.setRequestURI(requestUri + "-no-match"); this.filter.doFilter(request, response, filterChain); verify(filterChain).doFilter(any(HttpServletRequest.class), any(HttpServletResponse.class)); }
private MockHttpServletRequest sockjsHttpRequest(String mapping) { MockHttpServletRequest request = new MockHttpServletRequest("GET", ""); request.setMethod("GET"); request.setAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, "/289/tpyx6mde/websocket"); request.setRequestURI(mapping + "/289/tpyx6mde/websocket"); request.getSession().setAttribute(sessionAttr, "sessionValue"); request.setAttribute(CsrfToken.class.getName(), token); return request; }
@Test public void getRequestURL() { request.setServerPort(8080); request.setRequestURI("/path"); assertEquals("http://localhost:8080/path", request.getRequestURL().toString()); request.setScheme("https"); request.setServerName("example.com"); request.setServerPort(8443); assertEquals("https://example.com:8443/path", request.getRequestURL().toString()); }
@Test public void mvcMatcher() throws Exception { loadConfig(MvcMatcherConfig.class); this.request.setRequestURI("/path"); this.springSecurityFilterChain.doFilter(this.request, this.response, this.chain); assertThat(this.response.getStatus()) .isEqualTo(HttpServletResponse.SC_UNAUTHORIZED); setup(); this.request.setRequestURI("/path.html"); this.springSecurityFilterChain.doFilter(this.request, this.response, this.chain); assertThat(this.response.getStatus()) .isEqualTo(HttpServletResponse.SC_UNAUTHORIZED); setup(); this.request.setServletPath("/path/"); this.springSecurityFilterChain.doFilter(this.request, this.response, this.chain); assertThat(this.response.getStatus()) .isEqualTo(HttpServletResponse.SC_UNAUTHORIZED); }
@Test public void testGetStaticResource() throws Exception { request.setRequestURI("/stagemonitor/static/test.html"); fileServlet.service(request, response); assertEquals(200, response.getStatus()); assertEquals("test", response.getContentAsString()); assertTrue(response.getContentType().equals("text/html") || response.getContentType().equals("application/octet-stream")); }
@Before public void setUp() { this.casServiceUrl = "https://localhost:8443/j_spring_security_cas"; this.request = new MockHttpServletRequest(); this.request.setScheme("https"); this.request.setServerName("localhost"); this.request.setServerPort(8443); this.request.setRequestURI("/cas-sample/secure/"); this.artifactPattern = DefaultServiceAuthenticationDetails .createArtifactPattern(ServiceProperties.DEFAULT_CAS_ARTIFACT_PARAMETER); }
@Test public void saveClientRedirect_On_Regular_Get() throws Exception { request.setSession(session); request.setScheme("http"); request.setServerName("localhost"); request.setRequestURI("/test"); request.setMethod(HttpMethod.GET.name()); spy.saveRequest(request, new MockHttpServletResponse()); verify(spy, times(1)).saveClientRedirect(request, "http://localhost/test"); }
@Test public void doFilterWhenAuthorizationResponseSuccessHasSavedRequestThenRedirectedToSavedRequest() throws Exception { String requestUri = "/saved-request"; MockHttpServletRequest request = new MockHttpServletRequest("GET", requestUri); request.setServletPath(requestUri); MockHttpServletResponse response = new MockHttpServletResponse(); RequestCache requestCache = new HttpSessionRequestCache(); requestCache.saveRequest(request, response); requestUri = "/callback/client-1"; request.setRequestURI(requestUri); request.addParameter(OAuth2ParameterNames.CODE, "code"); request.addParameter(OAuth2ParameterNames.STATE, "state"); FilterChain filterChain = mock(FilterChain.class); this.setUpAuthorizationRequest(request, response, this.registration1); this.setUpAuthenticationResult(this.registration1); this.filter.doFilter(request, response, filterChain); assertThat(response.getRedirectedUrl()).isEqualTo("http://localhost/saved-request"); }
@Test public void testNormalOperationWithRenewFalse() throws Exception { ServiceProperties sp = new ServiceProperties(); sp.setSendRenew(false); sp.setService("https://mycompany.com/bigWebApp/login/cas"); CasAuthenticationEntryPoint ep = new CasAuthenticationEntryPoint(); ep.setLoginUrl("https://cas/login"); ep.setServiceProperties(sp); MockHttpServletRequest request = new MockHttpServletRequest(); request.setRequestURI("/some_path"); MockHttpServletResponse response = new MockHttpServletResponse(); ep.afterPropertiesSet(); ep.commence(request, response, null); assertThat("https://cas/login?service=" + URLEncoder.encode( "https://mycompany.com/bigWebApp/login/cas", "UTF-8")).isEqualTo( response.getRedirectedUrl()); }
@Test public void testGetStaticResourceDirUp() throws Exception { request.setRequestURI("/stagemonitor/static/../test2.js"); fileServlet.service(request, response); assertEquals(404, response.getStatus()); assertEquals("", response.getContentAsString()); } }
private FilterInvocation createFilterInvocation(String path, String method) { MockHttpServletRequest request = new MockHttpServletRequest("GET", ""); request.setRequestURI(null); request.setMethod(method); request.setServletPath(path); return new FilterInvocation(request, new MockHttpServletResponse(), new MockFilterChain()); } }
@Test public void testGetBaseURL() throws Exception { MockHttpServletRequest request = new MockHttpServletRequest(); request.setScheme("http"); request.setServerName("login.domain"); request.setRequestURI("/something"); request.setServletPath("/something"); ServletRequestAttributes attrs = new ServletRequestAttributes(request); RequestContextHolder.setRequestAttributes(attrs); assertEquals("http://login.domain", UaaUrlUtils.getBaseURL(request)); }
@Test public void testGetBaseURLWhenPathMatchesHostname() throws Exception { MockHttpServletRequest request = new MockHttpServletRequest(); request.setScheme("http"); request.setServerName("login.domain"); request.setRequestURI("/login"); request.setServletPath("/login"); ServletRequestAttributes attrs = new ServletRequestAttributes(request); RequestContextHolder.setRequestAttributes(attrs); assertEquals("http://login.domain", UaaUrlUtils.getBaseURL(request)); }
@Test public void testGetBaseURLOnLocalhost() throws Exception { MockHttpServletRequest request = new MockHttpServletRequest(); request.setScheme("http"); request.setServerName("localhost"); request.setServerPort(8080); request.setRequestURI("/uaa/something"); request.setServletPath("/something"); ServletRequestAttributes attrs = new ServletRequestAttributes(request); RequestContextHolder.setRequestAttributes(attrs); assertEquals("http://localhost:8080/uaa", UaaUrlUtils.getBaseURL(request)); }