Skip to content

Instantly share code, notes, and snippets.

@rgolangh
Created March 4, 2014 11:58
Show Gist options
  • Save rgolangh/fb0f42cf39e0b25cf0c6 to your computer and use it in GitHub Desktop.
Save rgolangh/fb0f42cf39e0b25cf0c6 to your computer and use it in GitHub Desktop.
package org.ovirt.engine.core.bll;
import javax.annotation.Resource;
import javax.enterprise.inject.Produces;
import javax.inject.Inject;
import javax.transaction.Transaction;
import javax.transaction.TransactionManager;
import org.infinispan.transaction.tm.DummyTransactionManager;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.junit.Before;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.ovirt.engine.core.common.MockUtils;
import org.ovirt.engine.core.common.config.Config;
import org.ovirt.engine.core.common.config.IConfigUtilsInterface;
import org.ovirt.engine.core.common.utils.Injector;
import org.ovirt.engine.core.dal.dbbroker.DbFacade;
import org.ovirt.engine.core.dal.dbbroker.DbFacadeLocator;
import org.ovirt.engine.core.utils.cache.CacheManager;
import org.ovirt.engine.core.utils.transaction.TransactionSupport;
@RunWith(Arquillian.class)
public class CommonTestDependencies {
// init the Injector helper for programmatic lookup
@Inject
Injector injector;
@Produces
public Config config = Mockito.mock(Config.class);
@Produces
public static DbFacade dbFacade = Mockito.mock(DbFacade.class);
@Produces
public CacheManager cacheManager = Mockito.mock(CacheManager.class);
@Produces
public DbFacadeLocator dbFacadeLocator = Mockito.mock(DbFacadeLocator.class);
@Produces
public IConfigUtilsInterface configUtilsInterface;
@Produces
public static Transaction transaction = Mockito.mock(Transaction.class);
@Produces @Resource(lookup = "java:jboss/TransactionManager")
public TransactionManager transactionManager = DummyTransactionManager.getInstance();
public static Class<?>[] getClasses() {
return new Class[] {
DummyLog.class,
Injector.class,
TransactionSupport.class,
DummyLockManager.class,
DummyTransactionManager.class,
CommonTestDependencies.class
};
}
@Before
public void initializeMocks() {
MockitoAnnotations.initMocks(this);
}
@Deployment(name = "_base_")
public static JavaArchive createDeployment() {
return MockUtils.createDeployment(getClasses());
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment