diff options
Diffstat (limited to 'vendor/gotest.tools/internal/format/format.go')
-rw-r--r-- | vendor/gotest.tools/internal/format/format.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/vendor/gotest.tools/internal/format/format.go b/vendor/gotest.tools/internal/format/format.go new file mode 100644 index 00000000..8f6494f9 --- /dev/null +++ b/vendor/gotest.tools/internal/format/format.go @@ -0,0 +1,27 @@ +package format // import "gotest.tools/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) +} |