|
|
|
|
@ -16,6 +16,8 @@
@@ -16,6 +16,8 @@
|
|
|
|
|
|
|
|
|
|
package org.springframework.bootstrap; |
|
|
|
|
|
|
|
|
|
import java.util.concurrent.atomic.AtomicReference; |
|
|
|
|
|
|
|
|
|
import org.junit.After; |
|
|
|
|
import org.junit.Rule; |
|
|
|
|
import org.junit.Test; |
|
|
|
|
@ -28,6 +30,7 @@ import org.springframework.bootstrap.context.embedded.AnnotationConfigEmbeddedWe
@@ -28,6 +30,7 @@ import org.springframework.bootstrap.context.embedded.AnnotationConfigEmbeddedWe
|
|
|
|
|
import org.springframework.bootstrap.context.embedded.jetty.JettyEmbeddedServletContainerFactory; |
|
|
|
|
import org.springframework.context.ApplicationContext; |
|
|
|
|
import org.springframework.context.ApplicationContextAware; |
|
|
|
|
import org.springframework.context.ApplicationContextInitializer; |
|
|
|
|
import org.springframework.context.ConfigurableApplicationContext; |
|
|
|
|
import org.springframework.context.annotation.AnnotationConfigApplicationContext; |
|
|
|
|
import org.springframework.context.annotation.AnnotationConfigUtils; |
|
|
|
|
@ -130,6 +133,24 @@ public class SpringApplicationTests {
@@ -130,6 +133,24 @@ public class SpringApplicationTests {
|
|
|
|
|
assertThat(this.context, instanceOf(StaticApplicationContext.class)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void specificApplicationContextInitializer() throws Exception { |
|
|
|
|
SpringApplication application = new SpringApplication(ExampleConfig.class); |
|
|
|
|
application.setWebEnvironment(false); |
|
|
|
|
final AtomicReference<ApplicationContext> reference = new AtomicReference<ApplicationContext>(); |
|
|
|
|
application |
|
|
|
|
.addInitializers(new ApplicationContextInitializer<ConfigurableApplicationContext>() { |
|
|
|
|
@Override |
|
|
|
|
public void initialize(ConfigurableApplicationContext context) { |
|
|
|
|
reference.set(context); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
this.context = application.run("--foo=bar"); |
|
|
|
|
assertThat(this.context, sameInstance(reference.get())); |
|
|
|
|
// Custom initializers do not switch off the defaults
|
|
|
|
|
assertThat(getEnvironment().getProperty("foo"), equalTo("bar")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void defaultApplicationContext() throws Exception { |
|
|
|
|
SpringApplication application = new SpringApplication(ExampleConfig.class); |
|
|
|
|
|