@Test public void buildRequestServletPath() throws Exception { MockHttpServletRequest actualRequest = requestBuilder.buildRequest(servletContext); assertThat(actualRequest.getServletPath(), equalTo("/this/here")); }
@Test public void buildRequestAndAntPathRequestMatcher() throws Exception { webRequest.setUrl(new URL("http://example.com/app/login/authenticate")); MockHttpServletRequest actualRequest = requestBuilder.buildRequest(servletContext); // verify it is going to work with Spring Security's AntPathRequestMatcher assertThat(actualRequest.getPathInfo(), nullValue()); assertThat(actualRequest.getServletPath(), equalTo("/login/authenticate")); }
@Test public void testRequiresAuthenticationProxyRequest() { CasAuthenticationFilter filter = new CasAuthenticationFilter(); MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); request.setServletPath("/pgtCallback"); assertThat(filter.requiresAuthentication(request, response)).isFalse(); filter.setProxyReceptorUrl(request.getServletPath()); assertThat(filter.requiresAuthentication(request, response)).isFalse(); filter.setProxyGrantingTicketStorage(mock(ProxyGrantingTicketStorage.class)); assertThat(filter.requiresAuthentication(request, response)).isTrue(); request.setServletPath("/other"); assertThat(filter.requiresAuthentication(request, response)).isFalse(); }
@Test public void testChainNotInvokedForProxyReceptor() throws Exception { CasAuthenticationFilter filter = new CasAuthenticationFilter(); MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); FilterChain chain = mock(FilterChain.class); request.setServletPath("/pgtCallback"); filter.setProxyGrantingTicketStorage(mock(ProxyGrantingTicketStorage.class)); filter.setProxyReceptorUrl(request.getServletPath()); filter.doFilter(request, response, chain); verifyZeroInteractions(chain); } }
@Test public void contextPathEmpty() { this.builder = new MockHttpServletRequestBuilder(HttpMethod.GET, "/foo"); MockHttpServletRequest request = this.builder.buildRequest(this.servletContext); assertEquals("", request.getContextPath()); assertEquals("", request.getServletPath()); assertEquals("/foo", request.getPathInfo()); }
@Test public void testAuthenticateProxyUrl() throws Exception { CasAuthenticationFilter filter = new CasAuthenticationFilter(); MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); request.setServletPath("/pgtCallback"); filter.setProxyGrantingTicketStorage(mock(ProxyGrantingTicketStorage.class)); filter.setProxyReceptorUrl(request.getServletPath()); assertThat(filter.attemptAuthentication(request, response)).isNull(); }
filter.setFilterProcessesUrl(request.getServletPath()); SecurityContextHolder.clearContext(); filter.doFilter(request, response, chain);
@Test public void contextPathServletPathEmpty() { this.builder = new MockHttpServletRequestBuilder(HttpMethod.GET, "/travel/hotels/42"); this.builder.contextPath("/travel"); MockHttpServletRequest request = this.builder.buildRequest(this.servletContext); assertEquals("/travel", request.getContextPath()); assertEquals("", request.getServletPath()); assertEquals("/hotels/42", request.getPathInfo()); }
@Test public void contextPathServletPath() { this.builder = new MockHttpServletRequestBuilder(HttpMethod.GET, "/travel/main/hotels/42"); this.builder.contextPath("/travel"); this.builder.servletPath("/main"); MockHttpServletRequest request = this.builder.buildRequest(this.servletContext); assertEquals("/travel", request.getContextPath()); assertEquals("/main", request.getServletPath()); assertEquals("/hotels/42", request.getPathInfo()); }
@Test public void contextPathServletPathInfoEmpty() { this.builder = new MockHttpServletRequestBuilder(HttpMethod.GET, "/travel/hotels/42"); this.builder.contextPath("/travel"); this.builder.servletPath("/hotels/42"); MockHttpServletRequest request = this.builder.buildRequest(this.servletContext); assertEquals("/travel", request.getContextPath()); assertEquals("/hotels/42", request.getServletPath()); assertNull(request.getPathInfo()); }
@Test public void contextPathServletPathInfo() { this.builder = new MockHttpServletRequestBuilder(HttpMethod.GET, "/"); this.builder.servletPath("/index.html"); this.builder.pathInfo(null); MockHttpServletRequest request = this.builder.buildRequest(this.servletContext); assertEquals("", request.getContextPath()); assertEquals("/index.html", request.getServletPath()); assertNull(request.getPathInfo()); }
@Override public String getRequestUrl(String baseUri, boolean includeServletPath) { final String servletPath = includeServletPath ? delegate.getServletPath() : ""; final String pathInfo = delegate.getPathInfo() == null ? "" : delegate.getPathInfo(); return baseUri == null ? delegate.getRequestURL().toString() : (baseUri + servletPath + pathInfo); }
@Override public String getRequestUrl(String baseUri, boolean includeServletPath) { final String servletPath = includeServletPath ? delegate.getServletPath() : ""; final String pathInfo = delegate.getPathInfo() == null ? "" : delegate.getPathInfo(); return baseUri == null ? delegate.getRequestURL().toString() : (baseUri + servletPath + pathInfo); }
public void testDeleteAdaptor() throws IOException, ServletException { String adaptorId = agent.getAdaptorList().keySet().iterator().next(); request.setServletPath("/adaptor/" + adaptorId); request.setRequestURI(request.getContextPath() + request.getServletPath()); //assert agent assertEquals("Incorrect total number of adaptors", 1, agent.adaptorCount()); request.setMethod("DELETE"); servlet.service(request, response); // assert response assertEquals("Unexpected response status", 200, response.getStatus()); //assert agent assertEquals("Incorrect total number of adaptors", 0, agent.adaptorCount()); }
public void testGetJSON() throws IOException, ServletException { request.setServletPath("/adaptor"); request.setRequestURI(request.getContextPath() + request.getServletPath()); request.addHeader("Accept", "application/json"); request.setMethod("GET"); servlet.service(request, response); //assert agent assertEquals("Incorrect total number of adaptors", 1, agent.adaptorCount()); }
public void testGetInvalidViewType() throws IOException, ServletException { request.setServletPath("/adaptor"); request.setRequestURI(request.getContextPath() + request.getServletPath()); request.addHeader("Accept", "unsupportedViewType"); request.setMethod("GET"); servlet.service(request, response); // assert response assertEquals("Unexpected response status", 406, response.getStatus()); }
public void testGetXml() throws IOException, ServletException { request.setServletPath("/adaptor"); request.setRequestURI(request.getContextPath() + request.getServletPath()); request.addHeader("Accept", "application/xml"); request.setMethod("GET"); servlet.service(request, response); // assert response assertXmlResponse(response, 1); //assert agent assertEquals("Incorrect total number of adaptors", 1, agent.adaptorCount()); }
public void testAddAdaptor() throws IOException, ServletException { request.setServletPath("/adaptor"); request.setRequestURI(request.getContextPath() + request.getServletPath()); request.addHeader("Content-Type", MediaType.APPLICATION_JSON); request.addHeader("Accept", MediaType.APPLICATION_JSON); response = new MockHttpServletResponse(); request.setServletPath("/adaptor"); request.setRequestURI(request.getContextPath() + request.getServletPath()); request.addHeader("Accept", MediaType.APPLICATION_XML); request.addHeader("Content-Type", MediaType.APPLICATION_XML);