github.com/TIBCOSoftware/flogo-lib@v0.5.9/util/utils_test.go (about) 1 package util 2 3 import ( 4 "github.com/stretchr/testify/assert" 5 "testing" 6 ) 7 8 func TestParseKeyValuePairs(t *testing.T) { 9 10 //value with quotes and , 11 m := ParseKeyValuePairs(`name="select id, name , ssss",val=ddd`) 12 assert.Equal(t, "select id, name , ssss", m["name"]) 13 assert.Equal(t, "ddd", m["val"]) 14 15 //value with = 16 m = ParseKeyValuePairs(`name="dddd",val="ddd"`) 17 assert.Equal(t, "dddd", m["name"]) 18 assert.Equal(t, "ddd", m["val"]) 19 20 m = ParseKeyValuePairs(`name="name=v",val="select=v"`) 21 22 assert.Equal(t, "name=v", m["name"]) 23 assert.Equal(t, "select=v", m["val"]) 24 25 m = ParseKeyValuePairs(`name=select name=name,val=select`) 26 27 assert.Equal(t, "select name=name", m["name"]) 28 assert.Equal(t, "select", m["val"]) 29 30 m = ParseKeyValuePairs(`name=select name,name,val=select=n`) 31 32 assert.NotEqual(t, "select name=name", m["name"]) 33 assert.NotEqual(t, "select=n", m["val"]) 34 35 //Space 36 m = ParseKeyValuePairs(`na me = select name=name,va l = select`) 37 38 assert.Equal(t, "select name=name", m["na me"]) 39 assert.Equal(t, "select", m["va l"]) 40 41 //Empty value 42 m = ParseKeyValuePairs(`MyPassword=SECRET:sjsjsjsjsjsarebbxmooensgajkakap/hsjsjsjks==,MyVal=test`) 43 44 assert.Equal(t, "SECRET:sjsjsjsjsjsarebbxmooensgajkakap/hsjsjsjks==", m["MyPassword"]) 45 assert.Equal(t, "test", m["MyVal"]) 46 47 }