1package address_test23import (4 "strings"5 "testing"67 "github.com/foxcpp/maddy/framework/address"8)910func TestValidMailboxName(t *testing.T) {11 if !address.ValidMailboxName("caddy.bug") {12 t.Error("caddy.bug should be valid mailbox name")13 }14}1516func TestValidDomain(t *testing.T) {17 for _, c := range []struct {18 Domain string19 Valid bool20 }{21 {Domain: "maddy.email", Valid: true},22 {Domain: "", Valid: false},23 {Domain: "maddy.email.", Valid: true},24 {Domain: "..", Valid: false},25 {Domain: strings.Repeat("a", 256), Valid: false},26 {Domain: "äõäoaõoäaõaäõaoäaoaäõoaäooaoaoiuaiauäõiuüõaõäiauõaaa.tld", Valid: true}, // https://github.com/foxcpp/maddy/issues/55427 {Domain: "xn--oaoaaaoaoaoaooaoaoiuaiauiuaiauaaa-f1cadccdcmd01eddchqcbe07a.tld", Valid: true}, // https://github.com/foxcpp/maddy/issues/55428 } {29 if actual := address.ValidDomain(c.Domain); actual != c.Valid {30 t.Errorf("expected domain %v to be valid=%v, but got %v", c.Domain, c.Valid, actual)31 }32 }33}