From: Tim M. <ma...@us...> - 2003-07-06 23:06:14
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic In directory sc8-pr-cvs1:/tmp/cvs-serv17710/core/com/mockobjects/dynamic Modified Files: Mock.java CoreMock.java Added Files: DynamicMock.java Log Message: Composition of DynamicMock step - 2 --- NEW FILE: DynamicMock.java --- package com.mockobjects.dynamic; public interface DynamicMock { void expect(Callable invocationMatcher); void stub(Callable invocationMatcher); void reset(); } Index: Mock.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/Mock.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- Mock.java 6 Jul 2003 22:45:24 -0000 1.27 +++ Mock.java 6 Jul 2003 23:06:12 -0000 1.28 @@ -21,11 +21,7 @@ this(mockedClass, mockNameFromClass(mockedClass)); } - public void reset() { - this.callables.reset(); - } - - public static String mockNameFromClass(Class c) { + public static String mockNameFromClass(Class c) { return "mock" + className(c); } @@ -65,7 +61,7 @@ } public void expect(String methodName, ConstraintMatcher args) { - callables.addExpect(callableFactory.createCallExpectation(callableFactory.createVoidCallable(methodName, args))); + this.expect(callableFactory.createCallExpectation(callableFactory.createVoidCallable(methodName, args))); } public void expectAndReturn(String methodName, Object result) { @@ -101,7 +97,7 @@ } public void expectAndReturn(String methodName, ConstraintMatcher args, Object result) { - callables.addExpect(callableFactory.createCallExpectation(callableFactory.createReturnCallable(methodName, args, result))); + this.expect(callableFactory.createCallExpectation(callableFactory.createReturnCallable(methodName, args, result))); } public void expectAndThrow(String methodName, Throwable exception) { @@ -113,7 +109,7 @@ } public void expectAndThrow(String methodName, ConstraintMatcher args, Throwable exception) { - callables.addExpect(callableFactory.createCallExpectation(callableFactory.createThrowableCallable(methodName, args, exception))); + this.expect(callableFactory.createCallExpectation(callableFactory.createThrowableCallable(methodName, args, exception))); } public void match(String methodName) { @@ -133,7 +129,7 @@ } public void match(String methodName, ConstraintMatcher args) { - callables.addMatch(callableFactory.createVoidCallable(methodName, args)); + this.stub(callableFactory.createVoidCallable(methodName, args)); } public void matchAndReturn(String methodName, Object result) { @@ -177,7 +173,7 @@ } public void matchAndReturn(String methodName, ConstraintMatcher args, Object result) { - callables.addMatch(callableFactory.createReturnCallable(methodName, args, result)); + this.stub(callableFactory.createReturnCallable(methodName, args, result)); } public void matchAndThrow(String methodName, Throwable throwable) { @@ -197,7 +193,7 @@ } public void matchAndThrow(String methodName, ConstraintMatcher args, Throwable throwable) { - callables.addMatch(callableFactory.createThrowableCallable(methodName, args, throwable)); + this.stub(callableFactory.createThrowableCallable(methodName, args, throwable)); } /** @deprecated @see OrderedMock Index: CoreMock.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/CoreMock.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- CoreMock.java 6 Jul 2003 22:45:24 -0000 1.1 +++ CoreMock.java 6 Jul 2003 23:06:12 -0000 1.2 @@ -9,14 +9,14 @@ import junit.framework.AssertionFailedError; -public class CoreMock implements InvocationHandler, Verifiable { - protected CallableCollection callables; +public class CoreMock implements DynamicMock, InvocationHandler, Verifiable { + private CallableCollection invocationMatchers; private Object proxy; private String name; public CoreMock(Class mockedClass, String name, CallableCollection callables) { this.name = name; - this.callables = callables; + this.invocationMatchers = callables; this.proxy = Proxy.newProxyInstance(getClass().getClassLoader(), new Class[] { mockedClass }, this); } @@ -34,7 +34,7 @@ } else if (isMockNameGetter(activeCall)) { return this.getMockName(); } else { - return callables.call(activeCall); + return invocationMatchers.call(activeCall); } } catch (AssertionFailedError ex) { throw new AssertionFailedError(name + ": " + ex.getMessage()); @@ -43,7 +43,7 @@ public void verify() { try { - callables.verify(); + invocationMatchers.verify(); } catch (AssertionFailedError ex) { throw new AssertionFailedError(name + ": " + ex.getMessage()); } @@ -57,6 +57,14 @@ return this.name; } + public void expect(Callable invocationMatcher) { + invocationMatchers.addExpect(invocationMatcher); + } + + public void stub(Callable invocationMatcher) { + invocationMatchers.addMatch(invocationMatcher); + } + protected boolean isCheckingEqualityOnProxy(ActiveCall call) { return (call.getMethodName().equals("equals")) && (call.args.length == 1) && (Proxy.isProxyClass(call.args[0].getClass())); @@ -64,6 +72,10 @@ protected boolean isMockNameGetter(ActiveCall call) { return (call.getMethodName().equals("getMockName")) && (call.args.length == 0); + } + + public void reset() { + this.invocationMatchers.reset(); } } |