001
014
015 package com.liferay.portal.test.runners;
016
017 import com.liferay.portal.kernel.test.AbstractIntegrationJUnitTestRunner;
018 import com.liferay.portal.kernel.util.ListUtil;
019 import com.liferay.portal.kernel.util.PropsKeys;
020 import com.liferay.portal.test.jdbc.ResetDatabaseUtilDataSource;
021 import com.liferay.portal.util.InitUtil;
022 import com.liferay.portal.util.PropsUtil;
023
024 import java.util.List;
025
026 import org.junit.runners.model.InitializationError;
027
028
031 public abstract class CustomizableSpringContextJUnitTestRunner
032 extends AbstractIntegrationJUnitTestRunner {
033
034 public CustomizableSpringContextJUnitTestRunner(Class<?> clazz)
035 throws InitializationError {
036
037 super(clazz);
038 }
039
040 public abstract void afterApplicationContextInit();
041
042 public abstract List<String> getExtraConfigLocations();
043
044 @Override
045 public void initApplicationContext() {
046 System.setProperty("catalina.base", ".");
047
048 ResetDatabaseUtilDataSource.initialize();
049
050 List<String> configLocations = ListUtil.fromArray(
051 PropsUtil.getArray(PropsKeys.SPRING_CONFIGS));
052
053 configLocations.addAll(getExtraConfigLocations());
054
055 InitUtil.initWithSpringAndModuleFramework(
056 false, processConfigLocations(configLocations), false);
057
058 afterApplicationContextInit();
059 }
060
061 protected List<String> processConfigLocations(
062 List<String> configLocations) {
063
064 return configLocations;
065 }
066
067 }