B - a self reference to the builder typepublic abstract class AbstractMockMvcBuilder<B extends AbstractMockMvcBuilder<B>> extends MockMvcBuilderSupport implements ConfigurableMockMvcBuilder<B>
MockMvcBuilder with common methods for
 configuring filters, default request properties, global expectations and
 global result actions.
 Subclasses can use different strategies to prepare the Spring
 WebApplicationContext that will be passed to the
 DispatcherServlet.
| Constructor and Description | 
|---|
| AbstractMockMvcBuilder() | 
| Modifier and Type | Method and Description | 
|---|---|
| <T extends B> | addDispatcherServletCustomizer(DispatcherServletCustomizer customizer)A more advanced variant of  ConfigurableMockMvcBuilder.dispatchOptions(boolean)that allows
 customizing anyDispatcherServletproperty. | 
| <T extends B> | addFilter(Filter filter,
         String... urlPatterns)Add a filter mapped to a specific set of patterns. | 
| <T extends B> | addFilters(Filter... filters)Add filters mapped to any request (i.e. | 
| <T extends B> | alwaysDo(ResultHandler resultHandler)Define a global action that should always be applied to every
 response. | 
| <T extends B> | alwaysExpect(ResultMatcher resultMatcher)Define a global expectation that should always be applied to
 every response. | 
| <T extends B> | apply(MockMvcConfigurer configurer)Add a  MockMvcConfigurerthat automates MockMvc setup and
 configures it for some specific purpose (e.g. | 
| MockMvc | build()Build a  MockMvcinstance. | 
| <T extends B> | defaultRequest(RequestBuilder requestBuilder)Define default request properties that should be merged into all
 performed requests. | 
| <T extends B> | defaultResponseCharacterEncoding(Charset defaultResponseCharacterEncoding)Define the default character encoding to be applied to every response. | 
| <T extends B> | dispatchOptions(boolean dispatchOptions)Whether to enable the DispatcherServlet property
  dispatchOptionsRequestwhich allows processing of HTTP OPTIONS requests. | 
| protected abstract WebApplicationContext | initWebAppContext()A method to obtain the  WebApplicationContextto be passed to theDispatcherServlet. | 
| protected <T extends B> | self() | 
createMockMvc, createMockMvcpublic final <T extends B> T addFilters(Filter... filters)
ConfigurableMockMvcBuildermockMvcBuilder.addFilters(springSecurityFilterChain);
It is the equivalent of the following web.xml configuration:
 <filter-mapping>
     <filter-name>springSecurityFilterChain</filter-name>
     <url-pattern>/*</url-pattern>
 </filter-mapping>
 
 Filters will be invoked in the order in which they are provided.
addFilters in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>filters - the filters to addpublic final <T extends B> T addFilter(Filter filter, String... urlPatterns)
ConfigurableMockMvcBuildermockMvcBuilder.addFilter(myResourceFilter, "/resources/*");
It is the equivalent of:
 <filter-mapping>
     <filter-name>myResourceFilter</filter-name>
     <url-pattern>/resources/*</url-pattern>
 </filter-mapping>
 
 Filters will be invoked in the order in which they are provided.
addFilter in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>filter - the filter to addurlPatterns - the URL patterns to map to; if empty, "/*" is used by defaultpublic final <T extends B> T defaultRequest(RequestBuilder requestBuilder)
ConfigurableMockMvcBuilderProperties specified at the time of performing a request override the default properties defined here.
defaultRequest in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>requestBuilder - a RequestBuilder; see static factory methods in
 MockMvcRequestBuilderspublic final <T extends B> T defaultResponseCharacterEncoding(Charset defaultResponseCharacterEncoding)
defaultResponseCharacterEncoding in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>defaultResponseCharacterEncoding - the default response character encodingpublic final <T extends B> T alwaysExpect(ResultMatcher resultMatcher)
ConfigurableMockMvcBuilder"application/json", etc.alwaysExpect in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>resultMatcher - a ResultMatcher; see static factory methods in
 MockMvcResultMatcherspublic final <T extends B> T alwaysDo(ResultHandler resultHandler)
ConfigurableMockMvcBuilderSystem.out.alwaysDo in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>resultHandler - a ResultHandler; see static factory methods in
 MockMvcResultHandlerspublic final <T extends B> T addDispatcherServletCustomizer(DispatcherServletCustomizer customizer)
ConfigurableMockMvcBuilderConfigurableMockMvcBuilder.dispatchOptions(boolean) that allows
 customizing any DispatcherServlet
 property.addDispatcherServletCustomizer in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>public final <T extends B> T dispatchOptions(boolean dispatchOptions)
ConfigurableMockMvcBuilderdispatchOptionsRequest which allows processing of HTTP OPTIONS requests.dispatchOptions in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>public final <T extends B> T apply(MockMvcConfigurer configurer)
ConfigurableMockMvcBuilderMockMvcConfigurer that automates MockMvc setup and
 configures it for some specific purpose (e.g. security).
 There is a built-in SharedHttpSessionConfigurer that can be
 used to re-use the HTTP session across requests. 3rd party frameworks
 like Spring Security also use this mechanism to provide configuration
 shortcuts.
apply in interface ConfigurableMockMvcBuilder<B extends AbstractMockMvcBuilder<B>>SharedHttpSessionConfigurerprotected <T extends B> T self()
public final MockMvc build()
MockMvc instance.build in interface MockMvcBuilderprotected abstract WebApplicationContext initWebAppContext()