/** * Adds a request parameter. * @param key the parameter key * @param value the parameters value */ public void setupAddParameter(String key, String value) { setupAddParameter(key, new String[] { value }); }
/** * Adds a request parameter. * @param key the parameter key * @param value the parameters value */ public void setupAddParameter(String key, String value) { setupAddParameter(key, new String[] { value }); }
/** * Adds a request parameter. * @param key the parameter key * @param value the parameters value */ public void setupAddParameter(String key, String value) { setupAddParameter(key, new String[] { value }); }
/** * Adds a request parameter. * @param key the request key * @param value the request value */ public void addRequestParameter(String key, String value) { mockFactory.getMockRequest().setupAddParameter(key, value); }
/** * Adds several request parameters. * @param key the * @param values the request values */ public void addRequestParameter(String key, String[] values) { mockFactory.getMockRequest().setupAddParameter(key, values); }
/** * Adds a request parameter. * @param key the request key * @param value the request value */ public void addRequestParameter(String key, String value) { mockFactory.getMockRequest().setupAddParameter(key, value); }
/** * Adds several request parameters. * @param key the * @param values the request values */ public void addRequestParameter(String key, String[] values) { mockFactory.getMockRequest().setupAddParameter(key, values); }
/** * Adds several request parameters. * @param key the * @param values the request values */ public void addRequestParameter(String key, String[] values) { mockFactory.getMockRequest().setupAddParameter(key, values); }
/** * Adds a request parameter. * @param key the request key * @param value the request value */ public void addRequestParameter(String key, String value) { mockFactory.getMockRequest().setupAddParameter(key, value); }
protected String loginUsingTicket(CasFormAuthenticationHelper helper, MockHttpServletRequest request, MockHttpServletResponse response,MockFilterChain chain) throws Exception { String ticket = helper.getServiceTicket(new URL(request.getRequestURL().toString())); request.setQueryString("ticket=" + ticket); request.setupAddParameter("ticket", ticket); getProxy().doFilter(request, response, chain); return ticket; }
MockFilterChain chain = new MockFilterChain(); String paramValue = URLDecoder.decode(buff.toString(), "utf-8"); request.setupAddParameter("logoutRequest", paramValue.substring(paramValue.indexOf("=") + 1)); try {
@Override public void handle(HttpExchange ex) throws IOException { URI uri = ex.getRequestURI(); ex.getRequestBody().close(); LOGGER.info("Cas proxy callback: " + uri.toString()); String query = uri.getQuery(); MockHttpServletRequest request = createRequest(GeoServerCasConstants.CAS_PROXY_RECEPTOR_PATTERN); MockHttpServletResponse response = new MockHttpServletResponse(); MockFilterChain chain = new MockFilterChain(); // CAS sends the callback twice, the first time without parameters if (query != null) { request.setQueryString(query); String[] kvps = query.split("&"); for (String kvp : kvps) { String[] tmp = kvp.split("="); request.setupAddParameter(tmp[0], tmp[1]); } } try { getProxy().doFilter(request, response, chain); } catch (ServletException e) { throw new RuntimeException(e); } assertEquals(HttpServletResponse.SC_OK, response.getErrorCode()); ex.sendResponseHeaders(200, 0); ex.getResponseBody().close(); } }
@Test public void testWillNotBlockNewlyAddedParametersOnForward() { MockHttpServletRequest mock = new MockHttpServletRequest(); mock.setupAddParameter("a", "12"); UnicodeNormalizationRequestWrapper request = new UnicodeNormalizationRequestWrapper(mock); assertEquals("12", request.getParameter("a")); assertEquals(1, request.getParameterMap().size()); assertNull(request.getParameter("b")); mock.setupAddParameter("b", "24"); assertEquals("12", request.getParameter("a")); assertEquals(2, request.getParameterMap().size()); assertEquals("24", request.getParameter("b")); }
MockHttpServletResponse response = new MockHttpServletResponse(); MockFilterChain chain = new MockFilterChain(); request.setupAddParameter("ticket", "ST-blabla"); request.setQueryString("ticket=ST-blabla"); request.setHeader(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("ticket", ticket); getProxy().doFilter(request, response, chain); assertEquals(HttpServletResponse.SC_OK, response.getErrorCode()); response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("ticket", ticket); request.setQueryString("ticket=" + ticket); request.setHeader(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); request.setupAddParameter("ticket", ticket); request.setQueryString("ticket=" + ticket); request.setHeader(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); request.setupAddParameter("ticket", ticket); getProxy().doFilter(request, response, chain);
ticket = helper.getServiceTicket(new URL(request.getRequestURL().toString())); ticket += "ST-A"; request.setupAddParameter("ticket", ticket); request.setQueryString("ticket=" + ticket); chain = new MockFilterChain(); ticket = helper.getServiceTicket(new URL(request.getRequestURL().toString())); request.setupAddParameter("ticket", ticket); request.setQueryString("ticket=" + ticket); getProxy().doFilter(request, response, chain);
@Test public void testWillNotHideNewParametersAfterDoingForward() { MultipartForm form = new MultipartForm(); addParameter(form, "key1", "value1"); addParameter(form, "key2", "value2"); addParameter(form, "key3", "value3-1"); addParameter(form, "key3", "value3-2"); MockHttpServletRequest mock = new MockHttpServletRequest(); MultipartRequestWrapper request = new MultipartRequestWrapper(mock, form); assertEquals("value1", request.getParameter("key1")); assertEquals("value2", request.getParameter("key2")); assertNotNull(request.getParameter("key3")); assertEquals(3, request.getParameterMap().size()); assertEquals("value2", ((String[]) request.getParameterMap().get("key2"))[0]); assertEquals(1, request.getParameterValues("key1").length); assertEquals(2, request.getParameterValues("key3").length); assertEquals(3, sizeOfEnumeration(request.getParameterNames())); assertNull(request.getParameter("key4")); assertNull(request.getParameterValues("key4")); mock.setupAddParameter("key4", "value4"); assertEquals("value4", request.getParameter("key4")); assertEquals(4, request.getParameterMap().size()); assertEquals("value4", ((String[]) request.getParameterMap().get("key4"))[0]); assertEquals(1, request.getParameterValues("key4").length); assertEquals(4, sizeOfEnumeration(request.getParameterNames())); }
MockHttpServletResponse response = new MockHttpServletResponse(); MockFilterChain chain = new MockFilterChain(); request.setupAddParameter("ticket", "ST-blabla"); request.setQueryString("ticket=ST-blabla"); request.setHeader(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("ticket", "ST-blabla"); request.setupAddParameter(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); request.setQueryString("ticket=ST-blabla&"+GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT+"=false"); getProxy().doFilter(request, response, chain); response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("ticket", proxyTicket); if (i==0) { request.setupAddParameter(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); request.setQueryString(request.getQueryString()+"&ticket="+proxyTicket+"&"+GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT+"=false"); } else { response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("ticket", proxyTicket); if (i==0) { request.setupAddParameter(GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT, "false"); request.setQueryString(request.getQueryString()+"&ticket="+proxyTicket+"&"+GeoServerCasAuthenticationEntryPoint.CAS_REDIRECT+"=false"); } else {
response = new MockHttpServletResponse(); chain = new MockFilterChain(); request.setupAddParameter("logoutRequest", getBodyForLogoutRequest(ticket)); GeoServerCasAuthenticationFilter casFilter = (GeoServerCasAuthenticationFilter) getSecurityManager().loadFilter(casFilterName);