package org.sculptor.framework.test;
import org.mockito.Mockito;
import org.springframework.beans.factory.FactoryBean;
/**
* This spring factory can be used to replace a spring bean with a Mockito mock object. See
* http://javadevelopmentforthemasses.blogspot.com/2008/07/mocking-spring-tests.html
* <p>
* Usage:
*
* <pre>
* <bean id="inquirySenderMockFactory" class="org.customer.util.MockFactory" primary="true" >
* <property name="type" value="org.customer.inquiry.repositoryimpl.InquirySender"/>
* </bean>
* </pre>
*/
public class MockitoFactory implements FactoryBean<Object> {
private Class<?> type;
/**
* the created object type (interface)
*/
public void setType(final Class<?> type) {
this.type = type;
}
public Object getObject() throws Exception {
return Mockito.mock(type);
}
public Class<?> getObjectType() {
return type;
}
public boolean isSingleton() {
return true;
}
}