package servlets; import static org.easymock.EasyMock.createStrictMock; import static org.easymock.EasyMock.expect; import static org.easymock.EasyMock.replay; import static org.easymock.EasyMock.verify; import java.io.PrintWriter; import java.io.StringWriter; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import junit.framework.TestCase; public class TestCustomerCardSaveServlet extends TestCase { public void testWithMockObjects() throws Exception { HttpServletRequest mockHttpServletRequest = createStrictMock(HttpServletRequest.class); HttpServletResponse mockHttpServletResponse = createStrictMock(HttpServletResponse.class); HttpSession mockHttpSession = createStrictMock(HttpSession.class); StringWriter output = new StringWriter(); PrintWriter contentWriter = new PrintWriter(output); Map parameters = new HashMap(); String xmlData = ""; String[] customerCardData = { xmlData }; parameters.put("customerCardData", customerCardData); expect(mockHttpServletResponse.getWriter()).andReturn(contentWriter); expect(mockHttpServletRequest.getSession(false)).andReturn(mockHttpSession); expect(mockHttpSession.getAttribute(ServletConstants.LOGIN_VALID)).andReturn(true).times(2); expect(mockHttpServletRequest.getParameterMap()).andReturn(parameters); replay(mockHttpServletResponse); replay(mockHttpServletRequest); replay(mockHttpSession); new CustomerCardSaveServlet().doPost(mockHttpServletRequest, mockHttpServletResponse); verify(mockHttpServletResponse); verify(mockHttpServletRequest); verify(mockHttpSession); String expected = "\r\n\r\n"; assertEquals(expected,output.toString()); } }