From 2034d1b10118feb633615ab4cd594a161bea263d Mon Sep 17 00:00:00 2001 From: zhl11b Date: Sat, 29 Dec 2018 17:41:59 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E8=81=94=E9=80=9A171=EF=BC=8C175=20?= =?UTF-8?q?=E7=94=B5=E4=BF=A1173?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- validation/validators.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/validation/validators.go b/validation/validators.go index 4dff9c0b..dc18b11e 100644 --- a/validation/validators.go +++ b/validation/validators.go @@ -632,7 +632,7 @@ func (b Base64) GetLimitValue() interface{} { } // just for chinese mobile phone number -var mobilePattern = regexp.MustCompile(`^((\+86)|(86))?(1(([35][0-9])|[8][0-9]|[7][06789]|[4][579]))\d{8}$`) +var mobilePattern = regexp.MustCompile(`^((\+86)|(86))?(1(([35][0-9])|[8][0-9]|[7][01356789]|[4][579]))\d{8}$`) // Mobile check struct type Mobile struct { From d02699a189c1874442752ada8d3bd232e672063b Mon Sep 17 00:00:00 2001 From: zhl11b Date: Sun, 30 Dec 2018 20:51:21 +0800 Subject: [PATCH 2/2] add new test case for china mobile phone --- validation/validation_test.go | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/validation/validation_test.go b/validation/validation_test.go index f97105fd..3146766b 100644 --- a/validation/validation_test.go +++ b/validation/validation_test.go @@ -268,6 +268,18 @@ func TestMobile(t *testing.T) { if !valid.Mobile("+8614700008888", "mobile").Ok { t.Error("\"+8614700008888\" is a valid mobile phone number should be true") } + if !valid.Mobile("17300008888", "mobile").Ok { + t.Error("\"17300008888\" is a valid mobile phone number should be true") + } + if !valid.Mobile("+8617100008888", "mobile").Ok { + t.Error("\"+8617100008888\" is a valid mobile phone number should be true") + } + if !valid.Mobile("8617500008888", "mobile").Ok { + t.Error("\"8617500008888\" is a valid mobile phone number should be true") + } + if valid.Mobile("8617400008888", "mobile").Ok { + t.Error("\"8617400008888\" is a valid mobile phone number should be false") + } } func TestTel(t *testing.T) { @@ -453,7 +465,7 @@ func TestPointer(t *testing.T) { u := User{ ReqEmail: nil, - Email: nil, + Email: nil, } valid := Validation{} @@ -468,7 +480,7 @@ func TestPointer(t *testing.T) { validEmail := "a@a.com" u = User{ ReqEmail: &validEmail, - Email: nil, + Email: nil, } valid = Validation{RequiredFirst: true} @@ -482,7 +494,7 @@ func TestPointer(t *testing.T) { u = User{ ReqEmail: &validEmail, - Email: nil, + Email: nil, } valid = Validation{} @@ -497,7 +509,7 @@ func TestPointer(t *testing.T) { invalidEmail := "a@a" u = User{ ReqEmail: &validEmail, - Email: &invalidEmail, + Email: &invalidEmail, } valid = Validation{RequiredFirst: true} @@ -511,7 +523,7 @@ func TestPointer(t *testing.T) { u = User{ ReqEmail: &validEmail, - Email: &invalidEmail, + Email: &invalidEmail, } valid = Validation{} @@ -524,19 +536,18 @@ func TestPointer(t *testing.T) { } } - func TestCanSkipAlso(t *testing.T) { type User struct { ID int - Email string `valid:"Email"` - ReqEmail string `valid:"Required;Email"` - MatchRange int `valid:"Range(10, 20)"` + Email string `valid:"Email"` + ReqEmail string `valid:"Required;Email"` + MatchRange int `valid:"Range(10, 20)"` } u := User{ - ReqEmail: "a@a.com", - Email: "", + ReqEmail: "a@a.com", + Email: "", MatchRange: 0, } @@ -560,4 +571,3 @@ func TestCanSkipAlso(t *testing.T) { } } -