@@ -31,6 +31,7 @@ import org.springframework.http.MediaType.TEXT_PLAIN
31
31
import org.springframework.test.json.JsonCompareMode
32
32
import org.springframework.test.web.Person
33
33
import org.springframework.test.web.servlet.setup.MockMvcBuilders
34
+ import org.springframework.util.LinkedMultiValueMap
34
35
import org.springframework.web.bind.annotation.GetMapping
35
36
import org.springframework.web.bind.annotation.PathVariable
36
37
import org.springframework.web.bind.annotation.PostMapping
@@ -222,10 +223,18 @@ class MockMvcExtensionsTests {
222
223
}
223
224
224
225
@Test
225
- fun queryParameter () {
226
+ fun queryParam () {
226
227
val result = mockMvc.get(" /" ) {
227
- queryParam(" foo" , " bar" )
228
- queryParam(" foo" , " baz" )
228
+ queryParam(" foo" , " bar" , " baz" )
229
+ }.andReturn()
230
+ assertThat(result.request.parameterMap[" foo" ]).containsExactly(" bar" , " baz" )
231
+ assertThat(result.request.queryString).isEqualTo(" foo=bar&foo=baz" )
232
+ }
233
+
234
+ @Test
235
+ fun queryParams () {
236
+ val result = mockMvc.get(" /" ) {
237
+ queryParams = LinkedMultiValueMap (mapOf (" foo" to listOf (" bar" , " baz" )))
229
238
}.andReturn()
230
239
assertThat(result.request.parameterMap[" foo" ]).containsExactly(" bar" , " baz" )
231
240
assertThat(result.request.queryString).isEqualTo(" foo=bar&foo=baz" )
@@ -234,11 +243,41 @@ class MockMvcExtensionsTests {
234
243
@Test
235
244
fun formField () {
236
245
val result = mockMvc.post(" /person" ) {
237
- formField(" name" , " foo" )
246
+ formField(" name" , " foo" , " bar " )
238
247
formField(" someDouble" , " 1.23" )
239
248
}.andReturn()
240
249
assertThat(result.request.contentType).startsWith(APPLICATION_FORM_URLENCODED_VALUE )
241
- assertThat(result.request.contentAsString).isEqualTo(" name=foo&someDouble=1.23" )
250
+ assertThat(result.request.contentAsString).isEqualTo(" name=foo&name=bar&someDouble=1.23" )
251
+ }
252
+
253
+ @Test
254
+ fun formFields () {
255
+ val result = mockMvc.post(" /person" ) {
256
+ formFields = LinkedMultiValueMap (mapOf (" name" to listOf (" foo" , " bar" ), " someDouble" to listOf (" 1.23" )))
257
+ }.andReturn()
258
+ assertThat(result.request.contentType).startsWith(APPLICATION_FORM_URLENCODED_VALUE )
259
+ assertThat(result.request.contentAsString).isEqualTo(" name=foo&name=bar&someDouble=1.23" )
260
+ }
261
+
262
+ @Test
263
+ fun sessionAttr () {
264
+ val result = mockMvc.post(" /person" ) {
265
+ sessionAttr(" name" , " foo" )
266
+ sessionAttr(" someDouble" , 1.23 )
267
+ }.andReturn()
268
+ val session = result.request.session!!
269
+ assertThat(session.getAttribute(" name" )).isEqualTo(" foo" )
270
+ assertThat(session.getAttribute(" someDouble" )).isEqualTo(1.23 )
271
+ }
272
+
273
+ @Test
274
+ fun sessionAttrs () {
275
+ val result = mockMvc.post(" /person" ) {
276
+ sessionAttrs = mapOf (" name" to " foo" , " someDouble" to 1.23 )
277
+ }.andReturn()
278
+ val session = result.request.session!!
279
+ assertThat(session.getAttribute(" name" )).isEqualTo(" foo" )
280
+ assertThat(session.getAttribute(" someDouble" )).isEqualTo(1.23 )
242
281
}
243
282
244
283
@RestController
0 commit comments