Search in sources :

Example 11 with MockPropertySource

use of org.springframework.mock.env.MockPropertySource in project spring-framework by spring-projects.

the class EnvironmentSystemIntegrationTests method registerServletParamPropertySources_StaticWebApplicationContext.

@Test
public void registerServletParamPropertySources_StaticWebApplicationContext() {
    MockServletContext servletContext = new MockServletContext();
    servletContext.addInitParameter("pCommon", "pCommonContextValue");
    servletContext.addInitParameter("pContext1", "pContext1Value");
    MockServletConfig servletConfig = new MockServletConfig(servletContext);
    servletConfig.addInitParameter("pCommon", "pCommonConfigValue");
    servletConfig.addInitParameter("pConfig1", "pConfig1Value");
    StaticWebApplicationContext ctx = new StaticWebApplicationContext();
    ctx.setServletConfig(servletConfig);
    ctx.refresh();
    ConfigurableEnvironment environment = ctx.getEnvironment();
    MutablePropertySources propertySources = environment.getPropertySources();
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME), is(true));
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME), is(true));
    // ServletConfig gets precedence
    assertThat(environment.getProperty("pCommon"), is("pCommonConfigValue"));
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME)), lessThan(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME))));
    // but all params are available
    assertThat(environment.getProperty("pContext1"), is("pContext1Value"));
    assertThat(environment.getProperty("pConfig1"), is("pConfig1Value"));
    // Servlet* PropertySources have precedence over System* PropertySources
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME)), lessThan(propertySources.precedenceOf(PropertySource.named(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME))));
    // Replace system properties with a mock property source for convenience
    MockPropertySource mockSystemProperties = new MockPropertySource(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME);
    mockSystemProperties.setProperty("pCommon", "pCommonSysPropsValue");
    mockSystemProperties.setProperty("pSysProps1", "pSysProps1Value");
    propertySources.replace(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME, mockSystemProperties);
    // assert that servletconfig params resolve with higher precedence than sysprops
    assertThat(environment.getProperty("pCommon"), is("pCommonConfigValue"));
    assertThat(environment.getProperty("pSysProps1"), is("pSysProps1Value"));
}
Also used : MockServletConfig(org.springframework.mock.web.MockServletConfig) StaticWebApplicationContext(org.springframework.web.context.support.StaticWebApplicationContext) MockPropertySource(org.springframework.mock.env.MockPropertySource) MockServletContext(org.springframework.mock.web.MockServletContext) Test(org.junit.Test)

Example 12 with MockPropertySource

use of org.springframework.mock.env.MockPropertySource in project spring-framework by spring-projects.

the class EnvironmentSystemIntegrationTests method registerServletParamPropertySources_GenericWebApplicationContext.

@Test
public void registerServletParamPropertySources_GenericWebApplicationContext() {
    MockServletContext servletContext = new MockServletContext();
    servletContext.addInitParameter("pCommon", "pCommonContextValue");
    servletContext.addInitParameter("pContext1", "pContext1Value");
    GenericWebApplicationContext ctx = new GenericWebApplicationContext();
    ctx.setServletContext(servletContext);
    ctx.refresh();
    ConfigurableEnvironment environment = ctx.getEnvironment();
    assertThat(environment, instanceOf(StandardServletEnvironment.class));
    MutablePropertySources propertySources = environment.getPropertySources();
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME), is(true));
    // ServletContext params are available
    assertThat(environment.getProperty("pCommon"), is("pCommonContextValue"));
    assertThat(environment.getProperty("pContext1"), is("pContext1Value"));
    // Servlet* PropertySources have precedence over System* PropertySources
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME)), lessThan(propertySources.precedenceOf(PropertySource.named(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME))));
    // Replace system properties with a mock property source for convenience
    MockPropertySource mockSystemProperties = new MockPropertySource(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME);
    mockSystemProperties.setProperty("pCommon", "pCommonSysPropsValue");
    mockSystemProperties.setProperty("pSysProps1", "pSysProps1Value");
    propertySources.replace(StandardEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME, mockSystemProperties);
    // assert that servletcontext init params resolve with higher precedence than sysprops
    assertThat(environment.getProperty("pCommon"), is("pCommonContextValue"));
    assertThat(environment.getProperty("pSysProps1"), is("pSysProps1Value"));
}
Also used : MockPropertySource(org.springframework.mock.env.MockPropertySource) GenericWebApplicationContext(org.springframework.web.context.support.GenericWebApplicationContext) StandardServletEnvironment(org.springframework.web.context.support.StandardServletEnvironment) MockServletContext(org.springframework.mock.web.MockServletContext) Test(org.junit.Test)

