@@ -67,7 +67,7 @@ func TestQueryString(t *testing.T) {
67
67
assert .EqualError (t , err , "binding X.E: parameter type does not match binding data" )
68
68
binder .SetLooseZeroMode (true )
69
69
err = binder .BindAndValidate (recv , req , nil )
70
- assert .Nil (t , err )
70
+ assert .NoError (t , err )
71
71
assert .Equal (t , 0 , * * * (* (* * recv .X ).E )[0 ])
72
72
assert .Equal (t , 2 , * * * (* (* * recv .X ).E )[1 ])
73
73
assert .Equal (t , []string {"a1" , "a2" }, (* * recv .X ).A )
@@ -106,7 +106,7 @@ func TestQueryNum(t *testing.T) {
106
106
recv := new (Recv )
107
107
binder := binding .New (nil )
108
108
err := binder .BindAndValidate (recv , req , nil )
109
- assert .Nil (t , err )
109
+ assert .NoError (t , err )
110
110
assert .Equal (t , []int {11 , 12 }, (* * recv .X ).A )
111
111
assert .Equal (t , int32 (21 ), (* * recv .X ).B )
112
112
assert .Equal (t , & []uint16 {31 , 32 }, (* * recv .X ).C )
@@ -139,7 +139,7 @@ func TestHeaderString(t *testing.T) {
139
139
recv := new (Recv )
140
140
binder := binding .New (nil )
141
141
err := binder .BindAndValidate (recv , req , nil )
142
- assert .Nil (t , err )
142
+ assert .NoError (t , err )
143
143
assert .Equal (t , []string {"a1" , "a2" }, (* * recv .X ).A )
144
144
assert .Equal (t , "b1" , (* * recv .X ).B )
145
145
assert .Equal (t , []string {"c1" , "c2" }, * (* * recv .X ).C )
@@ -172,7 +172,7 @@ func TestHeaderNum(t *testing.T) {
172
172
recv := new (Recv )
173
173
binder := binding .New (nil )
174
174
err := binder .BindAndValidate (recv , req , nil )
175
- assert .Nil (t , err )
175
+ assert .NoError (t , err )
176
176
assert .Equal (t , []int {11 , 12 }, (* * recv .X ).A )
177
177
assert .Equal (t , int32 (21 ), (* * recv .X ).B )
178
178
assert .Equal (t , & []uint16 {31 , 32 }, (* * recv .X ).C )
@@ -206,7 +206,7 @@ func TestCookieString(t *testing.T) {
206
206
recv := new (Recv )
207
207
binder := binding .New (nil )
208
208
err := binder .BindAndValidate (recv , req , nil )
209
- assert .Nil (t , err )
209
+ assert .NoError (t , err )
210
210
assert .Equal (t , []string {"a1" , "a2" }, (* * recv .X ).A )
211
211
assert .Equal (t , "b1" , (* * recv .X ).B )
212
212
assert .Equal (t , []string {"c1" , "c2" }, * (* * recv .X ).C )
@@ -240,7 +240,7 @@ func TestCookieNum(t *testing.T) {
240
240
recv := new (Recv )
241
241
binder := binding .New (nil )
242
242
err := binder .BindAndValidate (recv , req , nil )
243
- assert .Nil (t , err )
243
+ assert .NoError (t , err )
244
244
assert .Equal (t , []int {11 , 12 }, (* * recv .X ).A )
245
245
assert .Equal (t , int32 (21 ), (* * recv .X ).B )
246
246
assert .Equal (t , & []uint16 {31 , 32 }, (* * recv .X ).C )
@@ -281,7 +281,7 @@ func TestFormString(t *testing.T) {
281
281
recv := new (Recv )
282
282
binder := binding .New (nil )
283
283
err := binder .BindAndValidate (recv , req , nil )
284
- assert .Nil (t , err )
284
+ assert .NoError (t , err )
285
285
assert .Equal (t , []string {"a1" , "a2" }, (* * recv .X ).A )
286
286
assert .Equal (t , "b1" , (* * recv .X ).B )
287
287
assert .Equal (t , []string {"c1" , "c2" }, * (* * recv .X ).C )
@@ -323,7 +323,7 @@ func TestFormNum(t *testing.T) {
323
323
recv := new (Recv )
324
324
binder := binding .New (nil )
325
325
err := binder .BindAndValidate (recv , req , nil )
326
- assert .Nil (t , err )
326
+ assert .NoError (t , err )
327
327
assert .Equal (t , []int {11 , 12 }, (* * recv .X ).A )
328
328
assert .Equal (t , int32 (- 21 ), (* * recv .X ).B )
329
329
assert .Equal (t , & []uint16 {31 , 32 }, (* * recv .X ).C )
@@ -490,7 +490,7 @@ func TestPath(t *testing.T) {
490
490
recv := new (Recv )
491
491
binder := binding .New (nil )
492
492
err := binder .BindAndValidate (recv , req , new (testPathParams ))
493
- assert .Nil (t , err )
493
+ assert .NoError (t , err )
494
494
assert .Equal (t , []string {"a1" }, (* * recv .X ).A )
495
495
assert .Equal (t , int32 (- 21 ), (* * recv .X ).B )
496
496
assert .Equal (t , & []uint16 {31 }, (* * recv .X ).C )
@@ -504,40 +504,48 @@ func TestAuto(t *testing.T) {
504
504
A string `vd:"$!=''"`
505
505
B string
506
506
C string
507
- D string `form:"D,required" query:"D,required"`
507
+ D string `query:"D,required" form:"D,required"`
508
+ E string `cookie:"e" json:"e"`
508
509
}
509
510
query := make (url.Values )
510
511
query .Add ("A" , "a" )
511
512
query .Add ("B" , "b" )
512
513
query .Add ("C" , "c" )
513
- query .Add ("D" , "d" )
514
- req := newRequest ("http://localhost/?" + query .Encode (), nil , nil , nil )
514
+ query .Add ("D" , "d-from-query" )
515
+ contentType , bodyReader , err := httpbody .NewJSONBody (map [string ]string {"e" : "e-from-jsonbody" })
516
+ assert .NoError (t , err )
517
+ header := make (http.Header )
518
+ header .Set ("Content-Type" , contentType )
519
+ req := newRequest ("http://localhost/?" + query .Encode (), header , []* http.Cookie {
520
+ {Name : "e" , Value : "e-from-cookie" },
521
+ }, bodyReader )
515
522
recv := new (Recv )
516
523
binder := binding .New (nil )
517
- err : = binder .BindAndValidate (recv , req , nil )
518
- assert .Nil (t , err )
524
+ err = binder .BindAndValidate (recv , req , nil )
525
+ assert .NoError (t , err )
519
526
assert .Equal (t , "a" , recv .A )
520
527
assert .Equal (t , "b" , recv .B )
521
528
assert .Equal (t , "c" , recv .C )
522
- assert .Equal (t , "d" , recv .D )
529
+ assert .Equal (t , "d-from-query" , recv .D )
530
+ assert .Equal (t , "e-from-cookie" , recv .E )
523
531
524
532
query = make (url.Values )
525
- query .Add ("A" , "a" )
526
- query .Add ("D" , "d" )
533
+ query .Add ("D" , "d-from-query" )
527
534
form := make (url.Values )
528
535
form .Add ("B" , "b" )
529
536
form .Add ("C" , "c" )
530
- contentType , bodyReader := httpbody .NewFormBody2 (form , nil )
531
- header := make (http.Header )
537
+ form .Add ("D" , "d-from-form" )
538
+ contentType , bodyReader = httpbody .NewFormBody2 (form , nil )
539
+ header = make (http.Header )
532
540
header .Set ("Content-Type" , contentType )
533
541
req = newRequest ("http://localhost/?" + query .Encode (), header , nil , bodyReader )
534
542
recv = new (Recv )
535
543
err = binder .Bind (recv , req , nil )
536
- assert .Nil (t , err )
544
+ assert .NoError (t , err )
537
545
assert .Equal (t , "" , recv .A )
538
546
assert .Equal (t , "b" , recv .B )
539
547
assert .Equal (t , "c" , recv .C )
540
- assert .Equal (t , "d" , recv .D )
548
+ assert .Equal (t , "d-from-form " , recv .D )
541
549
err = binder .Validate (recv )
542
550
assert .EqualError (t , err , "validating A: fail" )
543
551
}
@@ -560,15 +568,15 @@ func TestTypeUnmarshal(t *testing.T) {
560
568
recv := new (Recv )
561
569
binder := binding .New (nil )
562
570
err := binder .BindAndValidate (recv , req , nil )
563
- assert .Nil (t , err )
571
+ assert .NoError (t , err )
564
572
t1 , err := time .Parse (time .RFC3339 , "2019-09-03T18:05:24+08:00" )
565
- assert .Nil (t , err )
573
+ assert .NoError (t , err )
566
574
assert .Equal (t , t1 , recv .A )
567
575
t21 , err := time .Parse (time .RFC3339 , "2019-09-04T14:05:24+08:00" )
568
- assert .Nil (t , err )
576
+ assert .NoError (t , err )
569
577
assert .Equal (t , t21 , * recv .B )
570
578
t22 , err := time .Parse (time .RFC3339 , "2019-09-04T18:05:24+08:00" )
571
- assert .Nil (t , err )
579
+ assert .NoError (t , err )
572
580
assert .Equal (t , []time.Time {t21 , t22 }, recv .C )
573
581
t .Logf ("%v" , recv )
574
582
}
0 commit comments