package ir.cafebabe.ninja; import static org.junit.Assert.*; import ir.caebabe.ninja.providers.ProcessEngineProvider; import java.util.Properties; import ninja.utils.NinjaProperties; import org.activiti.engine.ProcessEngine; import org.junit.Ignore; import org.junit.Test; import static org.mockito.Mockito.when; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; import org.slf4j.Logger; @RunWith(MockitoJUnitRunner.class) public class ConfigurationTest { @Mock NinjaProperties ninjaProperties; @Mock Logger logger; @Ignore @Test public void testDefaultConfigInitialization() { ProcessEngineProvider peP = new ProcessEngineProvider(logger, ninjaProperties); ProcessEngine processEngine = peP.get(); assertEquals("default", processEngine.getName()); } @Ignore @Test public void testCustomConfigInitialization() { //when(ninjaProperties.get("activiti.processEngineName")).thenReturn("Morteza"); when(ninjaProperties.get("activiti.cfg.path")).thenReturn("conf/my.activiti.cfg.xml"); ProcessEngineProvider peP = new ProcessEngineProvider(logger, ninjaProperties); ProcessEngine processEngine = peP.get(); assertEquals("Morteza", processEngine.getName()); } @Test public void testPropertyConfigInitialization() { //wrong path cause module to ignore any xml configurations when(ninjaProperties.get("activiti.cfg.path")).thenReturn("conf/my2.activiti.cfg.xml"); when(ninjaProperties.get("activiti.databaseSchemaUpdate")).thenReturn("create-drop"); when(ninjaProperties.get("activiti.jdbcUrl")).thenReturn("jdbc:h2:mem:activitiprop"); ProcessEngineProvider peP = new ProcessEngineProvider(logger, ninjaProperties); ProcessEngine processEngine = peP.get(); assertNotNull(processEngine.getName()); } }