From: Steve F. <sm...@us...> - 2003-04-16 22:17:41
|
Update of /cvsroot/mockobjects/mockobjects-java/src/examples/com/mockobjects/examples/dynamic In directory sc8-pr-cvs1:/tmp/cvs-serv25147/src/examples/com/mockobjects/examples/dynamic Modified Files: Tag: DynamicMockExperiment SimpleServlet.java SimpleServletTest.java Added Files: Tag: DynamicMockExperiment Timer.java Log Message: Added example of multiple calls to same method (Timer) --- NEW FILE: Timer.java --- package com.mockobjects.examples.dynamic; public interface Timer { int getTime(); } Index: SimpleServlet.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/examples/com/mockobjects/examples/dynamic/Attic/SimpleServlet.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -r1.1.2.5 -r1.1.2.6 --- SimpleServlet.java 14 Apr 2003 18:46:51 -0000 1.1.2.5 +++ SimpleServlet.java 16 Apr 2003 22:17:35 -0000 1.1.2.6 @@ -15,16 +15,30 @@ public class SimpleServlet extends HttpServlet { + private Timer timer; + + public SimpleServlet(Timer aTimer) { + super(); + timer = aTimer; + } + + public SimpleServlet() { + this(null); // really this would be a proper timer... + } + public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String body = request.getParameter("body"); String subject = request.getParameter("subject"); String browser = request.getParameter("browser-identifier"); - String subjectCopy = request.getParameter("subject"); //String pet = request.getParameter("favourite-pet"); - - response.setContentType("text/html"); - Writer writer = response.getWriter(); + + response.setContentType("text/html"); + PrintWriter writer = response.getWriter(); + + writer.print("timer before:" + timer.getTime()); + // some long operation + writer.print("timer after:" + timer.getTime()); } Index: SimpleServletTest.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/examples/com/mockobjects/examples/dynamic/Attic/SimpleServletTest.java,v retrieving revision 1.1.2.7 retrieving revision 1.1.2.8 diff -u -r1.1.2.7 -r1.1.2.8 --- SimpleServletTest.java 14 Apr 2003 18:46:51 -0000 1.1.2.7 +++ SimpleServletTest.java 16 Apr 2003 22:17:36 -0000 1.1.2.8 @@ -6,15 +6,19 @@ */ package com.mockobjects.examples.dynamic; -import java.io.*; +import java.io.IOException; +import java.io.PrintWriter; +import java.io.StringWriter; -import javax.servlet.*; -import javax.servlet.http.*; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; -import com.mockobjects.constraint.*; -import com.mockobjects.dynamic.*; +import junit.framework.TestCase; -import junit.framework.*; +import com.mockobjects.dynamic.C; +import com.mockobjects.dynamic.Mock; +import com.mockobjects.dynamic.OrderedMock; /** * @author dev @@ -52,12 +56,15 @@ } */ public void testDoGetNew() throws ServletException, IOException { + Mock mockTimer = new Mock(Timer.class); Mock mockHttpServletResponse = new OrderedMock(HttpServletResponse.class, "response"); Mock mockHttpServletRequest = new Mock(HttpServletRequest.class); mockHttpServletRequest.matchAndReturn( "getParameter", C.args(C.eq("browser-identifier")), "MSIE-5.0" ); mockHttpServletRequest.expectAndReturn( "getParameter", "subject", "Mail Subject" ); mockHttpServletRequest.expectAndReturn( "getParameter", C.args(C.eq("body")), "Mail Body" ); + mockTimer.expectAndReturn("getTime", 10000); + mockTimer.expectAndReturn("getTime", 20000); final PrintWriter contentWriter = new PrintWriter(new StringWriter()); @@ -68,7 +75,7 @@ // CallMatch m2 = mockHttpServletResponse.expectAndReturn( "getWriter", C.args(), contentWriter ); // m1.expectBefore(m2); - SimpleServlet aServlet = new SimpleServlet(); + SimpleServlet aServlet = new SimpleServlet((Timer)mockTimer.proxy()); aServlet.doGet((HttpServletRequest) mockHttpServletRequest.proxy(), (HttpServletResponse) mockHttpServletResponse.proxy()); mockHttpServletRequest.verify(); |