use of com.enonic.xp.web.WebRequest in project xp by enonic.
the class ResponseSerializerTest method serializeBodyBytes.
@Test
public void serializeBodyBytes() throws Exception {
final WebRequest req = new WebRequest();
req.setMethod(HttpMethod.GET);
final byte[] body_bytes = "String body".getBytes(StandardCharsets.UTF_8);
final WebResponse resp = WebResponse.create().status(HttpStatus.ACCEPTED).contentType(MediaType.PLAIN_TEXT_UTF_8).header("header-test", "header-value").cookie(new Cookie("cookie-name", "cookie-value")).body(body_bytes).build();
final ResponseSerializer serializer = new ResponseSerializer(req, resp);
final HttpServletResponse httpResponse = mock(HttpServletResponse.class);
final ServletOutputStream servletOutputStream = mock(ServletOutputStream.class);
when(httpResponse.getOutputStream()).thenReturn(servletOutputStream);
serializer.serialize(httpResponse);
verify(httpResponse).setHeader("header-test", "header-value");
verify(httpResponse).setStatus(202);
verify(httpResponse).setContentType("text/plain; charset=utf-8");
verify(httpResponse).setContentLength(11);
verify(servletOutputStream).write(body_bytes);
}
use of com.enonic.xp.web.WebRequest in project xp by enonic.
the class ResponseSerializerTest method serializeRequestCommitted.
@Test
public void serializeRequestCommitted() throws Exception {
final WebRequest req = new WebRequest();
req.setMethod(HttpMethod.GET);
final WebResponse resp = WebResponse.create().status(HttpStatus.OK).contentType(MediaType.PLAIN_TEXT_UTF_8).body("String body").build();
final ResponseSerializer serializer = new ResponseSerializer(req, resp);
final HttpServletResponse httpResponse = mock(HttpServletResponse.class);
when(httpResponse.isCommitted()).thenReturn(true);
serializer.serialize(httpResponse);
verify(httpResponse).isCommitted();
verifyNoMoreInteractions(httpResponse);
}
use of com.enonic.xp.web.WebRequest in project xp by enonic.
the class AdminSiteHandlerTest method setup.
@BeforeEach
public final void setup() throws Exception {
final ExceptionMapper exceptionMapper = Mockito.mock(ExceptionMapper.class);
final ExceptionRenderer exceptionRenderer = Mockito.mock(ExceptionRenderer.class);
this.handler = new AdminSiteHandler();
this.handler.setExceptionMapper(exceptionMapper);
this.handler.setExceptionRenderer(exceptionRenderer);
this.handler.activate(mock(AdminConfig.class, invocation -> invocation.getMethod().getDefaultValue()));
final HttpServletRequest rawRequest = Mockito.mock(HttpServletRequest.class);
this.request = new WebRequest();
this.request.setRawRequest(rawRequest);
this.response = WebResponse.create().build();
}
use of com.enonic.xp.web.WebRequest in project xp by enonic.
the class WebDispatcherServlet method service.
@Override
protected void service(final HttpServletRequest req, final HttpServletResponse res) throws ServletException, IOException {
final WebRequest webRequest = newWebRequest(req);
final WebSocketContext webSocketContext = this.webSocketContextFactory.newContext(req, res);
webRequest.setWebSocketContext(webSocketContext);
final WebResponse webResponse = doHandle(webRequest);
final WebSocketConfig config = webResponse.getWebSocket();
if ((webSocketContext != null) && (config != null)) {
return;
}
responseSerializationService.serialize(webRequest, webResponse, res);
}
Aggregations