Skip to content

Commit 8de30c4

Browse files
committed
Merge pull request #936 from snicoll
* gh-936: Revert "Fix compatibility problems with Spring Framework 6.2" Closes gh-936
2 parents cf451c9 + 737e6ea commit 8de30c4

File tree

3 files changed

+21
-56
lines changed

3 files changed

+21
-56
lines changed

Diff for: spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuilders.java

+19-30
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2014-2024 the original author or authors.
2+
* Copyright 2014-2023 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -51,8 +51,8 @@ private RestDocumentationRequestBuilders() {
5151
* @return the builder for the GET request
5252
*/
5353
public static MockHttpServletRequestBuilder get(String urlTemplate, Object... urlVariables) {
54-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
55-
MockMvcRequestBuilders.get(urlTemplate, urlVariables), urlTemplate);
54+
return MockMvcRequestBuilders.get(urlTemplate, urlVariables)
55+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
5656
}
5757

5858
/**
@@ -72,8 +72,8 @@ public static MockHttpServletRequestBuilder get(URI uri) {
7272
* @return the builder for the POST request
7373
*/
7474
public static MockHttpServletRequestBuilder post(String urlTemplate, Object... urlVariables) {
75-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
76-
MockMvcRequestBuilders.post(urlTemplate, urlVariables), urlTemplate);
75+
return MockMvcRequestBuilders.post(urlTemplate, urlVariables)
76+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
7777
}
7878

7979
/**
@@ -93,8 +93,8 @@ public static MockHttpServletRequestBuilder post(URI uri) {
9393
* @return the builder for the PUT request
9494
*/
9595
public static MockHttpServletRequestBuilder put(String urlTemplate, Object... urlVariables) {
96-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
97-
MockMvcRequestBuilders.put(urlTemplate, urlVariables), urlTemplate);
96+
return MockMvcRequestBuilders.put(urlTemplate, urlVariables)
97+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
9898
}
9999

100100
/**
@@ -114,8 +114,8 @@ public static MockHttpServletRequestBuilder put(URI uri) {
114114
* @return the builder for the PATCH request
115115
*/
116116
public static MockHttpServletRequestBuilder patch(String urlTemplate, Object... urlVariables) {
117-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
118-
MockMvcRequestBuilders.patch(urlTemplate, urlVariables), urlTemplate);
117+
return MockMvcRequestBuilders.patch(urlTemplate, urlVariables)
118+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
119119
}
120120

121121
/**
@@ -135,8 +135,8 @@ public static MockHttpServletRequestBuilder patch(URI uri) {
135135
* @return the builder for the DELETE request
136136
*/
137137
public static MockHttpServletRequestBuilder delete(String urlTemplate, Object... urlVariables) {
138-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
139-
MockMvcRequestBuilders.delete(urlTemplate, urlVariables), urlTemplate);
138+
return MockMvcRequestBuilders.delete(urlTemplate, urlVariables)
139+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
140140
}
141141

142142
/**
@@ -156,8 +156,8 @@ public static MockHttpServletRequestBuilder delete(URI uri) {
156156
* @return the builder for the OPTIONS request
157157
*/
158158
public static MockHttpServletRequestBuilder options(String urlTemplate, Object... urlVariables) {
159-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
160-
MockMvcRequestBuilders.options(urlTemplate, urlVariables), urlTemplate);
159+
return MockMvcRequestBuilders.options(urlTemplate, urlVariables)
160+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
161161
}
162162

163163
/**
@@ -177,8 +177,8 @@ public static MockHttpServletRequestBuilder options(URI uri) {
177177
* @return the builder for the HEAD request
178178
*/
179179
public static MockHttpServletRequestBuilder head(String urlTemplate, Object... urlVariables) {
180-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
181-
MockMvcRequestBuilders.head(urlTemplate, urlVariables), urlTemplate);
180+
return MockMvcRequestBuilders.head(urlTemplate, urlVariables)
181+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
182182
}
183183

184184
/**
@@ -200,8 +200,8 @@ public static MockHttpServletRequestBuilder head(URI uri) {
200200
*/
201201
public static MockHttpServletRequestBuilder request(HttpMethod httpMethod, String urlTemplate,
202202
Object... urlVariables) {
203-
return (MockHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
204-
MockMvcRequestBuilders.request(httpMethod, urlTemplate, urlVariables), urlTemplate);
203+
return MockMvcRequestBuilders.request(httpMethod, urlTemplate, urlVariables)
204+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
205205
}
206206

