List of usage examples for org.springframework.mock.web MockFilterChain MockFilterChain
public MockFilterChain()
From source file:com.github.woonsan.katharsis.servlet.KatharsisFilterTest.java
@Test public void onSimpleCollectionGetShouldReturnCollectionOfResources() throws Exception { MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setMethod("GET"); request.setContextPath(""); request.setServletPath(null);// ww w . ja v a2 s. c o m request.setPathInfo(null); request.setRequestURI("/api/tasks/"); request.setContentType(JsonApiMediaType.APPLICATION_JSON_API); request.addHeader("Accept", "*/*"); MockHttpServletResponse response = new MockHttpServletResponse(); katharsisFilter.doFilter(request, response, filterChain); String responseContent = response.getContentAsString(); log.debug("responseContent: {}", responseContent); assertNotNull(responseContent); assertJsonPartEquals("tasks", responseContent, "data[0].type"); assertJsonPartEquals("\"1\"", responseContent, "data[0].id"); assertJsonPartEquals(FIRST_TASK_ATTRIBUTES, responseContent, "data[0].attributes"); assertJsonPartEquals(FIRST_TASK_LINKS, responseContent, "data[0].links"); assertJsonPartEquals(PROJECT1_RELATIONSHIP_LINKS, responseContent, "data[0].relationships.project.links"); assertJsonPartEquals("[]", responseContent, "included"); }
From source file:io.lavagna.web.security.SecurityFilterTest.java
@Test public void testSetupNotComplete() throws IOException, ServletException { SecurityFilter sf = new SecurityFilter(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("GET"); Map<Key, String> conf = new EnumMap<>(Key.class); conf.put(Key.SETUP_COMPLETE, "false"); when(configurationRepository.findConfigurationFor(Mockito.<Set<Key>>any())).thenReturn(conf); MockHttpServletResponse response = new MockHttpServletResponse(); MockFilterChain chain = new MockFilterChain(); sf.init(filterConfig);//from w w w. ja v a 2 s . c o m sf.doFilter(request, response, chain); }
From source file:io.jmnarloch.spring.request.correlation.filter.RequestCorrelationFilterTest.java
@Test public void shouldUseCustomHeader() throws IOException, ServletException { // given//from ww w .j a v a2 s.c o m final String headerName = "X-TraceId"; final String requestId = UUID.randomUUID().toString(); final MockHttpServletRequest request = new MockHttpServletRequest(); final MockHttpServletResponse response = new MockHttpServletResponse(); final MockFilterChain chain = new MockFilterChain(); request.addHeader(headerName, requestId); properties.setHeaderName(headerName); // when instance.doFilter(request, response, chain); // then final Object requestCorrelation = request.getAttribute(RequestCorrelationConsts.ATTRIBUTE_NAME); assertNotNull(requestCorrelation); assertEquals(requestId, ((RequestCorrelation) requestCorrelation).getRequestId()); final String header = ((HttpServletRequest) chain.getRequest()).getHeader(headerName); assertNotNull(header); assertEquals(requestId, header); }
From source file:com.github.woonsan.katharsis.servlet.KatharsisFilterTest.java
@Test public void onSimpleResourceGetShouldReturnOneResource() throws Exception { MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setMethod("GET"); request.setContextPath(""); request.setServletPath(null);/*from w w w . j a va 2 s . c o m*/ request.setPathInfo(null); request.setRequestURI("/api/tasks/1"); request.setContentType(JsonApiMediaType.APPLICATION_JSON_API); request.addHeader("Accept", "*/*"); request.addParameter("filter", ""); MockHttpServletResponse response = new MockHttpServletResponse(); katharsisFilter.doFilter(request, response, filterChain); String responseContent = response.getContentAsString(); log.debug("responseContent: {}", responseContent); assertNotNull(responseContent); assertJsonPartEquals("tasks", responseContent, "data.type"); assertJsonPartEquals("\"1\"", responseContent, "data.id"); assertJsonPartEquals(SOME_TASK_ATTRIBUTES, responseContent, "data.attributes"); assertJsonPartEquals(FIRST_TASK_LINKS, responseContent, "data.links"); assertJsonPartEquals(PROJECT1_RELATIONSHIP_LINKS, responseContent, "data.relationships.project.links"); assertJsonPartEquals("[]", responseContent, "included"); }
From source file:org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfigurationTests.java
private int getResponseStatus(AssertableWebApplicationContext context, String path) throws IOException, javax.servlet.ServletException { FilterChainProxy filterChainProxy = context.getBean(FilterChainProxy.class); MockServletContext servletContext = new MockServletContext(); MockHttpServletResponse response = new MockHttpServletResponse(); servletContext.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, context); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setServletPath(path);/*w w w .j ava 2s.c om*/ request.setMethod("GET"); filterChainProxy.doFilter(request, response, new MockFilterChain()); return response.getStatus(); }
From source file:fr.xebia.servlet.filter.XForwardedFilterTest.java
@Test public void testIncomingRequestIsSecuredButProtocolHeaderSaysItIsNotWithDefaultValues() throws Exception { // PREPARE/* ww w.j a v a 2 s . c o m*/ XForwardedFilter xforwardedFilter = new XForwardedFilter(); MockFilterConfig filterConfig = new MockFilterConfig(); filterConfig.addInitParameter(XForwardedFilter.PROTOCOL_HEADER_PARAMETER, "x-forwarded-proto"); xforwardedFilter.init(filterConfig); MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setRemoteAddr("192.168.0.10"); request.setSecure(true); request.setScheme("https"); request.addHeader("x-forwarded-for", "140.211.11.130"); request.addHeader("x-forwarded-proto", "http"); MockHttpServletResponse response = new MockHttpServletResponse(); // TEST xforwardedFilter.doFilter(request, response, filterChain); // VERIFY boolean actualSecure = filterChain.getRequest().isSecure(); assertEquals("request must be unsecured as header x-forwarded-proto said it is http", false, actualSecure); String actualScheme = filterChain.getRequest().getScheme(); assertEquals("scheme must be http as header x-forwarded-proto said it is http", "http", actualScheme); String actualRemoteAddr = ((HttpServletRequest) filterChain.getRequest()).getRemoteAddr(); assertEquals("remoteAddr", "140.211.11.130", actualRemoteAddr); String actualRemoteHost = ((HttpServletRequest) filterChain.getRequest()).getRemoteHost(); assertEquals("remoteHost", "140.211.11.130", actualRemoteHost); String actualUrl = ((HttpServletResponse) filterChain.getResponse()).encodeURL("/relativeURL"); assertEquals("encodeURL relative", "http://localhost/relativeURL", actualUrl); actualUrl = ((HttpServletResponse) filterChain.getResponse()).encodeURL("https://absolute/URL"); assertEquals("encodeURL absolute", "https://absolute/URL", actualUrl); String actualRedirectUrl = ((HttpServletResponse) filterChain.getResponse()) .encodeRedirectURL("/relativeURL"); assertEquals("encodeRedirectURL relative", "http://localhost/relativeURL", actualRedirectUrl); ((HttpServletResponse) filterChain.getResponse()).sendRedirect("/relativeURL"); assertEquals("redirectedUrl", "http://localhost/relativeURL", response.getRedirectedUrl()); }
From source file:com.github.woonsan.katharsis.servlet.KatharsisFilterTest.java
@Test public void onCollectionRequestWithParamsGetShouldReturnCollection() throws Exception { MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setMethod("GET"); request.setContextPath(""); request.setServletPath(null);/*from ww w .java2 s. com*/ request.setPathInfo(null); request.setRequestURI("/api/tasks"); request.setContentType(JsonApiMediaType.APPLICATION_JSON_API); request.addHeader("Accept", "*/*"); request.addParameter("filter", "{\"name\":\"John\"}"); MockHttpServletResponse response = new MockHttpServletResponse(); katharsisFilter.doFilter(request, response, filterChain); String responseContent = response.getContentAsString(); log.debug("responseContent: {}", responseContent); assertNotNull(responseContent); assertJsonPartEquals("tasks", responseContent, "data[0].type"); assertJsonPartEquals("\"1\"", responseContent, "data[0].id"); assertJsonPartEquals(FIRST_TASK_ATTRIBUTES, responseContent, "data[0].attributes"); assertJsonPartEquals(FIRST_TASK_LINKS, responseContent, "data[0].links"); assertJsonPartEquals(PROJECT1_RELATIONSHIP_LINKS, responseContent, "data[0].relationships.project.links"); assertJsonPartEquals("[]", responseContent, "included"); }
From source file:org.surfnet.oaaas.auth.AuthorizationServerFilterTest.java
private MockFilterChain doCallFilter(Resource[] resource, MockHttpServletResponse response) throws IOException, ServletException { super.setResponseResource(resource); MockHttpServletRequest request = new MockHttpServletRequest(); request.addHeader("Origin", "http://www.test.org"); request.addHeader(HttpHeaders.AUTHORIZATION, "bearer dummy-access-token"); MockFilterChain chain = new MockFilterChain(); filter.doFilter(request, response, chain); return chain; }
From source file:com.github.woonsan.katharsis.servlet.KatharsisFilterTest.java
@Test public void testUnacceptableRequestContentType() throws Exception { MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setMethod("GET"); request.setContextPath(""); request.setServletPath(null);/*from ww w .jav a 2s . c o m*/ request.setPathInfo(null); request.setRequestURI("/api/tasks/"); request.setContentType(JsonApiMediaType.APPLICATION_JSON_API); request.addHeader("Accept", "application/xml"); MockHttpServletResponse response = new MockHttpServletResponse(); katharsisFilter.doFilter(request, response, filterChain); assertEquals(HttpServletResponse.SC_UNSUPPORTED_MEDIA_TYPE, response.getStatus()); String responseContent = response.getContentAsString(); assertTrue(responseContent == null || "".equals(responseContent.trim())); }
From source file:fr.xebia.servlet.filter.XForwardedFilterTest.java
@Test public void testIncomingRequestIsSecuredButProtocolHeaderSaysItIsNotWithCustomValues() throws Exception { // PREPARE/*from ww w . ja va 2 s . co m*/ XForwardedFilter xforwardedFilter = new XForwardedFilter(); MockFilterConfig filterConfig = new MockFilterConfig(); filterConfig.addInitParameter(XForwardedFilter.PROTOCOL_HEADER_PARAMETER, "x-forwarded-proto"); filterConfig.addInitParameter(XForwardedFilter.REMOTE_IP_HEADER_PARAMETER, "x-my-forwarded-for"); filterConfig.addInitParameter(XForwardedFilter.HTTP_SERVER_PORT_PARAMETER, "8080"); xforwardedFilter.init(filterConfig); MockFilterChain filterChain = new MockFilterChain(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setRemoteAddr("192.168.0.10"); request.setSecure(true); request.setScheme("https"); request.addHeader("x-my-forwarded-for", "140.211.11.130"); request.addHeader("x-forwarded-proto", "http"); MockHttpServletResponse response = new MockHttpServletResponse(); // TEST xforwardedFilter.doFilter(request, response, filterChain); // VERIFY boolean actualSecure = filterChain.getRequest().isSecure(); assertEquals("request must be unsecured as header x-forwarded-proto said it is http", false, actualSecure); String actualScheme = filterChain.getRequest().getScheme(); assertEquals("scheme must be http as header x-forwarded-proto said it is http", "http", actualScheme); int actualServerPort = filterChain.getRequest().getServerPort(); assertEquals("wrong http server port", 8080, actualServerPort); String actualRemoteAddr = ((HttpServletRequest) filterChain.getRequest()).getRemoteAddr(); assertEquals("remoteAddr", "140.211.11.130", actualRemoteAddr); String actualRemoteHost = ((HttpServletRequest) filterChain.getRequest()).getRemoteHost(); assertEquals("remoteHost", "140.211.11.130", actualRemoteHost); ((HttpServletResponse) filterChain.getResponse()).sendRedirect("http://absolute/URL"); assertEquals("redirectedUrl", "http://absolute/URL", response.getRedirectedUrl()); }