2018-11-15 04:00:04 +03:00
// Copyright 2018 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
2021-01-26 18:36:53 +03:00
package forms
2018-11-15 04:00:04 +03:00
import (
"testing"
"code.gitea.io/gitea/modules/setting"
"github.com/stretchr/testify/assert"
)
2021-02-15 02:31:29 +03:00
func TestRegisterForm_IsDomainAllowed_Empty ( t * testing . T ) {
2018-11-15 04:00:04 +03:00
_ = setting . Service
setting . Service . EmailDomainWhitelist = [ ] string { }
form := RegisterForm { }
2021-02-15 02:31:29 +03:00
assert . True ( t , form . IsEmailDomainAllowed ( ) )
2018-11-15 04:00:04 +03:00
}
2021-02-15 02:31:29 +03:00
func TestRegisterForm_IsDomainAllowed_InvalidEmail ( t * testing . T ) {
2018-11-15 04:00:04 +03:00
_ = setting . Service
setting . Service . EmailDomainWhitelist = [ ] string { "gitea.io" }
tt := [ ] struct {
email string
} {
{ "securitygieqqq" } ,
{ "hdudhdd" } ,
}
for _ , v := range tt {
form := RegisterForm { Email : v . email }
2021-02-15 02:31:29 +03:00
assert . False ( t , form . IsEmailDomainAllowed ( ) )
2018-11-15 04:00:04 +03:00
}
}
2021-02-15 02:31:29 +03:00
func TestRegisterForm_IsDomainAllowed_WhitelistedEmail ( t * testing . T ) {
2018-11-15 04:00:04 +03:00
_ = setting . Service
setting . Service . EmailDomainWhitelist = [ ] string { "gitea.io" }
tt := [ ] struct {
email string
valid bool
} {
{ "security@gitea.io" , true } ,
{ "security@gITea.io" , true } ,
{ "hdudhdd" , false } ,
{ "seee@example.com" , false } ,
}
for _ , v := range tt {
form := RegisterForm { Email : v . email }
2021-02-15 02:31:29 +03:00
assert . Equal ( t , v . valid , form . IsEmailDomainAllowed ( ) )
}
}
func TestRegisterForm_IsDomainAllowed_BlocklistedEmail ( t * testing . T ) {
_ = setting . Service
setting . Service . EmailDomainWhitelist = [ ] string { }
setting . Service . EmailDomainBlocklist = [ ] string { "gitea.io" }
tt := [ ] struct {
email string
valid bool
} {
{ "security@gitea.io" , false } ,
{ "security@gitea.example" , true } ,
{ "hdudhdd" , true } ,
}
for _ , v := range tt {
form := RegisterForm { Email : v . email }
assert . Equal ( t , v . valid , form . IsEmailDomainAllowed ( ) )
2018-11-15 04:00:04 +03:00
}
}