diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParserTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParserTests.java index 61e6f441a0b..3df9be225d3 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParserTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParserTests.java @@ -25,6 +25,7 @@ import org.springframework.beans.DirectFieldAccessor; import org.springframework.beans.factory.xml.XmlBeanDefinitionReader; import org.springframework.core.MethodParameter; import org.springframework.core.io.ClassPathResource; +import org.springframework.core.io.Resource; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.ResourceHttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; @@ -62,17 +63,18 @@ public class AnnotationDrivenBeanDefinitionParserTests { @Before public void setup() { - appContext = new GenericWebApplicationContext(); + this.appContext = new GenericWebApplicationContext(); } @Test public void testMessageCodesResolver() { loadBeanDefinitions("mvc-config-message-codes-resolver.xml"); - RequestMappingHandlerAdapter adapter = appContext.getBean(RequestMappingHandlerAdapter.class); + RequestMappingHandlerAdapter adapter = this.appContext.getBean(RequestMappingHandlerAdapter.class); assertNotNull(adapter); Object initializer = adapter.getWebBindingInitializer(); assertNotNull(initializer); - MessageCodesResolver resolver = ((ConfigurableWebBindingInitializer) initializer).getMessageCodesResolver(); + MessageCodesResolver resolver = + ((ConfigurableWebBindingInitializer) initializer).getMessageCodesResolver(); assertNotNull(resolver); assertEquals(TestMessageCodesResolver.class, resolver.getClass()); assertEquals(false, new DirectFieldAccessor(adapter).getPropertyValue("ignoreDefaultModelOnRedirect")); @@ -81,7 +83,7 @@ public class AnnotationDrivenBeanDefinitionParserTests { @Test public void testPathMatchingConfiguration() { loadBeanDefinitions("mvc-config-path-matching.xml"); - RequestMappingHandlerMapping hm = appContext.getBean(RequestMappingHandlerMapping.class); + RequestMappingHandlerMapping hm = this.appContext.getBean(RequestMappingHandlerMapping.class); assertNotNull(hm); assertTrue(hm.useSuffixPatternMatch()); assertFalse(hm.useTrailingSlashMatch()); @@ -96,17 +98,17 @@ public class AnnotationDrivenBeanDefinitionParserTests { @Test public void testMessageConverters() { loadBeanDefinitions("mvc-config-message-converters.xml"); - verifyMessageConverters(appContext.getBean(RequestMappingHandlerAdapter.class), true); - verifyMessageConverters(appContext.getBean(ExceptionHandlerExceptionResolver.class), true); - verifyRequestResponseBodyAdvice(appContext.getBean(RequestMappingHandlerAdapter.class)); - verifyResponseBodyAdvice(appContext.getBean(ExceptionHandlerExceptionResolver.class)); + verifyMessageConverters(this.appContext.getBean(RequestMappingHandlerAdapter.class), true); + verifyMessageConverters(this.appContext.getBean(ExceptionHandlerExceptionResolver.class), true); + verifyRequestResponseBodyAdvice(this.appContext.getBean(RequestMappingHandlerAdapter.class)); + verifyResponseBodyAdvice(this.appContext.getBean(ExceptionHandlerExceptionResolver.class)); } @Test public void testMessageConvertersWithoutDefaultRegistrations() { loadBeanDefinitions("mvc-config-message-converters-defaults-off.xml"); - verifyMessageConverters(appContext.getBean(RequestMappingHandlerAdapter.class), false); - verifyMessageConverters(appContext.getBean(ExceptionHandlerExceptionResolver.class), false); + verifyMessageConverters(this.appContext.getBean(RequestMappingHandlerAdapter.class), false); + verifyMessageConverters(this.appContext.getBean(ExceptionHandlerExceptionResolver.class), false); } @Test @@ -153,16 +155,16 @@ public class AnnotationDrivenBeanDefinitionParserTests { @Test public void beanNameUrlHandlerMapping() { loadBeanDefinitions("mvc-config.xml"); - BeanNameUrlHandlerMapping mapping = appContext.getBean(BeanNameUrlHandlerMapping.class); + BeanNameUrlHandlerMapping mapping = this.appContext.getBean(BeanNameUrlHandlerMapping.class); assertNotNull(mapping); assertEquals(2, mapping.getOrder()); } private void loadBeanDefinitions(String fileName) { - XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(appContext); - ClassPathResource resource = new ClassPathResource(fileName, AnnotationDrivenBeanDefinitionParserTests.class); + XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(this.appContext); + Resource resource = new ClassPathResource(fileName, AnnotationDrivenBeanDefinitionParserTests.class); reader.loadBeanDefinitions(resource); - appContext.refresh(); + this.appContext.refresh(); } @SuppressWarnings("unchecked") @@ -173,9 +175,9 @@ public class AnnotationDrivenBeanDefinitionParserTests { assertTrue(value instanceof List); List> converters = (List>) value; if (hasDefaultRegistrations) { - assertTrue("Default converters are registered in addition to custom ones", converters.size() > 2); + assertTrue("Default and custom converter expected", converters.size() > 2); } else { - assertTrue("Default converters should not be registered", converters.size() == 2); + assertTrue("Only custom converters expected", converters.size() == 2); } assertTrue(converters.get(0) instanceof StringHttpMessageConverter); assertTrue(converters.get(1) instanceof ResourceHttpMessageConverter); diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportTests.java index 5125cc42b19..60de6e8308d 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportTests.java @@ -20,8 +20,6 @@ import java.util.List; import java.util.Locale; import javax.servlet.http.HttpServletRequest; -import com.fasterxml.jackson.databind.DeserializationFeature; -import com.fasterxml.jackson.databind.MapperFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.xml.XmlMapper; import org.joda.time.DateTime; @@ -87,6 +85,8 @@ import org.springframework.web.servlet.view.InternalResourceViewResolver; import org.springframework.web.servlet.view.ViewResolverComposite; import org.springframework.web.util.UrlPathHelper; +import static com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES; +import static com.fasterxml.jackson.databind.MapperFeature.DEFAULT_VIEW_INCLUSION; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -142,6 +142,7 @@ public class WebMvcConfigurationSupportTests { HttpServletRequest request = new MockHttpServletRequest("GET", "/testController"); HandlerExecutionChain chain = handlerMapping.getHandler(request); + assertNotNull(chain); assertNotNull(chain.getInterceptors()); assertEquals(3, chain.getInterceptors().length); assertEquals(ConversionServiceExposingInterceptor.class, chain.getInterceptors()[1].getClass()); @@ -175,19 +176,20 @@ public class WebMvcConfigurationSupportTests { RequestMappingHandlerAdapter adapter = context.getBean(RequestMappingHandlerAdapter.class); List> converters = adapter.getMessageConverters(); assertEquals(9, converters.size()); - for(HttpMessageConverter converter : converters) { - if (converter instanceof AbstractJackson2HttpMessageConverter) { - ObjectMapper objectMapper = ((AbstractJackson2HttpMessageConverter)converter).getObjectMapper(); - assertFalse(objectMapper.getDeserializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)); - assertFalse(objectMapper.getSerializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)); - assertFalse(objectMapper.getDeserializationConfig().isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)); - if (converter instanceof MappingJackson2XmlHttpMessageConverter) { - assertEquals(XmlMapper.class, objectMapper.getClass()); - } - } - } + converters.stream() + .filter(converter -> converter instanceof AbstractJackson2HttpMessageConverter) + .forEach(converter -> { + ObjectMapper mapper = ((AbstractJackson2HttpMessageConverter) converter).getObjectMapper(); + assertFalse(mapper.getDeserializationConfig().isEnabled(DEFAULT_VIEW_INCLUSION)); + assertFalse(mapper.getSerializationConfig().isEnabled(DEFAULT_VIEW_INCLUSION)); + assertFalse(mapper.getDeserializationConfig().isEnabled(FAIL_ON_UNKNOWN_PROPERTIES)); + if (converter instanceof MappingJackson2XmlHttpMessageConverter) { + assertEquals(XmlMapper.class, mapper.getClass()); + } + }); - ConfigurableWebBindingInitializer initializer = (ConfigurableWebBindingInitializer) adapter.getWebBindingInitializer(); + ConfigurableWebBindingInitializer initializer = + (ConfigurableWebBindingInitializer) adapter.getWebBindingInitializer(); assertNotNull(initializer); ConversionService conversionService = initializer.getConversionService(); @@ -331,8 +333,8 @@ public class WebMvcConfigurationSupportTests { @EnableWebMvc - @Configuration - public static class WebConfig { + @Configuration @SuppressWarnings("unused") + static class WebConfig { @Bean(name="/testController") public TestController testController() { @@ -348,8 +350,8 @@ public class WebMvcConfigurationSupportTests { } - @Configuration - public static class ViewResolverConfig { + @Configuration @SuppressWarnings("unused") + static class ViewResolverConfig { @Bean public ViewResolver beanNameViewResolver() { @@ -360,7 +362,7 @@ public class WebMvcConfigurationSupportTests { @EnableWebMvc @Configuration - public static class CustomViewResolverOrderConfig extends WebMvcConfigurerAdapter { + static class CustomViewResolverOrderConfig extends WebMvcConfigurerAdapter { @Override public void configureViewResolvers(ViewResolverRegistry registry) { @@ -374,19 +376,19 @@ public class WebMvcConfigurationSupportTests { static class CustomArgumentResolverConfig extends WebMvcConfigurerAdapter { @Override - public void addArgumentResolvers(List argumentResolvers) { - argumentResolvers.add(new TestArgumentResolver()); + public void addArgumentResolvers(List resolvers) { + resolvers.add(new TestArgumentResolver()); } @Override - public void addReturnValueHandlers(List returnValueHandlers) { - returnValueHandlers.add(new TestReturnValueHandler()); + public void addReturnValueHandlers(List handlers) { + handlers.add(new TestReturnValueHandler()); } } - @Controller - public static class TestController { + @Controller @SuppressWarnings("unused") + private static class TestController { @RequestMapping("/") public void handle() { @@ -402,7 +404,7 @@ public class WebMvcConfigurationSupportTests { @Controller @Scope("prototype") - public static class ScopedController { + private static class ScopedController { @RequestMapping("/scoped") public void handle() { @@ -412,7 +414,7 @@ public class WebMvcConfigurationSupportTests { @Controller @Scope(value="prototype", proxyMode=ScopedProxyMode.TARGET_CLASS) - public static class ScopedProxyController { + static class ScopedProxyController { @RequestMapping("/scopedProxy") public void handle() { @@ -422,7 +424,7 @@ public class WebMvcConfigurationSupportTests { @ResponseStatus(code = HttpStatus.BAD_REQUEST, reason = "exception.user.exists") @SuppressWarnings("serial") - public static class UserAlreadyExistsException extends RuntimeException { + private static class UserAlreadyExistsException extends RuntimeException { } private static class TestArgumentResolver implements HandlerMethodArgumentResolver {