Example usage for org.springframework.mock.web MockHttpServletResponse getContentAsByteArray

List of usage examples for org.springframework.mock.web MockHttpServletResponse getContentAsByteArray

Introduction

In this page you can find the example usage for org.springframework.mock.web MockHttpServletResponse getContentAsByteArray.

Prototype

public byte[] getContentAsByteArray() 

Source Link

Usage

From source file:com.liferay.document.library.webserver.test.WebServerRangeTest.java

@Test
public void testSingleRangeLast() throws Exception {
    MockHttpServletResponse mockHttpServletResponse = testRange("bytes=70-79");

    Assert.assertEquals("10", mockHttpServletResponse.getHeader(HttpHeaders.CONTENT_LENGTH));
    Assert.assertEquals("bytes 70-79/80", mockHttpServletResponse.getHeader(HttpHeaders.CONTENT_RANGE));
    Assert.assertArrayEquals(_UNICODE_DATA.getBytes(), mockHttpServletResponse.getContentAsByteArray());
}

From source file:net.javacrumbs.smock.http.server.servlet.CommonServletBasedMockWebServiceClient.java

public ResponseActions sendRequestTo(String path, RequestCreator requestCreator) {
    try {/* w w w .  j a v a2 s  . c o  m*/
        Assert.notNull(requestCreator, "'requestCreator' must not be null");
        WebServiceMessage requestMessage = requestCreator.createRequest(messageFactory);
        final MockHttpServletRequest request = createRequest(path, requestMessage);
        MessageContext messageContext = new DefaultMessageContext(requestMessage, messageFactory);
        interceptingTemplate.interceptRequest(messageContext, new WebServiceMessageReceiver() {
            public void receive(MessageContext messageContext) throws Exception {
                MockHttpServletResponse response = new ExtendedMockHttpServletResponse();
                servlet.service(request, response);
                if (LOG.isDebugEnabled()) {
                    LOG.debug("Received response:" + response.getContentAsString());
                }
                messageContext.setResponse(messageFactory
                        .createWebServiceMessage(new ByteArrayInputStream(response.getContentAsByteArray())));
            }
        });
        return new MockWebServiceClientResponseActions(messageContext);
    } catch (Exception e) {
        throw new IllegalStateException("Error when sending request", e);
    }
}

From source file:com.enonic.cms.framework.util.HttpServletRangeUtilTest.java

@Test
public void test_gzip_plain() throws Exception {
    final MockHttpServletRequest httpServletRequest = new MockHttpServletRequest();
    httpServletRequest.setMethod("GET");
    httpServletRequest.setPathInfo("/input.js");
    httpServletRequest.addHeader(HttpHeaders.ACCEPT_ENCODING, "gzip");

    final MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();
    HttpServletRangeUtil.processRequest(httpServletRequest, mockHttpServletResponse, "input.js",
            "application/javascript", INPUT_FILE, false);

    assertTrue(mockHttpServletResponse.getContentAsByteArray().length > 0);

    assertEquals(HttpServletResponse.SC_OK, mockHttpServletResponse.getStatus());
    assertEquals("application/javascript", mockHttpServletResponse.getContentType());
    assertEquals("inline;filename=\"input.js\"",
            mockHttpServletResponse.getHeader(HttpHeaders.CONTENT_DISPOSITION));

    assertEquals(null, mockHttpServletResponse.getHeader(HttpHeaders.CONTENT_LENGTH));
}

From source file:com.baidu.jprotobuf.rpc.client.ProxyFactoryBeanTestBase.java

