Merge pull request #3912 from michelleN/process-null

fix(pkg/strvals): evaluate "null" values
pull/3913/head
Michelle Noorali 7 years ago committed by GitHub
commit e269b89438
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -82,6 +82,10 @@ func ParseIntoString(s string, dest map[string]interface{}) error {
// parser is a simple parser that takes a strvals line and parses it into a
// map representation.
//
// where sc is the source of the original data being parsed
// where data is the final parsed data from the parses with correct types
// where st is a boolean to figure out if we're forcing it to parse values as string
type parser struct {
sc *bytes.Buffer
data map[string]interface{}
@ -329,6 +333,10 @@ func typedVal(v []rune, st bool) interface{} {
return false
}
if strings.EqualFold(val, "null") {
return nil
}
// If this value does not start with zero, and not returnString, try parsing it to an int
if !st && len(val) != 0 && val[0] != '0' {
if iv, err := strconv.ParseInt(val, 10, 64); err == nil {

@ -81,6 +81,11 @@ func TestParseSet(t *testing.T) {
expect map[string]interface{}
err bool
}{
{
"name1=null,f=false,t=true",
map[string]interface{}{"name1": nil, "f": false, "t": true},
false,
},
{
"name1=value1",
map[string]interface{}{"name1": "value1"},

Loading…
Cancel
Save