cglibcoremock.java
来自「不管是测试驱动开发或者是其它的开发模式」· Java 代码 · 共 49 行
JAVA
49 行
/* Copyright (c) 2000-2004 jMock.org
*/
package org.jmock.cglib;
import java.lang.reflect.Method;
import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.MethodInterceptor;
import net.sf.cglib.proxy.MethodProxy;
import org.jmock.core.AbstractDynamicMock;
import org.jmock.core.Invocation;
import org.jmock.core.InvocationDispatcher;
import org.jmock.core.LIFOInvocationDispatcher;
public class CGLIBCoreMock
extends AbstractDynamicMock
implements MethodInterceptor
{
private Object proxy;
public CGLIBCoreMock( Class mockedType ) {
this(mockedType,
mockNameFromClass(mockedType),
new LIFOInvocationDispatcher());
}
public CGLIBCoreMock( Class mockedType, String name ) {
this(mockedType, name, new LIFOInvocationDispatcher());
}
public CGLIBCoreMock( Class mockedType,
String name,
InvocationDispatcher invocationDispatcher ) {
super(mockedType, name, invocationDispatcher);
this.proxy = Enhancer.create(mockedType, this);
}
public Object proxy() {
return this.proxy;
}
public Object intercept( Object thisProxy, Method method, Object[] args,
MethodProxy superProxy )
throws Throwable {
Invocation invocation = new Invocation(proxy, method, args);
return mockInvocation(invocation);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?