Code Snippet

Just another Code Snippet site

[Java] Mock ServletOutputStream

Step #1 :

    public class MockServletOutputStream extends ServletOutputStream {
        public ByteArrayOutputStream baos = new ByteArrayOutputStream();

        @Override
        public void write(int i) throws IOException {
            baos.write(i);
        }
    }

Step #2 :

        MockServletOutputStream servletOutputStream = new MockServletOutputStream();
        HttpServletResponse response = mock(HttpServletResponse.class);
        when(response.getOutputStream()).thenReturn(servletOutputStream);

Step #3 :

        File output = new File("target/test-classes/file1.xlsx");
        FileOutputStream outputFos = new FileOutputStream(output);
        IOUtils.write(servletOutputStream.baos.toByteArray(), outputFos);


Comments are currently closed.