1
1
/*
2
- * Copyright 2002-2019 the original author or authors.
2
+ * Copyright 2002-2020 the original author or authors.
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
@@ -199,6 +199,17 @@ public void resolveMultipartFileList() throws Exception {
199
199
assertThat (result ).isEqualTo (Arrays .asList (expected1 , expected2 ));
200
200
}
201
201
202
+ @ Test
203
+ public void resolveMultipartFileListMissing () throws Exception {
204
+ MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest ();
205
+ request .addFile (new MockMultipartFile ("other" , "Hello World 3" .getBytes ()));
206
+ webRequest = new ServletWebRequest (request );
207
+
208
+ MethodParameter param = this .testMethod .annotPresent (RequestParam .class ).arg (List .class , MultipartFile .class );
209
+ assertThatExceptionOfType (MissingServletRequestPartException .class ).isThrownBy (() ->
210
+ resolver .resolveArgument (param , null , webRequest , null ));
211
+ }
212
+
202
213
@ Test
203
214
public void resolveMultipartFileArray () throws Exception {
204
215
MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest ();
@@ -220,6 +231,17 @@ public void resolveMultipartFileArray() throws Exception {
220
231
assertThat (expected2 ).isEqualTo (parts [1 ]);
221
232
}
222
233
234
+ @ Test
235
+ public void resolveMultipartFileArrayMissing () throws Exception {
236
+ MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest ();
237
+ request .addFile (new MockMultipartFile ("other" , "Hello World 3" .getBytes ()));
238
+ webRequest = new ServletWebRequest (request );
239
+
240
+ MethodParameter param = this .testMethod .annotPresent (RequestParam .class ).arg (MultipartFile [].class );
241
+ assertThatExceptionOfType (MissingServletRequestPartException .class ).isThrownBy (() ->
242
+ resolver .resolveArgument (param , null , webRequest , null ));
243
+ }
244
+
223
245
@ Test
224
246
public void resolvePart () throws Exception {
225
247
MockHttpServletRequest request = new MockHttpServletRequest ();
@@ -257,6 +279,19 @@ public void resolvePartList() throws Exception {
257
279
assertThat (result ).isEqualTo (Arrays .asList (expected1 , expected2 ));
258
280
}
259
281
282
+ @ Test
283
+ public void resolvePartListMissing () throws Exception {
284
+ MockHttpServletRequest request = new MockHttpServletRequest ();
285
+ request .setMethod ("POST" );
286
+ request .setContentType ("multipart/form-data" );
287
+ request .addPart (new MockPart ("other" , "Hello World 3" .getBytes ()));
288
+ webRequest = new ServletWebRequest (request );
289
+
290
+ MethodParameter param = this .testMethod .annotPresent (RequestParam .class ).arg (List .class , Part .class );
291
+ assertThatExceptionOfType (MissingServletRequestPartException .class ).isThrownBy (() ->
292
+ resolver .resolveArgument (param , null , webRequest , null ));
293
+ }
294
+
260
295
@ Test
261
296
public void resolvePartArray () throws Exception {
262
297
MockHttpServletRequest request = new MockHttpServletRequest ();
@@ -280,6 +315,19 @@ public void resolvePartArray() throws Exception {
280
315
assertThat (expected2 ).isEqualTo (parts [1 ]);
281
316
}
282
317
318
+ @ Test
319
+ public void resolvePartArrayMissing () throws Exception {
320
+ MockHttpServletRequest request = new MockHttpServletRequest ();
321
+ request .setMethod ("POST" );
322
+ request .setContentType ("multipart/form-data" );
323
+ request .addPart (new MockPart ("other" , "Hello World 3" .getBytes ()));
324
+ webRequest = new ServletWebRequest (request );
325
+
326
+ MethodParameter param = this .testMethod .annotPresent (RequestParam .class ).arg (Part [].class );
327
+ assertThatExceptionOfType (MissingServletRequestPartException .class ).isThrownBy (() ->
328
+ resolver .resolveArgument (param , null , webRequest , null ));
329
+ }
330
+
283
331
@ Test
284
332
public void resolveMultipartFileNotAnnot () throws Exception {
285
333
MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest ();
0 commit comments