github.com/go-email-validator/go-email-validator@v0.0.0-20230409163946-b8b9e6a0552e/pkg/presentation/converter/email.go (about) 1 package converter 2 3 import ( 4 "github.com/go-email-validator/go-email-validator/pkg/ev/evmail" 5 "strings" 6 ) 7 8 // EmailsForTests returns emails for tests 9 func EmailsForTests() []string { 10 return []string{ 11 "", 12 "asdas.da2da", 13 "asdas.dada", 14 "asd@asd@asd", 15 "zxczxczxc@joycasinoru", 16 "sewag33689@gmail.com", 17 "user99.doesnot.exist@gmail.com", 18 "amazedfuckporno@gmail.com", 19 "sewag33689@itymail.com", 20 "derduzikne@nedoz.com", 21 "tvzamhkdc@emlhub.com", 22 "theofanis.giot2is@12pm.gr", 23 "theofanisgiotis@12pm.gr", 24 "asdasd@tradepro.net", 25 "credit@mail.ru", 26 "salestrade86@hotmail.com", 27 "some.user.99@gmail.com", 28 "monicaramirezrestrepo@hotmail.com", 29 "admin@gmail.com", 30 "name@yandex.ru", 31 "admin@huntgear.ru", 32 "go.email.validator@gmail.com", 33 "radmal1982@yandex-team.ru", 34 "pr@yandex-team.ru", 35 "y-numata@senko.ed.jp", 36 "alexey@life-in-travels.ru", 37 } 38 } 39 40 // NewEmailAddress is a evmail.Address constructor 41 func NewEmailAddress(username, domain string, at *string) evmail.Address { 42 return emailAddress{ 43 username: strings.ToLower(username), 44 at: at, 45 domain: strings.ToLower(domain), 46 } 47 } 48 49 type emailAddress struct { 50 username string 51 at *string 52 domain string 53 } 54 55 func (e emailAddress) Username() string { 56 return e.username 57 } 58 59 func (e emailAddress) Domain() string { 60 return e.domain 61 } 62 63 func (e emailAddress) String() string { 64 if e.at == nil { 65 return e.Username() + evmail.AT + e.Domain() 66 } 67 68 return e.Username() + *e.at + e.Domain() 69 }