Compare commits
No commits in common. "feec6e96d00ba2ebda5b55735f9a2e7fc01faf9c" and "4b89ed6421eaecdd65544913f7adc172b80a9216" have entirely different histories.
feec6e96d0
...
4b89ed6421
|
@ -79,7 +79,7 @@ func parseParameter(data interface{}) (interface{}, error) {
|
||||||
|
|
||||||
// ignore non-string
|
// ignore non-string
|
||||||
if element.Kind() != reflect.String {
|
if element.Kind() != reflect.String {
|
||||||
result[i] = element.Interface()
|
result[i] = nil
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,52 +32,8 @@ func TestSimpleString(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestJsonStringSlice(t *testing.T) {
|
|
||||||
p := Parameter{Parsed: false, File: false, Value: `["str1", "str2"]`}
|
|
||||||
|
|
||||||
err := p.Parse()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
t.Errorf("unexpected error: <%s>", err)
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if !p.Parsed {
|
|
||||||
t.Errorf("expected parameter to be parsed")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
slice, canCast := p.Value.([]interface{})
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter to be a []interface{}")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(slice) != 2 {
|
|
||||||
t.Errorf("expected 2 values, got %d", len(slice))
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
results := []string{"str1", "str2"}
|
|
||||||
|
|
||||||
for i, res := range results {
|
|
||||||
|
|
||||||
cast, canCast := slice[i].(string)
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter %d to be a []string", i)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if cast != res {
|
|
||||||
t.Errorf("expected first value to be '%s', got '%s'", res, cast)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestStringSlice(t *testing.T) {
|
func TestStringSlice(t *testing.T) {
|
||||||
p := Parameter{Parsed: false, File: false, Value: []string{"str1", "str2"}}
|
p := Parameter{Parsed: false, File: false, Value: `["str1", "str2"]`}
|
||||||
|
|
||||||
err := p.Parse()
|
err := p.Parse()
|
||||||
|
|
||||||
|
@ -206,91 +162,3 @@ func TestJsonPrimitiveFloat(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestJsonBoolSlice(t *testing.T) {
|
|
||||||
p := Parameter{Parsed: false, File: false, Value: []string{"true", "false"}}
|
|
||||||
|
|
||||||
err := p.Parse()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
t.Errorf("unexpected error: <%s>", err)
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if !p.Parsed {
|
|
||||||
t.Errorf("expected parameter to be parsed")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
slice, canCast := p.Value.([]interface{})
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter to be a []interface{}")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(slice) != 2 {
|
|
||||||
t.Errorf("expected 2 values, got %d", len(slice))
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
results := []bool{true, false}
|
|
||||||
|
|
||||||
for i, res := range results {
|
|
||||||
|
|
||||||
cast, canCast := slice[i].(bool)
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter %d to be a []bool", i)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if cast != res {
|
|
||||||
t.Errorf("expected first value to be '%t', got '%t'", res, cast)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestBoolSlice(t *testing.T) {
|
|
||||||
p := Parameter{Parsed: false, File: false, Value: []bool{true, false}}
|
|
||||||
|
|
||||||
err := p.Parse()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
t.Errorf("unexpected error: <%s>", err)
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if !p.Parsed {
|
|
||||||
t.Errorf("expected parameter to be parsed")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
slice, canCast := p.Value.([]interface{})
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter to be a []interface{}")
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(slice) != 2 {
|
|
||||||
t.Errorf("expected 2 values, got %d", len(slice))
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
|
|
||||||
results := []bool{true, false}
|
|
||||||
|
|
||||||
for i, res := range results {
|
|
||||||
|
|
||||||
cast, canCast := slice[i].(bool)
|
|
||||||
if !canCast {
|
|
||||||
t.Errorf("expected parameter %d to be a bool, got %v", i, slice[i])
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if cast != res {
|
|
||||||
t.Errorf("expected first value to be '%t', got '%t'", res, cast)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue