// Test for naming errors. // Package foo ... package foo import ( "errors" "fmt" ) var unexp = errors.New("some unexported error") // MATCH /error var.*unexp.*errFoo/ // Exp ... var Exp = errors.New("some exported error") // MATCH /error var.*Exp.*ErrFoo/ var ( e1 = fmt.Errorf("blah %d", 4) // MATCH /error var.*e1.*errFoo/ // E2 ... E2 = fmt.Errorf("blah %d", 5) // MATCH /error var.*E2.*ErrFoo/ ) func f() { var whatever = errors.New("ok") // ok _ = whatever } // Check for the error strings themselves. func g(x int) error { var err error err = fmt.Errorf("This %d is too low", x) // MATCH /error strings.*be capitalized/ err = fmt.Errorf("XML time") // ok err = fmt.Errorf("newlines are fun\n") // MATCH /error strings.*end with punctuation/ err = fmt.Errorf("Newlines are really fun\n") // MATCH /error strings.+not be capitalized/ err = errors.New(`too much stuff.`) // MATCH /error strings.*end with punctuation/ err = errors.New("This %d is too low", x) // MATCH /error strings.*be capitalized/ return err }