Search in sources :

Example 41 with MockServletConfig

use of org.springframework.mock.web.MockServletConfig in project spring-framework by spring-projects.

the class EnvironmentSystemIntegrationTests method registerServletParamPropertySources_AbstractRefreshableWebApplicationContext.

@Test
void registerServletParamPropertySources_AbstractRefreshableWebApplicationContext() {
    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");
    AbstractRefreshableWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
    ctx.setConfigLocation(EnvironmentAwareBean.class.getName());
    ctx.setServletConfig(servletConfig);
    ctx.refresh();
    ConfigurableEnvironment environment = ctx.getEnvironment();
    assertThat(environment).isInstanceOf(StandardServletEnvironment.class);
    MutablePropertySources propertySources = environment.getPropertySources();
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME)).isTrue();
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME)).isTrue();
    // ServletConfig gets precedence
    assertThat(environment.getProperty("pCommon")).isEqualTo("pCommonConfigValue");
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME))).isLessThan(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME)));
    // but all params are available
    assertThat(environment.getProperty("pContext1")).isEqualTo("pContext1Value");
    assertThat(environment.getProperty("pConfig1")).isEqualTo("pConfig1Value");
    // Servlet* PropertySources have precedence over System* PropertySources
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME))).isLessThan(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")).isEqualTo("pCommonConfigValue");
    assertThat(environment.getProperty("pSysProps1")).isEqualTo("pSysProps1Value");
}
Also used : MockServletConfig(org.springframework.mock.web.MockServletConfig) AbstractRefreshableWebApplicationContext(org.springframework.web.context.support.AbstractRefreshableWebApplicationContext) MockPropertySource(org.springframework.mock.env.MockPropertySource) AnnotationConfigWebApplicationContext(org.springframework.web.context.support.AnnotationConfigWebApplicationContext) MockServletContext(org.springframework.mock.web.MockServletContext) Test(org.junit.jupiter.api.Test)

Example 42 with MockServletConfig

use of org.springframework.mock.web.MockServletConfig in project spring-framework by spring-projects.

the class EnvironmentSystemIntegrationTests method registerServletParamPropertySources_StaticWebApplicationContext.

