
org.jboss.test.faces.mock.FacesMocksClassControl Maven / Gradle / Ivy
The newest version!
package org.jboss.test.faces.mock;
import java.lang.reflect.Method;
import org.easymock.ConstructorArgs;
import org.easymock.EasyMockSupport;
import org.easymock.IMocksControl;
import org.easymock.MockType;
import org.easymock.internal.IProxyFactory;
import org.easymock.internal.MocksControl;
public class FacesMocksClassControl extends MocksControl implements IMocksControl {
private static final long serialVersionUID = -6032144451192179422L;
private EasyMockSupport support = new EasyMockSupport();
public FacesMocksClassControl(MockType type) {
super(type);
}
public R createMock(String name, Class toMock,
Method... mockedMethods) {
if(toMock.isInterface()) {
throw new IllegalArgumentException("Partial mocking doesn't make sense for interface");
}
R mock = support.partialMockBuilder(toMock).addMockedMethods(mockedMethods).createMock(name); //MZ createMock(name, toMock);
// Set the mocked methods on the interceptor
//MZ getInterceptor(mock).setMockedMethods(mockedMethods);
return mock;
}
public R createMock(Class toMock, Method... mockedMethods) {
if(toMock.isInterface()) {
throw new IllegalArgumentException("Partial mocking doesn't make sense for interface");
}
R mock = support.partialMockBuilder(toMock).addMockedMethods(mockedMethods).createMock(); //MZ createMock(toMock);
// Set the mocked methods on the interceptor
//MZ getInterceptor(mock).setMockedMethods(mockedMethods);
return mock;
}
public R createMock(Class toMock, ConstructorArgs constructorArgs,
Method... mockedMethods) {
//MZ // Trick to allow the ClassProxyFactory to access constructor args
//MZ setCurrentConstructorArgs(constructorArgs);
//MZ try {
return super.createMock(null, toMock, constructorArgs, mockedMethods);
//MZ } finally {
//MZ setCurrentConstructorArgs(null);
//MZ }
}
public R createMock(String name, Class toMock,
ConstructorArgs constructorArgs, Method... mockedMethods) {
//MZ // Trick to allow the ClassProxyFactory to access constructor args
//MZ setCurrentConstructorArgs(constructorArgs);
//MZ try {
return super.createMock(name, toMock, constructorArgs, mockedMethods);
//MZ } finally {
//MZ setCurrentConstructorArgs(null);
//MZ }
}
protected IProxyFactory createProxyFactory(Class toMock) {
if (toMock.isInterface()) {
return super.getProxyFactory(toMock);
}
return new FacesClassProxyFactory();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy