package org.dddlib.organisation.domain; import org.dayatang.domain.InstanceFactory; import org.dayatang.ioc.spring.factory.SpringInstanceProvider; import org.junit.After; import org.junit.Before; import org.junit.runner.RunWith; import org.springframework.context.ApplicationContext; import org.springframework.test.annotation.Rollback; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; import javax.inject.Inject; /** * 集成测试基类。用于管理持久化和IoC基础设施 * * @author yyang * */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("/applicationContext.xml") @Rollback(value = true) @Transactional(transactionManager = "txManager") public class AbstractIntegrationTest { @Inject private ApplicationContext applicationContext; @Before public void setUp() throws Exception { SpringInstanceProvider provider = new SpringInstanceProvider(applicationContext); InstanceFactory.setInstanceProvider(provider); } @After public void tearDown() throws Exception { InstanceFactory.setInstanceProvider(null); } }