Example 13 with MockPropertySource

use of org.springframework.mock.env.MockPropertySource in project spring-boot by spring-projects.

the class ApplicationPidFileWriterTests method createEnvironment.

private ConfigurableEnvironment createEnvironment(String propName, String propValue) {
    MockPropertySource propertySource = mockPropertySource(propName, propValue);
    ConfigurableEnvironment environment = new StandardEnvironment();
    environment.getPropertySources().addLast(propertySource);
    return environment;
}
Also used : ConfigurableEnvironment(org.springframework.core.env.ConfigurableEnvironment) MockPropertySource(org.springframework.mock.env.MockPropertySource) StandardEnvironment(org.springframework.core.env.StandardEnvironment)

Example 14 with MockPropertySource

use of org.springframework.mock.env.MockPropertySource in project spring-boot by spring-projects.

the class ApplicationPidFileWriterTests method mockPropertySource.

private MockPropertySource mockPropertySource(String name, String value) {
    MockPropertySource propertySource = new MockPropertySource();
    propertySource.setProperty(name, value);
    return propertySource;
}
Also used : MockPropertySource(org.springframework.mock.env.MockPropertySource)

Example 15 with MockPropertySource

use of org.springframework.mock.env.MockPropertySource in project spring-boot by spring-projects.

the class PropertiesConfigurationFactoryTests method systemEnvironmentBindingWithDefaults.

@Test
public void systemEnvironmentBindingWithDefaults() throws Exception {
    setupFactory();
    MutablePropertySources propertySources = new MutablePropertySources();
    MockPropertySource propertySource = new MockPropertySource(StandardEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME);
    propertySource.setProperty("name", "${foo.name:bar}");
    propertySources.addFirst(propertySource);
    this.factory.setPropertySources(propertySources);
    this.factory.afterPropertiesSet();
    Foo foo = this.factory.getObject();
    assertThat(foo.name).isEqualTo("bar");
}
Also used : MutablePropertySources(org.springframework.core.env.MutablePropertySources) MockPropertySource(org.springframework.mock.env.MockPropertySource) Test(org.junit.Test)

Aggregations

MockPropertySource (org.springframework.mock.env.MockPropertySource)19 Test (org.junit.Test)16 MutablePropertySources (org.springframework.core.env.MutablePropertySources)8 DefaultListableBeanFactory (org.springframework.beans.factory.support.DefaultListableBeanFactory)4 TestBean (org.springframework.tests.sample.beans.TestBean)4 MockServletContext (org.springframework.mock.web.MockServletContext)3 ConfigurableEnvironment (org.springframework.core.env.ConfigurableEnvironment)2 MockServletConfig (org.springframework.mock.web.MockServletConfig)2 GenericWebApplicationContext (org.springframework.web.context.support.GenericWebApplicationContext)2 StandardServletEnvironment (org.springframework.web.context.support.StandardServletEnvironment)2 BitsquareEnvironment (io.bitsquare.app.BitsquareEnvironment)1 Properties (java.util.Properties)1 Connector (org.eclipse.jetty.server.Connector)1 Server (org.eclipse.jetty.server.Server)1 SelectChannelConnector (org.eclipse.jetty.server.nio.SelectChannelConnector)1 ServletContextHandler (org.eclipse.jetty.servlet.ServletContextHandler)1 ServletHolder (org.eclipse.jetty.servlet.ServletHolder)1 QueuedThreadPool (org.eclipse.jetty.util.thread.QueuedThreadPool)1 ConfigurableApplicationContext (org.springframework.context.ConfigurableApplicationContext)1 GenericApplicationContext (org.springframework.context.support.GenericApplicationContext)1