mirror of https://github.com/docker/cli.git
29 lines
830 B
Go
29 lines
830 B
Go
|
package formatter
|
||
|
|
||
|
import (
|
||
|
"reflect"
|
||
|
"strings"
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func compareMultipleValues(t *testing.T, value, expected string) {
|
||
|
// comma-separated values means probably a map input, which won't
|
||
|
// be guaranteed to have the same order as our expected value
|
||
|
// We'll create maps and use reflect.DeepEquals to check instead:
|
||
|
entriesMap := make(map[string]string)
|
||
|
expMap := make(map[string]string)
|
||
|
entries := strings.Split(value, ",")
|
||
|
expectedEntries := strings.Split(expected, ",")
|
||
|
for _, entry := range entries {
|
||
|
keyval := strings.Split(entry, "=")
|
||
|
entriesMap[keyval[0]] = keyval[1]
|
||
|
}
|
||
|
for _, expected := range expectedEntries {
|
||
|
keyval := strings.Split(expected, "=")
|
||
|
expMap[keyval[0]] = keyval[1]
|
||
|
}
|
||
|
if !reflect.DeepEqual(expMap, entriesMap) {
|
||
|
t.Fatalf("Expected entries: %v, got: %v", expected, value)
|
||
|
}
|
||
|
}
|