Add method for HTTP PATCH in MockMvcRequestBuilders
Issue: SPR-11299
This commit is contained in:
parent
0606c98277
commit
3db6a7f715
|
|
@ -28,21 +28,18 @@ import org.springframework.util.ReflectionUtils;
|
|||
/**
|
||||
* Static factory methods for {@link RequestBuilder}s.
|
||||
*
|
||||
* <p><strong>Eclipse users:</strong> consider adding this class as a Java
|
||||
* <p><strong>Eclipse users:</strong> Consider adding this class as a Java
|
||||
* editor favorite. To navigate, open the Preferences and type "favorites".
|
||||
*
|
||||
* @author Arjen Poutsma
|
||||
* @author Rossen Stoyanchev
|
||||
* @author Greg Turnquist
|
||||
* @since 3.2
|
||||
*/
|
||||
public abstract class MockMvcRequestBuilders {
|
||||
|
||||
private MockMvcRequestBuilders() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a GET request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -52,7 +49,6 @@ public abstract class MockMvcRequestBuilders {
|
|||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a POST request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -62,7 +58,6 @@ public abstract class MockMvcRequestBuilders {
|
|||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a PUT request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -70,9 +65,17 @@ public abstract class MockMvcRequestBuilders {
|
|||
return new MockHttpServletRequestBuilder(HttpMethod.PUT, urlTemplate, urlVariables);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a PATCH request.
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
public static MockHttpServletRequestBuilder patch(String urlTemplate, Object... urlVariables) {
|
||||
return new MockHttpServletRequestBuilder(HttpMethod.PATCH, urlTemplate, urlVariables);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a DELETE request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -82,7 +85,6 @@ public abstract class MockMvcRequestBuilders {
|
|||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for an OPTIONS request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -93,7 +95,6 @@ public abstract class MockMvcRequestBuilders {
|
|||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a request with the given HTTP method.
|
||||
*
|
||||
* @param httpMethod the HTTP method
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
|
|
@ -104,7 +105,6 @@ public abstract class MockMvcRequestBuilders {
|
|||
|
||||
/**
|
||||
* Create a {@link MockHttpServletRequestBuilder} for a multipart request.
|
||||
*
|
||||
* @param urlTemplate a URL template; the resulting URL will be encoded
|
||||
* @param urlVariables zero or more URL variables
|
||||
*/
|
||||
|
|
@ -115,22 +115,19 @@ public abstract class MockMvcRequestBuilders {
|
|||
/**
|
||||
* Create a {@link RequestBuilder} for an async dispatch from the
|
||||
* {@link MvcResult} of the request that started async processing.
|
||||
*
|
||||
* <p>Usage involves performing one request first that starts async processing:
|
||||
* <pre>
|
||||
* <pre class="code">
|
||||
* MvcResult mvcResult = this.mockMvc.perform(get("/1"))
|
||||
* .andExpect(request().asyncStarted())
|
||||
* .andReturn();
|
||||
* </pre>
|
||||
*
|
||||
* <p>And then performing the async dispatch re-using the {@code MvcResult}:
|
||||
* <pre>
|
||||
* <pre class="code">
|
||||
* this.mockMvc.perform(asyncDispatch(mvcResult))
|
||||
* .andExpect(status().isOk())
|
||||
* .andExpect(content().contentType(MediaType.APPLICATION_JSON))
|
||||
* .andExpect(content().string("{\"name\":\"Joe\",\"someDouble\":0.0,\"someBoolean\":false}"));
|
||||
* </pre>
|
||||
*
|
||||
* @param mvcResult the result from the request that started async processing
|
||||
*/
|
||||
public static RequestBuilder asyncDispatch(final MvcResult mvcResult) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue