1717package org .springframework .web .servlet .config .annotation ;
1818
1919import java .util .Arrays ;
20+ import java .util .Collections ;
2021import java .util .List ;
2122import java .util .Map ;
2223
23- import com .fasterxml .jackson .databind .DeserializationFeature ;
24- import com .fasterxml .jackson .databind .MapperFeature ;
2524import com .fasterxml .jackson .databind .ObjectMapper ;
2625import org .junit .Before ;
2726import org .junit .Test ;
8079import org .springframework .web .servlet .view .json .MappingJackson2JsonView ;
8180import org .springframework .web .util .UrlPathHelper ;
8281
83- import static org .junit .Assert .*;
82+ import static com .fasterxml .jackson .databind .DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES ;
83+ import static com .fasterxml .jackson .databind .MapperFeature .DEFAULT_VIEW_INCLUSION ;
84+ import static org .junit .Assert .assertEquals ;
85+ import static org .junit .Assert .assertFalse ;
86+ import static org .junit .Assert .assertNotNull ;
87+ import static org .springframework .http .MediaType .APPLICATION_ATOM_XML ;
88+ import static org .springframework .http .MediaType .APPLICATION_JSON ;
89+ import static org .springframework .http .MediaType .APPLICATION_XML ;
8490
8591/**
8692 * A test fixture with a sub-class of {@link WebMvcConfigurationSupport} that also
@@ -120,6 +126,7 @@ public void handlerMappings() throws Exception {
120126 assertEquals (TestPathHelper .class , rmHandlerMapping .getUrlPathHelper ().getClass ());
121127 assertEquals (TestPathMatcher .class , rmHandlerMapping .getPathMatcher ().getClass ());
122128 HandlerExecutionChain chain = rmHandlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/" ));
129+ assertNotNull (chain );
123130 assertNotNull (chain .getInterceptors ());
124131 assertEquals (3 , chain .getInterceptors ().length );
125132 assertEquals (LocaleChangeInterceptor .class , chain .getInterceptors ()[0 ].getClass ());
@@ -133,10 +140,13 @@ public void handlerMappings() throws Exception {
133140 assertEquals (TestPathHelper .class , handlerMapping .getUrlPathHelper ().getClass ());
134141 assertEquals (TestPathMatcher .class , handlerMapping .getPathMatcher ().getClass ());
135142 chain = handlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/path" ));
143+ assertNotNull (chain );
136144 assertNotNull (chain .getHandler ());
137145 chain = handlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/bad" ));
146+ assertNotNull (chain );
138147 assertNotNull (chain .getHandler ());
139148 chain = handlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/old" ));
149+ assertNotNull (chain );
140150 assertNotNull (chain .getHandler ());
141151
142152 handlerMapping = (AbstractHandlerMapping ) this .config .resourceHandlerMapping ();
@@ -146,6 +156,7 @@ public void handlerMappings() throws Exception {
146156 assertEquals (TestPathHelper .class , handlerMapping .getUrlPathHelper ().getClass ());
147157 assertEquals (TestPathMatcher .class , handlerMapping .getPathMatcher ().getClass ());
148158 chain = handlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/resources/foo.gif" ));
159+ assertNotNull (chain );
149160 assertNotNull (chain .getHandler ());
150161 assertEquals (Arrays .toString (chain .getInterceptors ()), 2 , chain .getInterceptors ().length );
151162 // PathExposingHandlerInterceptor at chain.getInterceptors()[0]
@@ -156,6 +167,7 @@ public void handlerMappings() throws Exception {
156167 assertNotNull (handlerMapping );
157168 assertEquals (Integer .MAX_VALUE , handlerMapping .getOrder ());
158169 chain = handlerMapping .getHandler (new MockHttpServletRequest ("GET" , "/anyPath" ));
170+ assertNotNull (chain );
159171 assertNotNull (chain .getHandler ());
160172 }
161173
@@ -169,13 +181,14 @@ public void requestMappingHandlerAdapter() throws Exception {
169181 assertEquals ("converted" , actual );
170182
171183 // Message converters
172- assertEquals (2 , adapter .getMessageConverters ().size ());
173- assertEquals (StringHttpMessageConverter .class , adapter .getMessageConverters ().get (0 ).getClass ());
174- assertEquals (MappingJackson2HttpMessageConverter .class , adapter .getMessageConverters ().get (1 ).getClass ());
175- ObjectMapper objectMapper = ((MappingJackson2HttpMessageConverter )adapter .getMessageConverters ().get (1 )).getObjectMapper ();
176- assertFalse (objectMapper .getDeserializationConfig ().isEnabled (MapperFeature .DEFAULT_VIEW_INCLUSION ));
177- assertFalse (objectMapper .getSerializationConfig ().isEnabled (MapperFeature .DEFAULT_VIEW_INCLUSION ));
178- assertFalse (objectMapper .getDeserializationConfig ().isEnabled (DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES ));
184+ List <HttpMessageConverter <?>> converters = adapter .getMessageConverters ();
185+ assertEquals (2 , converters .size ());
186+ assertEquals (StringHttpMessageConverter .class , converters .get (0 ).getClass ());
187+ assertEquals (MappingJackson2HttpMessageConverter .class , converters .get (1 ).getClass ());
188+ ObjectMapper objectMapper = ((MappingJackson2HttpMessageConverter ) converters .get (1 )).getObjectMapper ();
189+ assertFalse (objectMapper .getDeserializationConfig ().isEnabled (DEFAULT_VIEW_INCLUSION ));
190+ assertFalse (objectMapper .getSerializationConfig ().isEnabled (DEFAULT_VIEW_INCLUSION ));
191+ assertFalse (objectMapper .getDeserializationConfig ().isEnabled (FAIL_ON_UNKNOWN_PROPERTIES ));
179192
180193 DirectFieldAccessor fieldAccessor = new DirectFieldAccessor (adapter );
181194
@@ -223,21 +236,23 @@ public void contentNegotiation() throws Exception {
223236 MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/foo.json" );
224237 NativeWebRequest webRequest = new ServletWebRequest (request );
225238
226- ContentNegotiationManager manager = this .config .requestMappingHandlerMapping ().getContentNegotiationManager ();
227- assertEquals (Arrays .asList (MediaType .APPLICATION_JSON ), manager .resolveMediaTypes (webRequest ));
239+ RequestMappingHandlerMapping mapping = this .config .requestMappingHandlerMapping ();
240+ ContentNegotiationManager manager = mapping .getContentNegotiationManager ();
241+ assertEquals (Collections .singletonList (APPLICATION_JSON ), manager .resolveMediaTypes (webRequest ));
228242
229243 request .setRequestURI ("/foo.xml" );
230- assertEquals (Arrays . asList ( MediaType . APPLICATION_XML ), manager .resolveMediaTypes (webRequest ));
244+ assertEquals (Collections . singletonList ( APPLICATION_XML ), manager .resolveMediaTypes (webRequest ));
231245
232246 request .setRequestURI ("/foo.rss" );
233- assertEquals (Arrays .asList (MediaType .valueOf ("application/rss+xml" )), manager .resolveMediaTypes (webRequest ));
247+ assertEquals (Collections .singletonList (MediaType .valueOf ("application/rss+xml" )),
248+ manager .resolveMediaTypes (webRequest ));
234249
235250 request .setRequestURI ("/foo.atom" );
236- assertEquals (Arrays . asList ( MediaType . APPLICATION_ATOM_XML ), manager .resolveMediaTypes (webRequest ));
251+ assertEquals (Collections . singletonList ( APPLICATION_ATOM_XML ), manager .resolveMediaTypes (webRequest ));
237252
238253 request .setRequestURI ("/foo" );
239254 request .setParameter ("f" , "json" );
240- assertEquals (Arrays . asList ( MediaType . APPLICATION_JSON ), manager .resolveMediaTypes (webRequest ));
255+ assertEquals (Collections . singletonList ( APPLICATION_JSON ), manager .resolveMediaTypes (webRequest ));
241256 }
242257
243258 @ Test
0 commit comments