@Test public void testResetBuffer() throws IOException { HttpServletResponse response = mock(HttpServletResponse.class); when(response.isCommitted()).thenReturn(false); ServletOutputStream out = mock(ServletOutputStream.class); when(response.getOutputStream()).thenReturn(out); GZIPResponseWrapper test = new GZIPResponseWrapper(response); ServletOutputStream servletOutput = test.getOutputStream(); assertEquals(org.apache.hadoop.hbase.rest.filter.GZIPResponseStream.class, servletOutput.getClass()); test.resetBuffer(); verify(response).setHeader("Content-Encoding", null); when(response.isCommitted()).thenReturn(true); servletOutput = test.getOutputStream(); assertEquals(out.getClass(), servletOutput.getClass()); assertNotNull(test.getWriter()); }
@Test public void testReset() throws IOException { HttpServletResponse response = mock(HttpServletResponse.class); when(response.isCommitted()).thenReturn(false); ServletOutputStream out = mock(ServletOutputStream.class); when(response.getOutputStream()).thenReturn(out); GZIPResponseWrapper test = new GZIPResponseWrapper(response); ServletOutputStream servletOutput = test.getOutputStream(); assertEquals(org.apache.hadoop.hbase.rest.filter.GZIPResponseStream.class, servletOutput.getClass()); test.reset(); verify(response).setHeader("Content-Encoding", null); when(response.isCommitted()).thenReturn(true); servletOutput = test.getOutputStream(); assertEquals(out.getClass(), servletOutput.getClass()); }
/** * headers function should be called in response except header "content-length" * * @throws IOException */ @Test public void testHeader() throws IOException { HttpServletResponse response = mock(HttpServletResponse.class); GZIPResponseWrapper test = new GZIPResponseWrapper(response); test.setStatus(200); verify(response).setStatus(200); test.addHeader("header", "header value"); verify(response).addHeader("header", "header value"); test.addHeader("content-length", "header value2"); verify(response, never()).addHeader("content-length", "header value"); test.setIntHeader("header", 5); verify(response).setIntHeader("header", 5); test.setIntHeader("content-length", 4); verify(response, never()).setIntHeader("content-length", 4); test.setHeader("set-header", "new value"); verify(response).setHeader("set-header", "new value"); test.setHeader("content-length", "content length value"); verify(response, never()).setHeader("content-length", "content length value"); test.sendRedirect("location"); verify(response).sendRedirect("location"); test.flushBuffer(); verify(response).flushBuffer(); }
@Test public void testSendError() throws IOException { HttpServletResponse response = mock(HttpServletResponse.class); GZIPResponseWrapper test = new GZIPResponseWrapper(response); test.sendError(404); verify(response).sendError(404); test.sendError(404, "error message"); verify(response).sendError(404, "error message"); }