123456789101112131415161718192021222324252627 |
- package format // import "gotest.tools/v3/internal/format"
- import "fmt"
- // Message accepts a msgAndArgs varargs and formats it using fmt.Sprintf
- func Message(msgAndArgs ...interface{}) string {
- switch len(msgAndArgs) {
- case 0:
- return ""
- case 1:
- return fmt.Sprintf("%v", msgAndArgs[0])
- default:
- return fmt.Sprintf(msgAndArgs[0].(string), msgAndArgs[1:]...)
- }
- }
- // WithCustomMessage accepts one or two messages and formats them appropriately
- func WithCustomMessage(source string, msgAndArgs ...interface{}) string {
- custom := Message(msgAndArgs...)
- switch {
- case custom == "":
- return source
- case source == "":
- return custom
- }
- return fmt.Sprintf("%s: %s", source, custom)
- }
|