Class MockMvcWebConnectionBuilderSupport<T extends MockMvcWebConnectionBuilderSupport<T>>
- java.lang.Object
- org.springframework.test.web.servlet.htmlunit.MockMvcWebConnectionBuilderSupport<T>
- Direct Known Subclasses:
MockMvcHtmlUnitDriverBuilder
,MockMvcWebClientBuilder
public abstract class MockMvcWebConnectionBuilderSupport<T extends MockMvcWebConnectionBuilderSupport<T>> extends Object
Support class that simplifies the creation of aWebConnection
that usesMockMvc
and optionally delegates to a realWebConnection
for specific requests.The default is to use
MockMvc
for requests tolocalhost
and otherwise use a realWebConnection
.- Since:
- 4.2
- Author:
- Rob Winch, Sam Brannen
Constructor Summary
Constructors Modifier Constructor Description protected
MockMvcWebConnectionBuilderSupport(MockMvc mockMvc)
Create a new instance using the suppliedMockMvc
instance.protected
MockMvcWebConnectionBuilderSupport(WebApplicationContext context)
Create a new instance using the suppliedWebApplicationContext
.protected
MockMvcWebConnectionBuilderSupport(WebApplicationContext context, MockMvcConfigurer configurer)
Create a new instance using the suppliedWebApplicationContext
andMockMvcConfigurer
.
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description T
alwaysUseMockMvc()
Specify thatMockMvc
should always be used regardless of what the request looks like.T
contextPath(String contextPath)
Set the context path to use.protected com.gargoylesoftware.htmlunit.WebConnection
createConnection(com.gargoylesoftware.htmlunit.WebClient webClient)
Create a newWebConnection
that will use aMockMvc
instance if one of the specifiedWebRequestMatcher
instances matches.protected com.gargoylesoftware.htmlunit.WebConnection
createConnection(com.gargoylesoftware.htmlunit.WebConnection defaultConnection)
Deprecated.UsecreateConnection(WebClient)
insteadT
useMockMvc(WebRequestMatcher... matchers)
Add additionalWebRequestMatcher
instances that will ensure thatMockMvc
is used to process the request, if such a matcher matches against the web request.T
useMockMvcForHosts(String... hosts)
Add additionalWebRequestMatcher
instances that returntrue
if a supplied host matches — for example,"example.com"
or"example.com:8080"
.
Constructor Detail
MockMvcWebConnectionBuilderSupport
protected MockMvcWebConnectionBuilderSupport(MockMvc mockMvc)
Create a new instance using the suppliedMockMvc
instance.- Parameters:
mockMvc
- theMockMvc
instance to use; nevernull
MockMvcWebConnectionBuilderSupport
protected MockMvcWebConnectionBuilderSupport(WebApplicationContext context)
Create a new instance using the suppliedWebApplicationContext
.- Parameters:
context
- theWebApplicationContext
to create aMockMvc
instance from; nevernull
MockMvcWebConnectionBuilderSupport
protected MockMvcWebConnectionBuilderSupport(WebApplicationContext context, MockMvcConfigurer configurer)
Create a new instance using the suppliedWebApplicationContext
andMockMvcConfigurer
.- Parameters:
context
- theWebApplicationContext
to create aMockMvc
instance from; nevernull
configurer
- the MockMvcConfigurer to apply; nevernull
Method Detail
contextPath
public T contextPath(String contextPath)
Set the context path to use.If the supplied value is
null
or empty, the first path segment of the request URL is assumed to be the context path.Default is
""
.- Parameters:
contextPath
- the context path to use- Returns:
- this builder for further customization
alwaysUseMockMvc
public T alwaysUseMockMvc()
Specify thatMockMvc
should always be used regardless of what the request looks like.- Returns:
- this builder for further customization
useMockMvc
public T useMockMvc(WebRequestMatcher... matchers)
Add additionalWebRequestMatcher
instances that will ensure thatMockMvc
is used to process the request, if such a matcher matches against the web request.- Parameters:
matchers
- additionalWebRequestMatcher
instances- Returns:
- this builder for further customization
useMockMvcForHosts
public T useMockMvcForHosts(String... hosts)
Add additionalWebRequestMatcher
instances that returntrue
if a supplied host matches — for example,"example.com"
or"example.com:8080"
.- Parameters:
hosts
- additional hosts that ensureMockMvc
gets invoked- Returns:
- this builder for further customization
createConnection
@Deprecated protected final com.gargoylesoftware.htmlunit.WebConnection createConnection(com.gargoylesoftware.htmlunit.WebConnection defaultConnection)
Deprecated.UsecreateConnection(WebClient)
insteadCreate a newWebConnection
that will use aMockMvc
instance if one of the specifiedWebRequestMatcher
instances matches.- Parameters:
defaultConnection
- the default WebConnection to use if none of the specifiedWebRequestMatcher
instances matches; nevernull
- Returns:
- a new
WebConnection
that will use aMockMvc
instance if one of the specifiedWebRequestMatcher
matches - See Also:
alwaysUseMockMvc()
,useMockMvc(WebRequestMatcher...)
,useMockMvcForHosts(String...)
createConnection
protected final com.gargoylesoftware.htmlunit.WebConnection createConnection(com.gargoylesoftware.htmlunit.WebClient webClient)
Create a newWebConnection
that will use aMockMvc
instance if one of the specifiedWebRequestMatcher
instances matches.- Parameters:
webClient
- the WebClient to use if none of the specifiedWebRequestMatcher
instances matches (nevernull
)- Returns:
- a new
WebConnection
that will use aMockMvc
instance if one of the specifiedWebRequestMatcher
matches - Since:
- 4.3
- See Also:
alwaysUseMockMvc()
,useMockMvc(WebRequestMatcher...)
,useMockMvcForHosts(String...)