@@ -260,16 +260,26 @@ func TestHandlerMailfromMailfromEmail(t *testing.T) {
260260 assert .Equal (t , emptyString , handler .mailfromEmail ("MAIL FROM: " + invalidEmail ))
261261 })
262262
263- t .Run ("when request includes invalid email starting with dot" , func (t * testing.T ) {
264- invalidEmail := "[email protected] " 263+ t .Run ("when request includes email with plus sign" , func (t * testing.T ) {
264+ 265+ assert .Equal (t , email , handler .mailfromEmail ("MAIL FROM: " + email ))
266+ })
265267
266- assert .Equal (t , emptyString , handler .mailfromEmail ("MAIL FROM: " + invalidEmail ))
268+ t .Run ("when request includes email with multiple special characters" , func (t * testing.T ) {
269+ email := "user.name+tag!#$%@example.com"
270+ assert .Equal (t , email , handler .mailfromEmail ("MAIL FROM: " + email ))
267271 })
268272
269- t .Run ("when request includes invalid email ending with dot before @" , func (t * testing.T ) {
270- invalidEmail := "[email protected] " 273+ t .Run ("when request includes email with special characters and angle brackets" , func (t * testing.T ) {
274+ 275+ request := "MAIL FROM: <" + rawEmail + ">"
276+ assert .Equal (t , rawEmail , handler .mailfromEmail (request ))
277+ })
271278
272- assert .Equal (t , emptyString , handler .mailfromEmail ("MAIL FROM: " + invalidEmail ))
279+ t .Run ("when request includes email with special characters and display name" , func (t * testing.T ) {
280+ 281+ request := "MAIL FROM: Support Team <" + rawEmail + ">"
282+ assert .Equal (t , rawEmail , handler .mailfromEmail (request ))
273283 })
274284}
275285
0 commit comments