Checking in vendor folder for ease of using go get.
This commit is contained in:
parent
7a1251853b
commit
cdb4b5a1d0
3554 changed files with 1270116 additions and 0 deletions
162
vendor/github.com/spf13/pflag/string_to_string_test.go
generated
vendored
Normal file
162
vendor/github.com/spf13/pflag/string_to_string_test.go
generated
vendored
Normal file
|
@ -0,0 +1,162 @@
|
|||
// Copyright 2009 The Go Authors. All rights reserved.
|
||||
// Use of ths2s source code s2s governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package pflag
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"encoding/csv"
|
||||
"fmt"
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func setUpS2SFlagSet(s2sp *map[string]string) *FlagSet {
|
||||
f := NewFlagSet("test", ContinueOnError)
|
||||
f.StringToStringVar(s2sp, "s2s", map[string]string{}, "Command separated ls2st!")
|
||||
return f
|
||||
}
|
||||
|
||||
func setUpS2SFlagSetWithDefault(s2sp *map[string]string) *FlagSet {
|
||||
f := NewFlagSet("test", ContinueOnError)
|
||||
f.StringToStringVar(s2sp, "s2s", map[string]string{"da": "1", "db": "2", "de": "5,6"}, "Command separated ls2st!")
|
||||
return f
|
||||
}
|
||||
|
||||
func createS2SFlag(vals map[string]string) string {
|
||||
records := make([]string, 0, len(vals)>>1)
|
||||
for k, v := range vals {
|
||||
records = append(records, k+"="+v)
|
||||
}
|
||||
|
||||
var buf bytes.Buffer
|
||||
w := csv.NewWriter(&buf)
|
||||
if err := w.Write(records); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
w.Flush()
|
||||
return strings.TrimSpace(buf.String())
|
||||
}
|
||||
|
||||
func TestEmptyS2S(t *testing.T) {
|
||||
var s2s map[string]string
|
||||
f := setUpS2SFlagSet(&s2s)
|
||||
err := f.Parse([]string{})
|
||||
if err != nil {
|
||||
t.Fatal("expected no error; got", err)
|
||||
}
|
||||
|
||||
getS2S, err := f.GetStringToString("s2s")
|
||||
if err != nil {
|
||||
t.Fatal("got an error from GetStringToString():", err)
|
||||
}
|
||||
if len(getS2S) != 0 {
|
||||
t.Fatalf("got s2s %v with len=%d but expected length=0", getS2S, len(getS2S))
|
||||
}
|
||||
}
|
||||
|
||||
func TestS2S(t *testing.T) {
|
||||
var s2s map[string]string
|
||||
f := setUpS2SFlagSet(&s2s)
|
||||
|
||||
vals := map[string]string{"a": "1", "b": "2", "d": "4", "c": "3", "e": "5,6"}
|
||||
arg := fmt.Sprintf("--s2s=%s", createS2SFlag(vals))
|
||||
err := f.Parse([]string{arg})
|
||||
if err != nil {
|
||||
t.Fatal("expected no error; got", err)
|
||||
}
|
||||
for k, v := range s2s {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s but got: %s", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
getS2S, err := f.GetStringToString("s2s")
|
||||
if err != nil {
|
||||
t.Fatalf("got error: %v", err)
|
||||
}
|
||||
for k, v := range getS2S {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s but got: %s from GetStringToString", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestS2SDefault(t *testing.T) {
|
||||
var s2s map[string]string
|
||||
f := setUpS2SFlagSetWithDefault(&s2s)
|
||||
|
||||
vals := map[string]string{"da": "1", "db": "2", "de": "5,6"}
|
||||
|
||||
err := f.Parse([]string{})
|
||||
if err != nil {
|
||||
t.Fatal("expected no error; got", err)
|
||||
}
|
||||
for k, v := range s2s {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s but got: %s", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
|
||||
getS2S, err := f.GetStringToString("s2s")
|
||||
if err != nil {
|
||||
t.Fatal("got an error from GetStringToString():", err)
|
||||
}
|
||||
for k, v := range getS2S {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s from GetStringToString but got: %s", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestS2SWithDefault(t *testing.T) {
|
||||
var s2s map[string]string
|
||||
f := setUpS2SFlagSetWithDefault(&s2s)
|
||||
|
||||
vals := map[string]string{"a": "1", "b": "2", "e": "5,6"}
|
||||
arg := fmt.Sprintf("--s2s=%s", createS2SFlag(vals))
|
||||
err := f.Parse([]string{arg})
|
||||
if err != nil {
|
||||
t.Fatal("expected no error; got", err)
|
||||
}
|
||||
for k, v := range s2s {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s but got: %s", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
|
||||
getS2S, err := f.GetStringToString("s2s")
|
||||
if err != nil {
|
||||
t.Fatal("got an error from GetStringToString():", err)
|
||||
}
|
||||
for k, v := range getS2S {
|
||||
if vals[k] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s from GetStringToString but got: %s", k, vals[k], v)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestS2SCalledTwice(t *testing.T) {
|
||||
var s2s map[string]string
|
||||
f := setUpS2SFlagSet(&s2s)
|
||||
|
||||
in := []string{"a=1,b=2", "b=3", `"e=5,6"`, `f=7,8`}
|
||||
expected := map[string]string{"a": "1", "b": "3", "e": "5,6", "f": "7,8"}
|
||||
argfmt := "--s2s=%s"
|
||||
arg0 := fmt.Sprintf(argfmt, in[0])
|
||||
arg1 := fmt.Sprintf(argfmt, in[1])
|
||||
arg2 := fmt.Sprintf(argfmt, in[2])
|
||||
arg3 := fmt.Sprintf(argfmt, in[3])
|
||||
err := f.Parse([]string{arg0, arg1, arg2, arg3})
|
||||
if err != nil {
|
||||
t.Fatal("expected no error; got", err)
|
||||
}
|
||||
if len(s2s) != len(expected) {
|
||||
t.Fatalf("expected %d flags; got %d flags", len(expected), len(s2s))
|
||||
}
|
||||
for i, v := range s2s {
|
||||
if expected[i] != v {
|
||||
t.Fatalf("expected s2s[%s] to be %s but got: %s", i, expected[i], v)
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue