|
|
|
@ -1,5 +1,5 @@ |
|
|
|
|
/* |
|
|
|
|
* Copyright 2002-2012 the original author or authors. |
|
|
|
|
* Copyright 2002-2013 the original author or authors. |
|
|
|
|
* |
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
|
|
|
* you may not use this file except in compliance with the License. |
|
|
|
@ -17,12 +17,12 @@ |
|
|
|
|
package org.springframework.test.context.support; |
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.Collections; |
|
|
|
|
import java.util.List; |
|
|
|
|
import java.util.Set; |
|
|
|
|
|
|
|
|
|
import org.apache.commons.logging.Log; |
|
|
|
|
import org.apache.commons.logging.LogFactory; |
|
|
|
|
|
|
|
|
|
import org.springframework.beans.BeanUtils; |
|
|
|
|
import org.springframework.context.ApplicationContext; |
|
|
|
|
import org.springframework.context.ApplicationContextInitializer; |
|
|
|
@ -121,12 +121,11 @@ public abstract class AbstractContextLoader implements SmartContextLoader { |
|
|
|
|
*/ |
|
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
|
protected void prepareContext(ConfigurableApplicationContext context, MergedContextConfiguration mergedConfig) { |
|
|
|
|
|
|
|
|
|
context.getEnvironment().setActiveProfiles(mergedConfig.getActiveProfiles()); |
|
|
|
|
|
|
|
|
|
Set<Class<? extends ApplicationContextInitializer<? extends ConfigurableApplicationContext>>> initializerClasses = mergedConfig.getContextInitializerClasses(); |
|
|
|
|
|
|
|
|
|
if (initializerClasses.size() == 0) { |
|
|
|
|
Set<Class<? extends ApplicationContextInitializer<? extends ConfigurableApplicationContext>>> initializerClasses = |
|
|
|
|
mergedConfig.getContextInitializerClasses(); |
|
|
|
|
if (initializerClasses.isEmpty()) { |
|
|
|
|
// no ApplicationContextInitializers have been declared -> nothing to do
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
@ -145,7 +144,7 @@ public abstract class AbstractContextLoader implements SmartContextLoader { |
|
|
|
|
initializerInstances.add((ApplicationContextInitializer<ConfigurableApplicationContext>) BeanUtils.instantiateClass(initializerClass)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Collections.sort(initializerInstances, new AnnotationAwareOrderComparator()); |
|
|
|
|
AnnotationAwareOrderComparator.sort(initializerInstances); |
|
|
|
|
for (ApplicationContextInitializer<ConfigurableApplicationContext> initializer : initializerInstances) { |
|
|
|
|
initializer.initialize(context); |
|
|
|
|
} |
|
|
|
|