MCPcopy
hub / github.com/gin-gonic/gin / TestMappingCollectionFormat

Function TestMappingCollectionFormat

binding/form_mapping_test.go:327–364  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

325}
326
327func TestMappingCollectionFormat(t *testing.T) {
328 var s struct {
329 SliceMulti []int `form:"slice_multi" collection_format:"multi"`
330 SliceCsv []int `form:"slice_csv" collection_format:"csv"`
331 SliceSsv []int `form:"slice_ssv" collection_format:"ssv"`
332 SliceTsv []int `form:"slice_tsv" collection_format:"tsv"`
333 SlicePipes []int `form:"slice_pipes" collection_format:"pipes"`
334 ArrayMulti [2]int `form:"array_multi" collection_format:"multi"`
335 ArrayCsv [2]int `form:"array_csv" collection_format:"csv"`
336 ArraySsv [2]int `form:"array_ssv" collection_format:"ssv"`
337 ArrayTsv [2]int `form:"array_tsv" collection_format:"tsv"`
338 ArrayPipes [2]int `form:"array_pipes" collection_format:"pipes"`
339 }
340 err := mappingByPtr(&s, formSource{
341 "slice_multi": {"1", "2"},
342 "slice_csv": {"1,2"},
343 "slice_ssv": {"1 2"},
344 "slice_tsv": {"1 2"},
345 "slice_pipes": {"1|2"},
346 "array_multi": {"1", "2"},
347 "array_csv": {"1,2"},
348 "array_ssv": {"1 2"},
349 "array_tsv": {"1 2"},
350 "array_pipes": {"1|2"},
351 }, "form")
352 require.NoError(t, err)
353
354 assert.Equal(t, []int{1, 2}, s.SliceMulti)
355 assert.Equal(t, []int{1, 2}, s.SliceCsv)
356 assert.Equal(t, []int{1, 2}, s.SliceSsv)
357 assert.Equal(t, []int{1, 2}, s.SliceTsv)
358 assert.Equal(t, []int{1, 2}, s.SlicePipes)
359 assert.Equal(t, [2]int{1, 2}, s.ArrayMulti)
360 assert.Equal(t, [2]int{1, 2}, s.ArrayCsv)
361 assert.Equal(t, [2]int{1, 2}, s.ArraySsv)
362 assert.Equal(t, [2]int{1, 2}, s.ArrayTsv)
363 assert.Equal(t, [2]int{1, 2}, s.ArrayPipes)
364}
365
366func TestMappingCollectionFormatInvalid(t *testing.T) {
367 var s struct {

Callers

nothing calls this directly

Calls 1

mappingByPtrFunction · 0.85

Tested by

no test coverage detected