From: Tim M. <ma...@us...> - 2003-04-11 15:38:27
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/test/mockobjects/dynamic In directory sc8-pr-cvs1:/tmp/cvs-serv805/src/core/test/mockobjects/dynamic Modified Files: Tag: DynamicMockExperiment MockCallFactory.java CallSetTest.java Log Message: expect and VoidReturnStub Index: MockCallFactory.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/test/mockobjects/dynamic/Attic/MockCallFactory.java,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -r1.1.2.2 -r1.1.2.3 --- MockCallFactory.java 11 Apr 2003 13:21:16 -0000 1.1.2.2 +++ MockCallFactory.java 11 Apr 2003 15:38:20 -0000 1.1.2.3 @@ -5,13 +5,15 @@ import com.mockobjects.dynamic.Callable; import com.mockobjects.constraint.Constraint; -public class MockCallFactory implements CallFactory{ +public class MockCallFactory implements CallFactory, Verifiable { private ExpectationCounter myCreateReturnStubCalls = new ExpectationCounter("MockCallFactory.createReturnStub(Object)"); private ReturnValues myActualCreateReturnStubReturnValues = new ReturnValues("MockCallFactory.createReturnStub(Object)", true); private ExpectationList myCreateReturnStubParameter0Values = new ExpectationList("MockCallFactory.createReturnStub(Object) java.lang.Object"); private ExpectationCounter myCreateThrowStubCalls = new ExpectationCounter("MockCallFactory.createThrowStub(Throwable)"); private ReturnValues myActualCreateThrowStubReturnValues = new ReturnValues("MockCallFactory.createThrowStub(Throwable)", true); private ExpectationList myCreateThrowStubParameter0Values = new ExpectationList("MockCallFactory.createThrowStub(Throwable) java.lang.Throwable"); + private ExpectationCounter myCreateVoidStubCalls = new ExpectationCounter("MockCallFactory.createVoidStub()"); + private ReturnValues myActualCreateVoidStubReturnValues = new ReturnValues("MockCallFactory.createVoidStub()", true); private ExpectationCounter myCreateExpectedCallCalls = new ExpectationCounter("MockCallFactory.createExpectedCall(Callable)"); private ReturnValues myActualCreateExpectedCallReturnValues = new ReturnValues("MockCallFactory.createExpectedCall(Callable)", true); private ExpectationList myCreateExpectedCallParameter0Values = new ExpectationList("MockCallFactory.createExpectedCall(Callable) com.mockobjects.dynamic.Callable"); @@ -71,6 +73,26 @@ myActualCreateThrowStubReturnValues.add(arg); } + public void setExpectedCreateVoidStubCalls(int calls){ + myCreateVoidStubCalls.setExpected(calls); + } + + public Callable createVoidStub(){ + myCreateVoidStubCalls.inc(); + Object nextReturnValue = myActualCreateVoidStubReturnValues.getNext(); + if (nextReturnValue instanceof ExceptionalReturnValue && ((ExceptionalReturnValue)nextReturnValue).getException() instanceof RuntimeException) + throw (RuntimeException)((ExceptionalReturnValue)nextReturnValue).getException(); + return (Callable) nextReturnValue; + } + + public void setupExceptionCreateVoidStub(Throwable arg){ + myActualCreateVoidStubReturnValues.add(new ExceptionalReturnValue(arg)); + } + + public void setupCreateVoidStub(Callable arg){ + myActualCreateVoidStubReturnValues.add(arg); + } + public void setExpectedCreateExpectedCallCalls(int calls){ myCreateExpectedCallCalls.setExpected(calls); } @@ -130,6 +152,7 @@ myCreateReturnStubParameter0Values.verify(); myCreateThrowStubCalls.verify(); myCreateThrowStubParameter0Values.verify(); + myCreateVoidStubCalls.verify(); myCreateExpectedCallCalls.verify(); myCreateExpectedCallParameter0Values.verify(); myCreateCallMatchCalls.verify(); Index: CallSetTest.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/test/mockobjects/dynamic/Attic/CallSetTest.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -r1.1.2.5 -r1.1.2.6 --- CallSetTest.java 11 Apr 2003 13:21:16 -0000 1.1.2.5 +++ CallSetTest.java 11 Apr 2003 15:38:21 -0000 1.1.2.6 @@ -19,6 +19,7 @@ private MockCallable mockCallMatch = new MockCallable(); private MockCallable mockExpectedCall = new MockCallable(); private MockCallable mockThrowStub = new MockCallable(); + private MockCallable mockVoidStub = new MockCallable(); private Mock unusedMock = null; private MockCallable methodA = new MockCallable(); @@ -68,22 +69,41 @@ methodB.verifyExpectations(); } - public void testExpectAndReturn() throws Throwable{ + public void testExpect() throws Throwable{ mockExpectedCall.setupMatchesReturn(true); mockExpectedCall.setupCallReturn(METHOD_A_RESULT); - mockCallFactory.addExpectedCreateReturnStub( METHOD_A_RESULT ); - mockCallFactory.setupCreateReturnStub( mockReturnStub ); - mockCallFactory.addExpectedCreateCallMatch( METHOD_A_NAME, METHOD_A_CONSTRAINTS, mockReturnStub ); + mockCallFactory.setExpectedCreateVoidStubCalls(1); + mockCallFactory.setupCreateVoidStub( mockVoidStub ); + mockCallFactory.addExpectedCreateCallMatch( METHOD_A_NAME, METHOD_A_CONSTRAINTS, mockVoidStub ); mockCallFactory.setupCreateCallMatch( mockCallMatch ); mockCallFactory.addExpectedCreateExpectedCall( mockCallMatch ); mockCallFactory.setupCreateExpectedCall( mockExpectedCall ); - callSet.expectAndReturn( METHOD_A_NAME, METHOD_A_CONSTRAINTS, METHOD_A_RESULT ); + callSet.expect( METHOD_A_NAME, METHOD_A_CONSTRAINTS ); assertSame( "should be result of calling expected call", METHOD_A_RESULT, callSet.call( unusedMock, METHOD_A_NAME, METHOD_A_ARGS ) ); + Verifier.verifyObject(this); + } + + public void testExpectAndReturn() throws Throwable{ + mockExpectedCall.setupMatchesReturn(true); + mockExpectedCall.setupCallReturn(METHOD_A_RESULT); + + mockCallFactory.addExpectedCreateReturnStub( METHOD_A_RESULT ); + mockCallFactory.setupCreateReturnStub( mockReturnStub ); + mockCallFactory.addExpectedCreateCallMatch( METHOD_A_NAME, METHOD_A_CONSTRAINTS, mockReturnStub ); + mockCallFactory.setupCreateCallMatch( mockCallMatch ); + mockCallFactory.addExpectedCreateExpectedCall( mockCallMatch ); + mockCallFactory.setupCreateExpectedCall( mockExpectedCall ); + + callSet.expectAndReturn( METHOD_A_NAME, METHOD_A_CONSTRAINTS, METHOD_A_RESULT ); + + assertSame( "should be result of calling expected call", + METHOD_A_RESULT, callSet.call( unusedMock, METHOD_A_NAME, METHOD_A_ARGS ) ); + Verifier.verifyObject(this); } |