@@ -34,6 +34,10 @@ type TestString struct {
3434 Min string `validate:"min=1"`
3535 Max string `validate:"max=10"`
3636 MinMax string `validate:"min=1,max=10"`
37+ Lt string `validate:"lt=10"`
38+ Lte string `validate:"lte=10"`
39+ Gt string `validate:"gt=10"`
40+ Gte string `validate:"gte=10"`
3741 OmitEmpty string `validate:"omitempty,min=1,max=10"`
3842 Sub * SubTest
3943 SubIgnore * SubTest `validate:"-"`
@@ -49,6 +53,10 @@ type TestInt32 struct {
4953 Min int `validate:"min=1"`
5054 Max int `validate:"max=10"`
5155 MinMax int `validate:"min=1,max=10"`
56+ Lt int `validate:"lt=10"`
57+ Lte int `validate:"lte=10"`
58+ Gt int `validate:"gt=10"`
59+ Gte int `validate:"gte=10"`
5260 OmitEmpty int `validate:"omitempty,min=1,max=10"`
5361}
5462
@@ -425,6 +433,10 @@ func (ms *MySuite) TestFlattening(c *C) {
425433 Min : "min=1" ,
426434 Max : "1234567890" ,
427435 MinMax : "12345" ,
436+ Lt : "012345678" ,
437+ Lte : "0123456789" ,
438+ Gt : "01234567890" ,
439+ Gte : "0123456789" ,
428440 OmitEmpty : "" ,
429441 Sub : & SubTest {
430442 Test : "1" ,
@@ -472,6 +484,8 @@ func (ms *MySuite) TestFlattening(c *C) {
472484
473485 // Assert Fields
474486 AssertMapFieldError (err2 , "Len" , "len" , c )
487+ AssertMapFieldError (err2 , "Gt" , "gt" , c )
488+ AssertMapFieldError (err2 , "Gte" , "gte" , c )
475489
476490 // Assert Struct Field
477491 AssertMapFieldError (err2 , "Sub.Test" , "required" , c )
@@ -491,6 +505,10 @@ func (ms *MySuite) TestStructStringValidation(c *C) {
491505 Min : "min=1" ,
492506 Max : "1234567890" ,
493507 MinMax : "12345" ,
508+ Lt : "012345678" ,
509+ Lte : "0123456789" ,
510+ Gt : "01234567890" ,
511+ Gte : "0123456789" ,
494512 OmitEmpty : "" ,
495513 Sub : & SubTest {
496514 Test : "1" ,
@@ -517,6 +535,10 @@ func (ms *MySuite) TestStructStringValidation(c *C) {
517535 Min : "" ,
518536 Max : "12345678901" ,
519537 MinMax : "" ,
538+ Lt : "0123456789" ,
539+ Lte : "01234567890" ,
540+ Gt : "1" ,
541+ Gte : "1" ,
520542 OmitEmpty : "12345678901" ,
521543 Sub : & SubTest {
522544 Test : "" ,
@@ -536,7 +558,7 @@ func (ms *MySuite) TestStructStringValidation(c *C) {
536558 // Assert Top Level
537559 c .Assert (err , NotNil )
538560 c .Assert (err .Struct , Equals , "TestString" )
539- c .Assert (len (err .Errors ), Equals , 6 )
561+ c .Assert (len (err .Errors ), Equals , 10 )
540562 c .Assert (len (err .StructErrors ), Equals , 3 )
541563
542564 // Assert Fields
@@ -545,6 +567,8 @@ func (ms *MySuite) TestStructStringValidation(c *C) {
545567 AssertFieldError (err , "Min" , "min" , c )
546568 AssertFieldError (err , "Max" , "max" , c )
547569 AssertFieldError (err , "MinMax" , "min" , c )
570+ AssertFieldError (err , "Gt" , "gt" , c )
571+ AssertFieldError (err , "Gte" , "gte" , c )
548572 AssertFieldError (err , "OmitEmpty" , "max" , c )
549573
550574 // Assert Anonymous embedded struct
@@ -566,6 +590,10 @@ func (ms *MySuite) TestStructInt32Validation(c *C) {
566590 Min : 1 ,
567591 Max : 10 ,
568592 MinMax : 5 ,
593+ Lt : 9 ,
594+ Lte : 10 ,
595+ Gt : 11 ,
596+ Gte : 10 ,
569597 OmitEmpty : 0 ,
570598 }
571599
@@ -578,6 +606,10 @@ func (ms *MySuite) TestStructInt32Validation(c *C) {
578606 Min : - 1 ,
579607 Max : 11 ,
580608 MinMax : - 1 ,
609+ Lt : 10 ,
610+ Lte : 11 ,
611+ Gt : 10 ,
612+ Gte : 9 ,
581613 OmitEmpty : 11 ,
582614 }
583615
@@ -586,7 +618,7 @@ func (ms *MySuite) TestStructInt32Validation(c *C) {
586618 // Assert Top Level
587619 c .Assert (err , NotNil )
588620 c .Assert (err .Struct , Equals , "TestInt32" )
589- c .Assert (len (err .Errors ), Equals , 6 )
621+ c .Assert (len (err .Errors ), Equals , 10 )
590622 c .Assert (len (err .StructErrors ), Equals , 0 )
591623
592624 // Assert Fields
@@ -595,6 +627,10 @@ func (ms *MySuite) TestStructInt32Validation(c *C) {
595627 AssertFieldError (err , "Min" , "min" , c )
596628 AssertFieldError (err , "Max" , "max" , c )
597629 AssertFieldError (err , "MinMax" , "min" , c )
630+ AssertFieldError (err , "Lt" , "lt" , c )
631+ AssertFieldError (err , "Lte" , "lte" , c )
632+ AssertFieldError (err , "Gt" , "gt" , c )
633+ AssertFieldError (err , "Gte" , "gte" , c )
598634 AssertFieldError (err , "OmitEmpty" , "max" , c )
599635}
600636
0 commit comments