@@ -167,62 +167,21 @@ void greetingWithDynamicUri(MockWebServer server, Service service, TestObservati
167
167
.hasLowCardinalityKeyValue ("uri" , "none" );
168
168
}
169
169
170
- @ ParameterizedAdapterTest
171
- void postWithHeader (MockWebServer server , Service service ) throws Exception {
172
- service .postWithHeader ("testHeader" , "testBody" );
173
-
174
- RecordedRequest request = server .takeRequest ();
175
- assertThat (request .getMethod ()).isEqualTo ("POST" );
176
- assertThat (request .getPath ()).isEqualTo ("/greeting" );
177
- assertThat (request .getHeaders ().get ("testHeaderName" )).isEqualTo ("testHeader" );
178
- assertThat (request .getBody ().readUtf8 ()).isEqualTo ("testBody" );
179
- }
180
-
181
- @ ParameterizedAdapterTest
182
- void formData (MockWebServer server , Service service ) throws Exception {
183
- MultiValueMap <String , String > map = new LinkedMultiValueMap <>();
184
- map .add ("param1" , "value 1" );
185
- map .add ("param2" , "value 2" );
186
-
187
- service .postForm (map );
188
-
189
- RecordedRequest request = server .takeRequest ();
190
- assertThat (request .getHeaders ().get ("Content-Type" )).isEqualTo ("application/x-www-form-urlencoded" );
191
- assertThat (request .getBody ().readUtf8 ()).isEqualTo ("param1=value+1¶m2=value+2" );
192
- }
193
-
194
- @ ParameterizedAdapterTest // gh-30342
195
- void multipart (MockWebServer server , Service service ) throws Exception {
196
- MultipartFile file = new MockMultipartFile (
197
- "testFileName" , "originalTestFileName" , MediaType .APPLICATION_JSON_VALUE , "test" .getBytes ());
198
-
199
- service .postMultipart (file , "test2" );
200
-
201
- RecordedRequest request = server .takeRequest ();
202
- assertThat (request .getHeaders ().get ("Content-Type" )).startsWith ("multipart/form-data;boundary=" );
203
- assertThat (request .getBody ().readUtf8 ()).containsSubsequence (
204
- "Content-Disposition: form-data; name=\" file\" ; filename=\" originalTestFileName\" " ,
205
- "Content-Type: application/json" , "Content-Length: 4" , "test" ,
206
- "Content-Disposition: form-data; name=\" anotherPart\" " , "Content-Type: text/plain;charset=UTF-8" ,
207
- "Content-Length: 5" , "test2" );
208
- }
209
-
210
- @ ParameterizedAdapterTest
211
- void putWithCookies (MockWebServer server , Service service ) throws Exception {
212
- service .putWithCookies ("test1" , "test2" );
170
+ @ Test
171
+ void greetingWithApiVersion () throws Exception {
172
+ RestClient restClient = RestClient .builder ()
173
+ .baseUrl (anotherServer .url ("/" ).toString ())
174
+ .apiVersionInserter (ApiVersionInserter .useHeader ("X-API-Version" ))
175
+ .build ();
213
176
214
- RecordedRequest request = server .takeRequest ();
215
- assertThat (request .getMethod ()).isEqualTo ("PUT" );
216
- assertThat (request .getHeader ("Cookie" )).isEqualTo ("firstCookie=test1; secondCookie=test2" );
217
- }
177
+ RestClientAdapter adapter = RestClientAdapter .create (restClient );
178
+ Service service = HttpServiceProxyFactory .builderFor (adapter ).build ().createClient (Service .class );
218
179
219
- @ ParameterizedAdapterTest
220
- void putWithSameNameCookies (MockWebServer server , Service service ) throws Exception {
221
- service .putWithSameNameCookies ("test1" , "test2" );
180
+ String response = service .getGreetingWithVersion ();
222
181
223
- RecordedRequest request = server .takeRequest ();
224
- assertThat (request .getMethod ( )).isEqualTo ("PUT " );
225
- assertThat (request . getHeader ( "Cookie" )) .isEqualTo ("testCookie=test1; testCookie=test2 " );
182
+ RecordedRequest request = anotherServer .takeRequest ();
183
+ assertThat (request .getHeader ( "X-API-Version" )).isEqualTo ("1.2 " );
184
+ assertThat (response ) .isEqualTo ("Hello Spring 2! " );
226
185
}
227
186
228
187
@ ParameterizedAdapterTest
@@ -270,20 +229,44 @@ void getWithIgnoredUriBuilderFactory(MockWebServer server, Service service) thro
270
229
assertThat (this .anotherServer .getRequestCount ()).isEqualTo (0 );
271
230
}
272
231
273
- @ Test
274
- void apiVersion () throws Exception {
275
- RestClient restClient = RestClient .builder ()
276
- .baseUrl (anotherServer .url ("/" ).toString ())
277
- .apiVersionInserter (ApiVersionInserter .useHeader ("X-API-Version" ))
278
- .build ();
232
+ @ ParameterizedAdapterTest
233
+ void postWithHeader (MockWebServer server , Service service ) throws Exception {
234
+ service .postWithHeader ("testHeader" , "testBody" );
279
235
280
- RestClientAdapter adapter = RestClientAdapter .create (restClient );
281
- Service service = HttpServiceProxyFactory .builderFor (adapter ).build ().createClient (Service .class );
236
+ RecordedRequest request = server .takeRequest ();
237
+ assertThat (request .getMethod ()).isEqualTo ("POST" );
238
+ assertThat (request .getPath ()).isEqualTo ("/greeting" );
239
+ assertThat (request .getHeaders ().get ("testHeaderName" )).isEqualTo ("testHeader" );
240
+ assertThat (request .getBody ().readUtf8 ()).isEqualTo ("testBody" );
241
+ }
282
242
283
- service .getGreetingWithVersion ();
243
+ @ ParameterizedAdapterTest
244
+ void postFormData (MockWebServer server , Service service ) throws Exception {
245
+ MultiValueMap <String , String > map = new LinkedMultiValueMap <>();
246
+ map .add ("param1" , "value 1" );
247
+ map .add ("param2" , "value 2" );
284
248
285
- RecordedRequest request = anotherServer .takeRequest ();
286
- assertThat (request .getHeader ("X-API-Version" )).isEqualTo ("1.2" );
249
+ service .postForm (map );
250
+
251
+ RecordedRequest request = server .takeRequest ();
252
+ assertThat (request .getHeaders ().get ("Content-Type" )).isEqualTo ("application/x-www-form-urlencoded" );
253
+ assertThat (request .getBody ().readUtf8 ()).isEqualTo ("param1=value+1¶m2=value+2" );
254
+ }
255
+
256
+ @ ParameterizedAdapterTest // gh-30342
257
+ void postMultipart (MockWebServer server , Service service ) throws Exception {
258
+ MultipartFile file = new MockMultipartFile (
259
+ "testFileName" , "originalTestFileName" , MediaType .APPLICATION_JSON_VALUE , "test" .getBytes ());
260
+
261
+ service .postMultipart (file , "test2" );
262
+
263
+ RecordedRequest request = server .takeRequest ();
264
+ assertThat (request .getHeaders ().get ("Content-Type" )).startsWith ("multipart/form-data;boundary=" );
265
+ assertThat (request .getBody ().readUtf8 ()).containsSubsequence (
266
+ "Content-Disposition: form-data; name=\" file\" ; filename=\" originalTestFileName\" " ,
267
+ "Content-Type: application/json" , "Content-Length: 4" , "test" ,
268
+ "Content-Disposition: form-data; name=\" anotherPart\" " , "Content-Type: text/plain;charset=UTF-8" ,
269
+ "Content-Length: 5" , "test2" );
287
270
}
288
271
289
272
@ ParameterizedAdapterTest // gh-34793
@@ -299,6 +282,24 @@ void postSet(MockWebServer server, Service service) throws InterruptedException
299
282
assertThat (request .getBody ().readUtf8 ()).isEqualTo ("[{\" name\" :\" John\" },{\" name\" :\" Richard\" }]" );
300
283
}
301
284
285
+ @ ParameterizedAdapterTest
286
+ void putWithCookies (MockWebServer server , Service service ) throws Exception {
287
+ service .putWithCookies ("test1" , "test2" );
288
+
289
+ RecordedRequest request = server .takeRequest ();
290
+ assertThat (request .getMethod ()).isEqualTo ("PUT" );
291
+ assertThat (request .getHeader ("Cookie" )).isEqualTo ("firstCookie=test1; secondCookie=test2" );
292
+ }
293
+
294
+ @ ParameterizedAdapterTest
295
+ void putWithSameNameCookies (MockWebServer server , Service service ) throws Exception {
296
+ service .putWithSameNameCookies ("test1" , "test2" );
297
+
298
+ RecordedRequest request = server .takeRequest ();
299
+ assertThat (request .getMethod ()).isEqualTo ("PUT" );
300
+ assertThat (request .getHeader ("Cookie" )).isEqualTo ("testCookie=test1; testCookie=test2" );
301
+ }
302
+
302
303
303
304
private static MockWebServer anotherServer () {
304
305
MockWebServer server = new MockWebServer ();
@@ -323,6 +324,16 @@ private interface Service {
323
324
@ GetExchange (url = "/greeting" , version = "1.2" )
324
325
String getGreetingWithVersion ();
325
326
327
+ @ GetExchange ("/greeting" )
328
+ ResponseEntity <String > getWithUriBuilderFactory (UriBuilderFactory uriBuilderFactory );
329
+
330
+ @ GetExchange ("/greeting/{id}" )
331
+ ResponseEntity <String > getWithUriBuilderFactory (
332
+ UriBuilderFactory uriBuilderFactory , @ PathVariable String id , @ RequestParam String param );
333
+
334
+ @ GetExchange ("/greeting" )
335
+ ResponseEntity <String > getWithIgnoredUriBuilderFactory (URI uri , UriBuilderFactory uriBuilderFactory );
336
+
326
337
@ PostExchange ("/greeting" )
327
338
void postWithHeader (@ RequestHeader ("testHeaderName" ) String testHeader , @ RequestBody String requestBody );
328
339
@@ -342,30 +353,10 @@ private interface Service {
342
353
void putWithSameNameCookies (
343
354
@ CookieValue ("testCookie" ) String firstCookie , @ CookieValue ("testCookie" ) String secondCookie );
344
355
345
- @ GetExchange ("/greeting" )
346
- ResponseEntity <String > getWithUriBuilderFactory (UriBuilderFactory uriBuilderFactory );
347
-
348
- @ GetExchange ("/greeting/{id}" )
349
- ResponseEntity <String > getWithUriBuilderFactory (
350
- UriBuilderFactory uriBuilderFactory , @ PathVariable String id , @ RequestParam String param );
351
-
352
- @ GetExchange ("/greeting" )
353
- ResponseEntity <String > getWithIgnoredUriBuilderFactory (URI uri , UriBuilderFactory uriBuilderFactory );
354
356
}
355
357
356
358
357
- static final class Person {
358
-
359
- private final String name ;
360
-
361
- Person (String name ) {
362
- this .name = name ;
363
- }
364
-
365
- public String getName () {
366
- return this .name ;
367
- }
368
-
359
+ record Person (String name ) {
369
360
}
370
361
371
362
}
0 commit comments