207207
/**
@@ -224,8 +224,8 @@ public static MockHttpServletRequestBuilder request(HttpMethod httpMethod, URI u
224224
* @since 2.0.6
225225
*/
226226
public static MockMultipartHttpServletRequestBuilder multipart(String urlTemplate, Object... urlVariables) {
227-
return (MockMultipartHttpServletRequestBuilder) configureUrlTemplateRequestAttribute(
228-
MockMvcRequestBuilders.multipart(urlTemplate, urlVariables), urlTemplate);
227+
return (MockMultipartHttpServletRequestBuilder) MockMvcRequestBuilders.multipart(urlTemplate, urlVariables)
228+
.requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
229229
}
230230

231231
/**
@@ -238,15 +238,4 @@ public static MockMultipartHttpServletRequestBuilder multipart(URI uri) {
238238
return MockMvcRequestBuilders.multipart(uri);
239239
}
240240

241-
private static Object configureUrlTemplateRequestAttribute(Object builder, String urlTemplate) {
242-
try {
243-
return builder.getClass()
244-
.getMethod("requestAttr", String.class, Object.class)
245-
.invoke(builder, RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
246-
}
247-
catch (Exception ex) {
248-
throw new RuntimeException(ex);
249-
}
250-
}
251-
252241
}

Diff for: spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/MockMvcRequestConverterTests.java

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2014-2024 the original author or authors.
2+
* Copyright 2014-2023 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -34,7 +34,6 @@
3434
import org.springframework.restdocs.operation.OperationRequestPart;
3535
import org.springframework.restdocs.operation.RequestCookie;
3636
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
37-
import org.springframework.test.web.servlet.request.MockMultipartHttpServletRequestBuilder;
3837
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
3938

4039
import static org.assertj.core.api.Assertions.assertThat;
@@ -237,8 +236,4 @@ private OperationRequest createOperationRequest(MockHttpServletRequestBuilder bu
237236
return this.factory.convert(builder.buildRequest(new MockServletContext()));
238237
}
239238

240-
private OperationRequest createOperationRequest(MockMultipartHttpServletRequestBuilder builder) {
241-
return this.factory.convert(builder.buildRequest(new MockServletContext()));
242-
}
243-
244239
}

Diff for: spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuildersTests.java

+1-20
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2014-2024 the original author or authors.
2+
* Copyright 2014-2023 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -26,7 +26,6 @@
2626
import org.springframework.mock.web.MockServletContext;
2727
import org.springframework.restdocs.generate.RestDocumentationGenerator;
2828
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
29-
import org.springframework.test.web.servlet.request.MockMultipartHttpServletRequestBuilder;
3029

3130
import static org.assertj.core.api.Assertions.assertThat;
3231
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.delete;
@@ -141,15 +140,6 @@ public void multipartUri() {
141140

142141
private void assertTemplate(MockHttpServletRequestBuilder builder, HttpMethod httpMethod) {
143142
MockHttpServletRequest request = builder.buildRequest(this.servletContext);
144-
assertTemplate(httpMethod, request);
145-
}
146-
147-
private void assertTemplate(MockMultipartHttpServletRequestBuilder builder, HttpMethod httpMethod) {
148-
MockHttpServletRequest request = builder.buildRequest(this.servletContext);
149-
assertTemplate(httpMethod, request);
150-
}
151-
152-
private void assertTemplate(HttpMethod httpMethod, MockHttpServletRequest request) {
153143
assertThat((String) request.getAttribute(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE))
154144
.isEqualTo("/{template}");
155145
assertThat(request.getRequestURI()).isEqualTo("/t");
@@ -158,15 +148,6 @@ private void assertTemplate(HttpMethod httpMethod, MockHttpServletRequest reques
158148

159149
private void assertUri(MockHttpServletRequestBuilder builder, HttpMethod httpMethod) {
160150
MockHttpServletRequest request = builder.buildRequest(this.servletContext);
161-
assertUri(httpMethod, request);
162-
}
163-
164-
private void assertUri(MockMultipartHttpServletRequestBuilder builder, HttpMethod httpMethod) {
165-
MockHttpServletRequest request = builder.buildRequest(this.servletContext);
166-
assertUri(httpMethod, request);
167-
}
168-
169-
private void assertUri(HttpMethod httpMethod, MockHttpServletRequest request) {
170151
assertThat(request.getRequestURI()).isEqualTo("/uri");
171152
assertThat(request.getMethod()).isEqualTo(httpMethod.name());
172153
}

0 commit comments

Comments
 (0)