@Test
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)).isTrue();
    assertThat(propertySources.contains(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME)).isTrue();
    // ServletConfig gets precedence
    assertThat(environment.getProperty("pCommon")).isEqualTo("pCommonConfigValue");
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME))).isLessThan(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME)));
    // but all params are available
    assertThat(environment.getProperty("pContext1")).isEqualTo("pContext1Value");
    assertThat(environment.getProperty("pConfig1")).isEqualTo("pConfig1Value");
    // Servlet* PropertySources have precedence over System* PropertySources
    assertThat(propertySources.precedenceOf(PropertySource.named(StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME))).isLessThan(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")).isEqualTo("pCommonConfigValue");
    assertThat(environment.getProperty("pSysProps1")).isEqualTo("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.jupiter.api.Test)

Example 43 with MockServletConfig

use of org.springframework.mock.web.MockServletConfig in project spring-framework by spring-projects.

the class AbstractMockMvcBuilder method build.

/**
 * Build a {@link org.springframework.test.web.servlet.MockMvc} instance.
 */
@Override
@SuppressWarnings("rawtypes")
public final MockMvc build() {
    WebApplicationContext wac = initWebAppContext();
    ServletContext servletContext = wac.getServletContext();
    MockServletConfig mockServletConfig = new MockServletConfig(servletContext);
    for (MockMvcConfigurer configurer : this.configurers) {
        RequestPostProcessor processor = configurer.beforeMockMvcCreated(this, wac);
        if (processor != null) {
            if (this.defaultRequestBuilder == null) {
                this.defaultRequestBuilder = MockMvcRequestBuilders.get("/");
            }
            if (this.defaultRequestBuilder instanceof ConfigurableSmartRequestBuilder) {
                ((ConfigurableSmartRequestBuilder) this.defaultRequestBuilder).with(processor);
            }
        }
    }
    Filter[] filterArray = this.filters.toArray(new Filter[0]);
    return super.createMockMvc(filterArray, mockServletConfig, wac, this.defaultRequestBuilder, this.defaultResponseCharacterEncoding, this.globalResultMatchers, this.globalResultHandlers, this.dispatcherServletCustomizers);
}
Also used : RequestPostProcessor(org.springframework.test.web.servlet.request.RequestPostProcessor) Filter(jakarta.servlet.Filter) ConfigurableSmartRequestBuilder(org.springframework.test.web.servlet.request.ConfigurableSmartRequestBuilder) ServletContext(jakarta.servlet.ServletContext) MockServletConfig(org.springframework.mock.web.MockServletConfig) WebApplicationContext(org.springframework.web.context.WebApplicationContext)

Example 44 with MockServletConfig

use of org.springframework.mock.web.MockServletConfig in project druid by alibaba.

the class StatViewServletTest_resetEnable method test_resetEnable_true.

public void test_resetEnable_true() throws Exception {
    Assert.assertTrue(DruidStatService.getInstance().isResetEnable());
    MockServletConfig servletConfig = new MockServletConfig();
    servletConfig.addInitParameter(StatViewServlet.PARAM_NAME_RESET_ENABLE, "true");
    StatViewServlet servlet = new StatViewServlet();
    servlet.init(servletConfig);
    Assert.assertTrue(DruidStatService.getInstance().isResetEnable());
}
Also used : MockServletConfig(org.springframework.mock.web.MockServletConfig) StatViewServlet(com.alibaba.druid.support.http.StatViewServlet)

Example 45 with MockServletConfig

use of org.springframework.mock.web.MockServletConfig in project endpoints-java by cloudendpoints.

the class EndpointsServletTest method setUp.

@Before
public void setUp() throws ServletException {
    req = new MockHttpServletRequest();
    req.setServletPath("/_ah/api");
    req.addHeader("Host", API_SERVER_NAME);
    req.setServerName(API_SERVER_NAME);
    req.setServerPort(API_PORT);
    resp = new MockHttpServletResponse();
    servlet = new EndpointsServlet();
    MockServletConfig config = new MockServletConfig();
    config.addInitParameter("services", TestApi.class.getName());
    servlet.init(config);
}
Also used : MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) MockServletConfig(org.springframework.mock.web.MockServletConfig) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Before(org.junit.Before)

Aggregations

MockServletConfig (org.springframework.mock.web.MockServletConfig)45 MockHttpServletRequest (org.springframework.mock.web.MockHttpServletRequest)18 MockServletContext (org.springframework.mock.web.MockServletContext)12 StatViewServlet (com.alibaba.druid.support.http.StatViewServlet)10 ServletContext (javax.servlet.ServletContext)8 Before (org.junit.Before)8 MockHttpServletResponse (org.springframework.mock.web.MockHttpServletResponse)8 Decorator (com.opensymphony.module.sitemesh.Decorator)7 Page (com.opensymphony.module.sitemesh.Page)7 HTMLPageParser (com.opensymphony.module.sitemesh.parser.HTMLPageParser)7 Config (grails.config.Config)7 PropertySourcesConfig (org.grails.config.PropertySourcesConfig)7 MockApplicationContext (org.grails.support.MockApplicationContext)7 GrailsWebRequest (org.grails.web.servlet.mvc.GrailsWebRequest)7 GroovyClassLoader (groovy.lang.GroovyClassLoader)5 GroovyObject (groovy.lang.GroovyObject)5 Test (org.junit.Test)4 PluginTestVerifier (com.navercorp.pinpoint.bootstrap.plugin.test.PluginTestVerifier)3 Method (java.lang.reflect.Method)3 WebApplicationContext (org.springframework.web.context.WebApplicationContext)3