9 func TestParse(t *testing.T) {
11 valid := map[string]string{
12 "foo: bar@example.com": "parse valid line",
13 "# some comment": "parse valid commented line",
14 " ": "parse empty line",
16 for line, msg := range valid {
17 r = strings.NewReader(line)
20 t.Errorf("%s %q: %v", msg, line, err)
24 invalid := map[string]string{
25 "oops:": "missing destination",
26 " : asdfhjkl": "missing recipient",
27 ":": "missing recipient and destination",
28 "::: alex@example.com": "too many colons",
29 "1 2 3 4 5": "too many fields",
31 for line, problem := range invalid {
32 r = strings.NewReader(line)
35 t.Errorf("no error parsing %q (%s)", line, problem)