protected HttpServer createServer() throws Exception {

    servlet.init();//  w  w  w. j  a  va2  s.  c  om

    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:com.liferay.document.library.webdav.test.BaseWebDAVTestCase.java

public Tuple service(String method, String path, Map<String, String> headers, byte[] data) {

    WebDAVServlet webDAVServlet = new WebDAVServlet();

    String requestURI = _CONTEXT_PATH + _SERVLET_PATH + _PATH_INFO_PREFACE + path;

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest(method, requestURI);

    mockHttpServletRequest.setContextPath(_CONTEXT_PATH);
    mockHttpServletRequest.setServletPath(_SERVLET_PATH);
    mockHttpServletRequest.setPathInfo(_PATH_INFO_PREFACE + path);

    try {//  w w w .ja v a2  s  .c  o  m
        mockHttpServletRequest.setRemoteUser(String.valueOf(TestPropsValues.getUserId()));
    } catch (Exception e) {
        Assert.fail("User ID cannot be initialized");
    }

    if (headers == null) {
        headers = new HashMap<>();
    }

    headers.put(HttpHeaders.USER_AGENT, getUserAgent());

    try {
        throw new Exception();
    } catch (Exception e) {
        StackTraceElement[] stackTraceElements = e.getStackTrace();

        for (StackTraceElement stackTraceElement : stackTraceElements) {
            String methodName = stackTraceElement.getMethodName();

            if (methodName.equals("setUp") || methodName.equals("tearDown") || methodName.startsWith("test")) {

                String testName = StringUtil.extractLast(stackTraceElement.getClassName(), CharPool.PERIOD);

                testName = StringUtil.removeSubstrings(testName, "WebDAV", "Test");

                headers.put("X-Litmus", testName + ": (" + stackTraceElement.getMethodName() + ":"
                        + stackTraceElement.getLineNumber() + ")");

                break;
            }
        }
    }

    if (data != null) {
        mockHttpServletRequest.setContent(data);

        String contentType = headers.remove(HttpHeaders.CONTENT_TYPE);

        if (contentType != null) {
            mockHttpServletRequest.setContentType(contentType);
        } else {
            mockHttpServletRequest.setContentType(ContentTypes.TEXT_PLAIN);
        }
    }

    for (Map.Entry<String, String> entry : headers.entrySet()) {
        String key = entry.getKey();
        String value = entry.getValue();

        mockHttpServletRequest.addHeader(key, value);
    }

    try {
        MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

        webDAVServlet.service(mockHttpServletRequest, mockHttpServletResponse);

        int statusCode = mockHttpServletResponse.getStatus();
        byte[] responseBody = mockHttpServletResponse.getContentAsByteArray();

        Map<String, String> responseHeaders = new HashMap<>();

        for (String name : mockHttpServletResponse.getHeaderNames()) {
            responseHeaders.put(name, mockHttpServletResponse.getHeader(name));
        }

        return new Tuple(statusCode, responseBody, responseHeaders);
    } catch (Exception e) {
        e.printStackTrace();
    }

    return null;
}

From source file:org.opennms.netmgt.ncs.rest.AbstractSpringJerseyRestTestCase.java

protected <T> T getXmlObject(JAXBContext context, String url, int expectedStatus, Class<T> expectedClass)
        throws Exception {
    MockHttpServletRequest request = createRequest(GET, url);
    MockHttpServletResponse response = createResponse();
    dispatch(request, response);/*from   w ww.j a v  a 2  s . co  m*/
    assertEquals(expectedStatus, response.getStatus());

    System.err.printf("xml: %s\n", response.getContentAsString());

    InputStream in = new ByteArrayInputStream(response.getContentAsByteArray());

    Unmarshaller unmarshaller = context.createUnmarshaller();

    T result = expectedClass.cast(unmarshaller.unmarshal(in));

    return result;

}

From source file:com.tasktop.c2c.server.common.service.tests.http.HttpProxyTest.java

@Test
public void testPost() throws IOException {
    byte[] proxyResponseContent = "ProxyResponse".getBytes();
    proxyResponseInputStream = new ByteArrayInputStream(proxyResponseContent);

    setupMock(HttpStatus.OK);/*from w ww.  j  a  va  2s. com*/

    MockHttpServletRequest request = new MockHttpServletRequest("POST", "unused");
    MockHttpServletResponse response = new MockHttpServletResponse();

    byte[] requestContent = "RequestContent".getBytes();
    request.setContent(requestContent);
    proxy.proxyRequest("foo", request, response);

    // Assert.assertArrayEquals(requestContent, proxyRequestOutputStream.toByteArray());
    Assert.assertArrayEquals(proxyResponseContent, response.getContentAsByteArray());

    context.assertIsSatisfied();
}

From source file:org.jmesa.facade.TableFacadeTest.java

public void renderAndExportable() {

    MockHttpServletRequest request = new MockHttpServletRequest();
    SpringParametersAdapter parameters = new SpringParametersAdapter(request);
    ParametersBuilder builder = new ParametersBuilder(ID, parameters);
    builder.setExportType(TableModel.CSV);

    Collection<President> items = PresidentDao.getPresidents();

    MockHttpServletResponse response = new MockHttpServletResponse();
    assertTrue("The response is not empty.", response.getContentAsByteArray().length == 0);

    TableFacade facade = TableFacadeFactory.createTableFacade("pres", request, response);
    facade.setItems(items);//from   w  ww.ja  v  a  2 s . c o m

    HtmlTable table = new HtmlTable();
    HtmlRow row = new HtmlRow();
    row.addColumn(new HtmlColumn("name.firstName"));
    row.addColumn(new HtmlColumn("name.lastName"));
    row.addColumn(new HtmlColumn("term"));
    row.addColumn(new HtmlColumn("career"));
    table.setRow(row);
    facade.setTable(table);

    facade.setExportTypes(TableModel.CSV, TableModel.EXCEL);

    String markup = facade.render();
    assertNull(markup);
    assertTrue("There are no contents in the export.", response.getContentAsByteArray().length > 0);
}

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:com.tasktop.c2c.server.common.service.tests.ajp.AjpProtocolTest.java

private void assertResponseIsExpected(Payload expectedPayload, MockHttpServletResponse response)
        throws UnsupportedEncodingException {
    Assert.assertEquals(expectedPayload.responseCode, response.getStatus());
    for (Entry<String, String> header : expectedPayload.getResponseHeaders().entrySet()) {
        Assert.assertEquals(header.getValue(), response.getHeader(header.getKey()));
    }//from  w  w w.  j ava  2s .  c  om
    if (expectedPayload.binaryContent != null) {
        Assert.assertArrayEquals(expectedPayload.binaryContent, response.getContentAsByteArray());
    } else if (expectedPayload.characterContent != null) {
        Assert.assertEquals(expectedPayload.characterContent, response.getContentAsString());
    }
}