diff options
author | Jesse Wilson <jessewilson@google.com> | 2012-05-14 21:47:16 -0400 |
---|---|---|
committer | Jesse Wilson <jessewilson@google.com> | 2012-05-14 21:47:16 -0400 |
commit | d0cddaf12d3ec4842cd81232ac3c718730f02b20 (patch) | |
tree | 92e493b01b89bbdffe09fe05e362dda2c6551452 | |
parent | 94a165f548c3d0ad192049b93a825a17b090da2e (diff) | |
download | dexmaker-d0cddaf12d3ec4842cd81232ac3c718730f02b20.tar.gz |
Update to latest Mockito mocking APIs
-rw-r--r-- | lib/mockito-core-1.9.1-SNAPSHOT.jar | bin | 1436354 -> 1490804 bytes | |||
-rw-r--r-- | src/mockito/java/com/google/dexmaker/mockito/DexmakerMockMaker.java | 17 | ||||
-rw-r--r-- | src/mockito/java/com/google/dexmaker/mockito/InvocationHandlerAdapter.java | 14 |
3 files changed, 17 insertions, 14 deletions
diff --git a/lib/mockito-core-1.9.1-SNAPSHOT.jar b/lib/mockito-core-1.9.1-SNAPSHOT.jar Binary files differindex 4a310b4..7d05e5e 100644 --- a/lib/mockito-core-1.9.1-SNAPSHOT.jar +++ b/lib/mockito-core-1.9.1-SNAPSHOT.jar diff --git a/src/mockito/java/com/google/dexmaker/mockito/DexmakerMockMaker.java b/src/mockito/java/com/google/dexmaker/mockito/DexmakerMockMaker.java index e108ab9..bf33342 100644 --- a/src/mockito/java/com/google/dexmaker/mockito/DexmakerMockMaker.java +++ b/src/mockito/java/com/google/dexmaker/mockito/DexmakerMockMaker.java @@ -20,10 +20,11 @@ import com.google.dexmaker.stock.ProxyBuilder; import java.lang.reflect.Field; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Proxy; +import java.util.Set; import org.mockito.exceptions.base.MockitoException; +import org.mockito.invocation.MockHandler; +import org.mockito.mock.MockCreationSettings; import org.mockito.plugins.MockMaker; -import org.mockito.plugins.MockSettingsInfo; -import org.mockito.plugins.MockitoInvocationHandler; /** * Generates mock instances on Android's runtime. @@ -31,8 +32,10 @@ import org.mockito.plugins.MockitoInvocationHandler; public final class DexmakerMockMaker implements MockMaker { private final UnsafeAllocator unsafeAllocator = UnsafeAllocator.create(); - public <T> T createMock(Class<T> typeToMock, Class<?>[] extraInterfaces, - MockitoInvocationHandler handler, MockSettingsInfo settings) { + public <T> T createMock(MockCreationSettings<T> settings, MockHandler handler) { + Class<T> typeToMock = settings.getTypeToMock(); + Set<Class> interfacesSet = settings.getExtraInterfaces(); + Class<?>[] extraInterfaces = interfacesSet.toArray(new Class[interfacesSet.size()]); InvocationHandler invocationHandler = new InvocationHandlerAdapter(handler); if (typeToMock.isInterface()) { @@ -64,16 +67,16 @@ public final class DexmakerMockMaker implements MockMaker { } } - public void resetMock(Object mock, MockitoInvocationHandler newHandler, MockSettingsInfo settings) { + public void resetMock(Object mock, MockHandler newHandler, MockCreationSettings settings) { InvocationHandlerAdapter adapter = getInvocationHandlerAdapter(mock); adapter.setHandler(newHandler); } - public MockitoInvocationHandler getHandler(Object mock) { + public MockHandler getHandler(Object mock) { InvocationHandlerAdapter adapter = getInvocationHandlerAdapter(mock); return adapter != null ? adapter.getHandler() : null; } - + private InvocationHandlerAdapter getInvocationHandlerAdapter(Object mock) { if (Proxy.isProxyClass(mock.getClass())) { InvocationHandler invocationHandler = Proxy.getInvocationHandler(mock); diff --git a/src/mockito/java/com/google/dexmaker/mockito/InvocationHandlerAdapter.java b/src/mockito/java/com/google/dexmaker/mockito/InvocationHandlerAdapter.java index c1e4720..268f2fd 100644 --- a/src/mockito/java/com/google/dexmaker/mockito/InvocationHandlerAdapter.java +++ b/src/mockito/java/com/google/dexmaker/mockito/InvocationHandlerAdapter.java @@ -19,22 +19,22 @@ package com.google.dexmaker.mockito; import com.google.dexmaker.stock.ProxyBuilder; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; -import org.mockito.internal.invocation.Invocation; +import org.mockito.internal.invocation.InvocationImpl; import org.mockito.internal.invocation.MockitoMethod; import org.mockito.internal.invocation.realmethod.RealMethod; import org.mockito.internal.progress.SequenceNumber; import org.mockito.internal.util.ObjectMethodsGuru; -import org.mockito.plugins.MockitoInvocationHandler; +import org.mockito.invocation.MockHandler; /** * Handles proxy method invocations to dexmaker's InvocationHandler by calling * a MockitoInvocationHandler. */ final class InvocationHandlerAdapter implements InvocationHandler { - private MockitoInvocationHandler handler; + private MockHandler handler; private final ObjectMethodsGuru objectMethodsGuru = new ObjectMethodsGuru(); - public InvocationHandlerAdapter(MockitoInvocationHandler handler) { + public InvocationHandlerAdapter(MockHandler handler) { this.handler = handler; } @@ -51,15 +51,15 @@ final class InvocationHandlerAdapter implements InvocationHandler { ProxiedMethod proxiedMethod = new ProxiedMethod(method); - return handler.handle(new Invocation(proxy, proxiedMethod, args, SequenceNumber.next(), + return handler.handle(new InvocationImpl(proxy, proxiedMethod, args, SequenceNumber.next(), proxiedMethod)); } - public MockitoInvocationHandler getHandler() { + public MockHandler getHandler() { return handler; } - public void setHandler(MockitoInvocationHandler handler) { + public void setHandler(MockHandler handler) { this.handler = handler; } |