List of usage examples for org.springframework.mock.web MockHttpServletResponse getContentLength
public int getContentLength()
From source file:net.node42.filter.SimpleTimeoutLoadLimitingFilterTest.java
@Test public void testDestroy() throws Exception { final SimpleTimeoutLoadLimitingFilter target = new SimpleTimeoutLoadLimitingFilter(); final MockFilterConfig filterConfig = new MockFilterConfig(new MockServletContext()); filterConfig.addInitParameter("request_count_concurrent_max", "0"); filterConfig.addInitParameter("request_count_check_interval", "200"); filterConfig.addInitParameter("request_timeout", "10000"); target.init(filterConfig);// w ww. j a va 2 s. co m assertThat(target.maxConcurrentRequests).isEqualTo(0); assertThat(target.requestCountCheckInterval).isEqualTo(200L); assertThat(target.requestTimeoutMillis).isEqualTo(10000); final MockHttpServletRequest request = new MockHttpServletRequest(); final MockHttpServletResponse response = new MockHttpServletResponse(); response.setWriterAccessAllowed(true); final FilterChain filterChain = mock(FilterChain.class); runLoadLimitingFilter(target, request, response, filterChain); assertThat(response.getContentLength()).isEqualTo(0); // Verify we haven't written a timeout message target.destroy(); assertThat(target.DESTROY.get()).isEqualTo(true); await().atMost(5, TimeUnit.SECONDS).until(new Callable<Boolean>() { @Override public Boolean call() throws Exception { return !response.getContentAsString().isEmpty(); } }); assertThat(response.getContentAsString()).isNotEmpty() .isEqualTo(SimpleTimeoutLoadLimitingFilter.CONTENT_TIMEOUT_DEFAULT); }
From source file:com.baidu.jprotobuf.rpc.client.ProxyFactoryBeanTestBase.java
protected HttpServer createServer() throws Exception { servlet.init();/*from w ww .ja va 2 s .co m*/ HttpServerProvider provider = HttpServerProvider.provider(); HttpServer httpserver = provider.createHttpServer(new InetSocketAddress(8080), 10); httpserver.createContext(getPathInfo(), new HttpHandler() { @Override public void handle(HttpExchange httpExchange) throws IOException { MockHttpServletRequest request = new MockHttpServletRequest(); request.setPathInfo(getPathInfo()); String queryString = httpExchange.getRequestURI().getRawQuery(); if (queryString != null) { if (queryString.indexOf(ServiceExporter.INPUT_IDL_PARAMETER) != -1) { request.addParameter(ServiceExporter.INPUT_IDL_PARAMETER, ""); } if (queryString.indexOf(ServiceExporter.OUTPUT_IDL_PARAMETER) != -1) { request.addParameter(ServiceExporter.OUTPUT_IDL_PARAMETER, ""); } } request.setQueryString(queryString); InputStream requestBody = httpExchange.getRequestBody(); request.setContent(IOUtils.toByteArray(requestBody)); MockHttpServletResponse response = new MockHttpServletResponse(); response.setOutputStreamAccessAllowed(true); try { servlet.service(request, response); } catch (ServletException e) { e.printStackTrace(); } httpExchange.sendResponseHeaders(200, response.getContentLength()); OutputStream out = httpExchange.getResponseBody(); // ? out.write(response.getContentAsByteArray()); out.flush(); httpExchange.close(); } }); httpserver.setExecutor(null); httpserver.start(); return httpserver; }
From source file:ch.ralscha.extdirectspring.util.ExtDirectSpringUtilTest.java
@Test public void testHandleCacheableResponseWithoutIfNoneMatch() throws IOException { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); byte[] data = "the response data".getBytes(); String etag = "\"0" + DigestUtils.md5DigestAsHex(data) + '"'; String contentType = "application/javascript;charset=UTF-8"; ExtDirectSpringUtil.handleCacheableResponse(request, response, data, contentType); assertThat(response.getStatus()).isEqualTo(200); assertResponse(response, 5, etag, 6); assertThat(response.getContentLength()).isEqualTo(data.length); assertThat(response.getContentType()).isEqualTo(contentType); assertThat(response.getContentAsByteArray()).isEqualTo(data); }
From source file:ch.ralscha.extdirectspring.bean.ExtDirectResponseBuilderTest.java
@Test public void testBuilderUploadResponse() throws IOException { MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest(); request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); request.setParameter("extAction", "action"); request.setParameter("extMethod", "method"); request.setParameter("extType", "type"); request.setParameter("extTID", "1"); MockHttpServletResponse servletResponse = new MockHttpServletResponse(); ExtDirectResponseBuilder.create(request, servletResponse) .addResultProperty("additionalProperty", Boolean.FALSE) .addResultProperty("text", "a lot of "text"").buildAndWrite(); assertThat(servletResponse.getContentType()).isEqualTo("text/html;charset=UTF-8"); String content = servletResponse.getContentAsString(); assertThat(servletResponse.getContentLength()).isEqualTo(content.getBytes("UTF-8").length); assertThat(content).startsWith("<html><body><textarea>"); assertThat(content).endsWith("</textarea></body></html>"); String json = content.substring(content.indexOf("{"), content.lastIndexOf("}") + 1); assertThat(json).contains("\\""); json = json.replace("\\"", "\'"); ObjectMapper mapper = new ObjectMapper(); Map<String, Object> header = mapper.readValue(json, Map.class); assertThat(header.get("action")).isEqualTo("action"); assertThat(header.get("method")).isEqualTo("method"); assertThat(header.get("type")).isEqualTo("type"); assertThat(header.get("tid")).isEqualTo(1); @SuppressWarnings("unchecked") Map<String, Object> result = (Map<String, Object>) header.get("result"); assertThat(result).hasSize(3);/*from w w w. j a v a2 s. com*/ assertThat((Boolean) result.get("success")).isTrue(); assertThat(result.get("text")).isEqualTo("a lot of 'text'"); assertThat(result.get("additionalProperty")).isEqualTo(Boolean.FALSE); }
From source file:org.openmrs.module.atomfeed.web.AtomFeedDownloadServletTest.java
/** * @see AtomFeedDownloadServlet#doHead(javax.servlet.http.HttpServletRequest, * javax.servlet.http.HttpServletResponse) * @verifies send valid headers if atom feed has changed *///from w ww .jav a 2s . c o m @Test public void doHead_shouldSendValidHeadersIfAtomFeedHasChanged() throws Exception { // create servlet and corresponding request and response object to be sent AtomFeedDownloadServlet atomFeedDownloadServlet = new AtomFeedDownloadServlet(); MockHttpServletRequest request = new MockHttpServletRequest("HEAD", "/atomfeed"); request.setContextPath("/somecontextpath"); MockHttpServletResponse response = new MockHttpServletResponse(); // intentionally change atom feed in order to not depend from other tests AtomFeedUtil.objectCreated(new Encounter()); String etagToken = "somevalue"; Date lastModified = new Date(); // set request headers request.addHeader("If-None-Match", '"' + etagToken + '"'); request.addHeader("If-Modified-Since", lastModified); atomFeedDownloadServlet.service(request, response); // check response headers Assert.assertNotSame(0, response.getContentLength()); Assert.assertEquals("application/atom+xml", response.getContentType()); Assert.assertNotSame(HttpServletResponse.SC_NOT_MODIFIED, response.getStatus()); Assert.assertNotSame('"' + etagToken + '"', response.getHeader("Etag")); Assert.assertNotNull(response.getHeader("Last-Modified")); }
From source file:ch.ralscha.extdirectspring.util.ExtDirectSpringUtilTest.java
@Test public void testHandleCacheableResponseWithIfNoneMatch() throws IOException { byte[] data = "the response data".getBytes(); String etag = "\"0" + DigestUtils.md5DigestAsHex(data) + '"'; String contentType = "application/javascript;charset=UTF-8"; MockHttpServletRequest request = new MockHttpServletRequest(); request.addHeader("If-None-Match", etag); MockHttpServletResponse response = new MockHttpServletResponse(); ExtDirectSpringUtil.handleCacheableResponse(request, response, data, contentType); assertThat(response.getStatus()).isEqualTo(304); request = new MockHttpServletRequest(); request.addHeader("If-None-Match", etag); response = new MockHttpServletResponse(); data = "new response data".getBytes(); etag = "\"0" + DigestUtils.md5DigestAsHex(data) + '"'; ExtDirectSpringUtil.handleCacheableResponse(request, response, data, contentType); assertThat(response.getStatus()).isEqualTo(200); assertResponse(response, 5, etag, 6); assertThat(response.getContentLength()).isEqualTo(data.length); assertThat(response.getContentType()).isEqualTo(contentType); assertThat(response.getContentAsByteArray()).isEqualTo(data); }
From source file:org.wrml.server.WrmlServletTest.java
@Test public void requestWithBadHostHeader() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest(); initMockHttpRequest(request, CAPRICA_SIX_ENDPOINT); request.setMethod(Method.Get.getProtocolGivenName()); //request.addHeader(HttpHeaders.ACCEPT, JSON_MEDIA_TYPE); request.addHeader(WrmlServlet.WRML_HOST_HEADER_NAME, BAD_HOST_1); MockHttpServletResponse response = new MockHttpServletResponse(); initMockWrmlRequest(request, Method.Get, CAPRICA_SIX_ENDPOINT, CAPRICA_SCHEMA_URI); _Servlet.service(request, response); // Verify Model Write Assert.assertTrue(response.getContentType().contains("text/plain")); Assert.assertEquals(HttpServletResponse.SC_BAD_REQUEST, response.getStatus()); Assert.assertTrue(response.getContentLength() > 0); Assert.assertTrue(response.getContentAsString().contains("moose::/squirrel:")); }
From source file:org.wrml.server.WrmlServletTest.java
@Test public void requestWithoutEntityButWithContentType() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest(); initMockHttpRequest(request, DOCROOT_ENDPOINT); request.setMethod(Method.Save.getProtocolGivenName()); request.setContentType(DEFAULT_CONTENT_TYPE); request.setContent(new byte[] {}); MockHttpServletResponse response = new MockHttpServletResponse(); initMockWrmlRequest(request, Method.Save, DOCROOT_ENDPOINT, CAPRICA_SCHEMA_URI); _Servlet.service(request, response); // Verify Model Write Assert.assertEquals(DEFAULT_CONTENT_TYPE, response.getContentType()); Assert.assertEquals(HttpServletResponse.SC_OK, response.getStatus()); Assert.assertEquals(response.getContentAsByteArray().length, response.getContentLength()); }
From source file:org.wrml.server.WrmlServletTest.java
@Test public void requestPostNoData() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest(); initMockHttpRequest(request, DOCROOT_ENDPOINT); request.setMethod(Method.Save.getProtocolGivenName()); request.setContentType(DEFAULT_CONTENT_TYPE); request.setContent(new byte[] {}); MockHttpServletResponse response = new MockHttpServletResponse(); initMockWrmlRequest(request, Method.Save, DOCROOT_ENDPOINT, CAPRICA_SCHEMA_URI); _Servlet.service(request, response); // Verify Model Write Assert.assertEquals(DEFAULT_CONTENT_TYPE, response.getContentType()); Assert.assertEquals(HttpServletResponse.SC_OK, response.getStatus()); Assert.assertEquals(response.getContentAsByteArray().length, response.getContentLength()); }
From source file:org.wrml.server.WrmlServletTest.java
@Test public void requestWithHostHeader() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest(); initMockHttpRequest(request, CAPRICA_SIX_SPOOF_1_ENDPOINT); request.setMethod(Method.Get.getProtocolGivenName()); request.addHeader(WrmlServlet.WRML_HOST_HEADER_NAME, LOCALHOST); MockHttpServletResponse response = new MockHttpServletResponse(); initMockWrmlRequest(request, Method.Get, CAPRICA_SIX_SPOOF_1_ENDPOINT, CAPRICA_SCHEMA_URI); _Servlet.service(request, response); // Verify Model Write Assert.assertEquals(HttpServletResponse.SC_OK, response.getStatus()); Assert.assertEquals(DEFAULT_CONTENT_TYPE, response.getContentType()); Assert.assertEquals(response.getContentAsByteArray().length, response.getContentLength()); }